[x264-devel] making a demo/tutorial movie

Maarten de Boer mdeboer at iua.upf.edu
Mon May 22 17:12:37 CEST 2006


Hello,

I am making a demo video of an application I am writing. I post
my experiences since they might be handy for someone else, but
also to ask for some advice on the encoding settings.

The application I am making the demo video of has a rather standard
GUI: sliders, buttons, text. The demo shows how to use this application,
accompanied with spoken text. I write 10 screenshots/second to disk
(including mouse cursor). This was very easy with the GUI library I
use, fltk, which has a function to read the pixels of the current window
into a buffer, which then can be written to disk, but it could also be
done with xvidcap.

Finally, I convert these images to a movie, with the following steps
(all under Linux):

I use a fifo to avoid the need of a large intermediate yuv file.

$ mkfifo /tmp/foo.y4m
$ png2yuv -j video_%04d.png -f 10 -I p -S 420mpeg2 > /tmp/foo.y4m

In another shell, read from the fifo, and write the to h264:

$ x264 --fps 10 -B 500 -o "foo.264" /tmp/foo.y4m

Would it be possible to do the above in a single step? x264 does not
seem to be able to read from the stdin, but ideally, I'd rather pipe
png2yuv output to x264.

Next, I have some audio (spoken while using the application) which I
convert to aac:

$ faac -b 128 --mpeg-vers 4 foo.wav

Finally, I join audio and video in an mp4 file:

$ MP4Box -fps 10 -new -add foo.264 -add foo.aac foo.mp4 -hint

The resulting video looks ok, and plays fine under quicktime, but I am
sure that I could use some x264 settings more suitable for this kind of
material (screenshots). I was hoping that someone has some experience
with this, and could share it. Would it be advisable to do multipass
encoding?

Kind regards, and thanks for a great tool.

Maarten

-- 
This is the x264-devel mailing-list
To unsubscribe, go to: http://developers.videolan.org/lists.html



More information about the x264-devel mailing list