bond
14th April 2004, 08:42
thanks to spyder482, who pointed me to it :) , another tool can be added to the list of tools able to create MP4 files: ffmpeg (http://ffmpeg.sourceforge.net/)
a compile of the latest ffmpeg can be found here (http://forum.doom9.org/showthread.php?s=&threadid=73629)
to mux a video stream from AVI to MP4 use the following commandline:
ffmpeg -i input.avi -vcodec copy output.mp4note that ffmpeg seems to only place mpeg-4 streams correctly in MP4 when the files use a 4cc, which ffmpeg knows to be MPEG-4
therefore if you want to mux 3ivx, ffvfw or NeroDigital streams you will have to change their 4ccs to DIVX or XVID first!
also important to note is that ffmpeg isnt able to remove AVI hacks! as i am sure most already know AVI needs some hackery to be able to handle mpeg-4 (b-frames), the most important one is packed bitstream, a private workaround introduced in divx5 and now also used in xvid.
of course noone can expect mp4 muxer developers to know private, not standardised hacks, to make old containers work, and therefore ffmpeg, like many other muxers (mp4ui, mp4creator) doesnt remove these hacks
to make it short: dont mux avi files with packed bitstream b-frames (used by default in divx5 and xvid) with ffmpeg, the produced mp4 files will not be spec compliant! use 3ivx instead to mux such files!
a compile of the latest ffmpeg can be found here (http://forum.doom9.org/showthread.php?s=&threadid=73629)
to mux a video stream from AVI to MP4 use the following commandline:
ffmpeg -i input.avi -vcodec copy output.mp4note that ffmpeg seems to only place mpeg-4 streams correctly in MP4 when the files use a 4cc, which ffmpeg knows to be MPEG-4
therefore if you want to mux 3ivx, ffvfw or NeroDigital streams you will have to change their 4ccs to DIVX or XVID first!
also important to note is that ffmpeg isnt able to remove AVI hacks! as i am sure most already know AVI needs some hackery to be able to handle mpeg-4 (b-frames), the most important one is packed bitstream, a private workaround introduced in divx5 and now also used in xvid.
of course noone can expect mp4 muxer developers to know private, not standardised hacks, to make old containers work, and therefore ffmpeg, like many other muxers (mp4ui, mp4creator) doesnt remove these hacks
to make it short: dont mux avi files with packed bitstream b-frames (used by default in divx5 and xvid) with ffmpeg, the produced mp4 files will not be spec compliant! use 3ivx instead to mux such files!