|
|
Creating compatible Mpeg-4 audio/video files with DivX 5, Virtualdub, Apple QuickTime6 and Mpeg4IP:
It is possible to create Mpeg-4 compliant audio/video files using
DivX 5 and other useful tools, following these steps:
- Create the audio/video file using the current version 5.02 of
DivX.
Two versions are available for Windows users: DivX basic, which
is available for free and DivXPro, which offers more options, but
it comes with advertisement software enclosed in the same
package or if you don't want ads, you have to pay 30 Us Dollars.
The DivXPro version has three more Mpeg-4 Tools, compared to the simple DivX
codec.
In addition to that, the pro version is able to write .mp4 files directly, but
this feature is not very useful if you want to get fully mpeg-4 compliant
files.
DivX created mpeg-4 files cannot be played by Apple QuickTime6 or the Envivio
plugin. Only Dicas Mpegable player and Mp4Player seem to be able to play them.
In addition, Divx does not create audio in the AAC format. The only audio
format
permitted is MP3.
It is recommended not to use the extra Mpeg-4 tools of the Pro version
of DivX (leaving the three corresponding boxes unchecked) to
keep the maximum compatibility of the video files with Mp4player,
QuickTime6 and Envivio plugin. These options causes colored shades to
appear in the picture whenever files are played by a non-Divx player.
Thus, the DivX basic version performs well enough for our purpose.
- Once you have an avi DivX file we can use Virtualdub (I use
the current version 4.10), a powerful video editor and video
capture program to edit an avi or mpeg-1 video file without the
need of recompression, so that you avoid signal impairment
during the editing process. Virtualdub is also capable of saving
avi video and wav audio separately. To do that, load the
video/audio file from open video file in the file menu. In order to
save video, in the audio menu, select no audio, while in the
video menu, select direct stream copy. Finally in the File menu,
select save as avi typing the new video-only file name.
For extracting audio, just load the original file again and
choose save Wav from the file menu. You must choose a name
for the wav file.
- The next step now, is the creation of a mp4 file from the
wav audio. If you have the Pro version of QuickTime6Pro, you
can open the wav audio file that you have previously extracted
from file\open movie, Inside the dialog box displayed, select
audio file for file of type and choosing Export in the file menu again,
select options to adjust bitrate mono/stereo and other settings of the mp4
aac
audio file, finally press save and you should get an audio only
mp4 file.
If you don't have the Pro version of QuickTime6 which costs
29.99 Us Dollars unlike the free QuickTime6 player, you can use
Faac encoder, which is available for free, to convert
uncompressed pcm wav files to .aac audio.
Another option is to use the avi2raw to extract the raw audio data,
use a tool to translate the mp3 to raw PCM, then feed that raw PCM
to faac.
It has been discovered that files created with QuickTime6Pro, are not played
correctly by Dicas Mpegable Player, which fails to play audio.
If the second procedure described below is adopted, mp4 files are played
smoothly by almost any of the Mpeg-4 players considered in my trial, except
Philips
CinePlayer.
While converting wav to aac, make sure that Faac is set to low
complexity profile and Mpeg-4 file version (not Mpeg-2) is
selected. This eliminates some incompatibility problems with
Quicktime6 and Envivio players.
This is an example of Faac command-line usage:
faac -m 4 -o lc -c 18000 -b 64 original.wav output.aac
In the example above Faac encoder is set to create an Mpeg-4
type file header, low complexity profile, a cutoff frequency of
18000 Hz and a bitrate of 64 Kbit/s per channel aac audio file
from the original wav file.
A GUI interface to the faac encoder package is also available (this
interface is not included with mpeg4ip)
Once an .aac file is created, you can use mp4creator to insert the
audio into an mp4 file. The following command line is used:
mp4creator -create
Using the Mp4UI Windows user interface for Mp4Creator is also possible.
- Once you have an audio mp4 file you need to add the video. Just
use Mp4creator to add the avi video-only Divx video track. It is
very easy to use the Mp4UI Windows user interface for
Mp4Creator to open the mp4 file, add the video track and
optimize it, without the need of typing in the command-line
commands like this:
<mp4creator60 video.avi audio.mp4 optimize>
The mp4 A/V file should now be playable by QuickTime6, Envivio
pluin for Windows Media Player and RealOne, Dicas Mpegable
player and by Mp4Player of course.
You can use XviD encoder instead of DivX with the same result,
but only versions released on September 19, 2002 or later works
properly.
- Hinting.
To stream a file that has audio and video using a streaming
server like the Darwin streaming server, you will need to hint the file.
You can use the mp4creator's hint option. With this option, you need to
specify a track number. Use the mp4info utility to get this information.
| Track | Type | Info |
| 1 | od | Object Descriptors |
| 2 | scene | BIFS |
| 201 | video | MPEG-4, 166.633 secs, 262 kbps, 320x240 @ 14.16 fps |
| 101 | audio | MPEG-4, 166.528 secs, 49 kbps, 32000 Hz |
Then use the mp4creator command line options to add the hint tracks:
mp4creator -hint=201 file.mp4
mp4creator -hint=101 file.mp4
Software Websites:
DivX video codec: www.divx.com
Virtualdub: www.virtualdub.org
QuickTime6 www.apple.com/quicktime
Mp4Creator www.mpeg4ip.net
Faac aac audio encoder www.audiocoding.com
Mp4 User Interface www.mediacruiser.de/mp4UI
Authors:
| Enrico Palmeri | October 6, 2002 |
| | revised October 7, 2002 |
| | October 9, 2002 |
| Bill May | edited November 18, 2002 |
|