I’ve been busy getting a commercial presentation ready, and I’ve learned a few things that might make a lot of folks happy. So here goes:
(1) MakeHuman 0.9 for Windows runs straight out-of-the box through the Kubuntu 6.10 implementation of Wine. The only gotcha is that wine needs to create a tmp file. To make it work every time, install Midnight Commander and run through console. Like this:
function key F2
that’s it. Check your hidden directories in your home folder for where wine installs MakeHuman. Note that your settings and object files are stored in a subdirectory called /makehuman in your home folder.
What a prize! Compare it even to Poser, and prepare to be amazed.
(2) mjpegtools and Blender.
Again, mjpegtools is a simple apt-get, but! there’s two serious gotchas in store.
First: Blender initializes its first rendered jpeg as 0001.jpg, and the jpeg2yuv binary needs it to be 0000.jpg. I just copied the first image through GIMP and renamed it.
Second–and this one’s a killer!–the height of your image must be a multiple of 16. But, this is pretty amazing, because I was able to get Windows Media Player to play the mpg at 800x608 resolution, which is very clear and large.
Next isn’t really a gotcha, it’s probably just the limits of my understanding of piping syntax in a Linux box:
You can use jpeg2yuv to create a yuv stream from separate JPEG images.
> jpeg2yuv -f 25 -I p -j image%05d.jpg > result.yuv
Creates the file result.yuv containing the yuv video data with 25 FPS. The -f option is used to set the frame rate. Note that image%05d.jpg means that the jpeg files are named image00000.jpg, image00001.jpg and so on. (05 means five digits, 04 means four digits, etc.) The -I p ( p for progressive). Note: Since Blender numbers its frames starting at 0001.jpg, open the first rendered frame in Gimp and save a copy as 0000.jpg. There are more formal ways to solve this problem, but a single frame at this speed is nearly unnoticeable.
We want to encode a mpeg video directly from jpeg images without saving a separate video file type:
> jpeg2yuv -f 25 -I p -j image%05d.jpg | mpeg2enc -o result.m1v
And then, we want an MPEG-2 format for Windows:
> mplex -f 3 -o result.mpg result.mlv