mp4creator(1)

NAME

mp4creator - creates and modifies mp4 files

SYNTAX

mp4creator [options] <filename.mp4>

DESCRIPTION

This program creates or modifies mp4 files. Supported operations are to add media tracks, add hint tracks, delete a track, and optimize the layout of the mp4 file. Currently the program understands MP3, AAC (ADTS), and MPEG-4 video (Divx) files. These are known as elementary stream (ES) files.

Note MP3 files frequently have embedded tags that list information such as title and artist. These tags are not carried forward into the mp4 file.

To add a media track to an mp4 file, use the "-create=<file>" option to specify the ES file. Note if two files names are given on the command line

To add a hint track to an mp4 file you need to know the track id of the media track you want to hint. This can be determined by invoking mp4creator with the "-list" option to obtain a list of existing tracks and their type. Once you've determined the track id, use the "-hint=<track-id>" option to create the hint track. Currently the program understands how to create hint tracks for MPEG audio, and MPEG-4 video.

When adding tracks, mp4creator does not attempt to optimize the file layout for streaming and playback. This can be done once all the desired tracks have been added with the "-optimize" option.

To delete an undesired track from an existing mp4 file, use the "-delete=<track-id>" option.

Detailed diagnostics are available via the "-verbosity=<level>" option. Levels 1-5 are available.

OPTIONS

-c, -create=<file>
    Create a media track using <file>. File must have either .mp3 .aac .divx or .mp4v extension.

-d, -delete=<track-id>
    Delete the specified track and all it's associated data.

-H, -hint=<track-id>
    Create a hint track for the specified media track. Note this option can be used when creating the media track in which case no track id is necessary. The appropriate RTP payload format is chosen based on the media track content.

-I, -interleave
    Use an interleaved RTP payload format for an audio hint track. Currently this is only valid for AAC audio hint tracks.

-l, -list
    Print a list of tracks in the specified mp4 file and exit.

-m, -mtu=<size>
    Specifies the network maximum transmission unit (MTU) to use when creating hint tracks. The default value is 1500.

-O, -optimize
    Optimize the layout of the mp4 file to interleave the data in time, hence reducing disk seeks during streaming or playback. This also arranges the mp4 file so that the media control information is at the beginning of the file. This allows HTTP streaming of the mp4 file.

-r, -rate=<fps>
    Specifies video frame rate (frames per second) when creating a video media track. The value can be either an integer or floating point number. It may be necessary to specify this parameter for some MPEG-4 video streams due to encoding bugs.

-v, -verbosity=<level>
    Causes increasing levels of diagnostics to be printed. A level includes details of all lower levels. Levels are:
        1    Details concerning reading and writing
        2    Details about control tables
        3    Details about media samples
        4    Details about media hints
        5    Details about everything

-help
    Prints help information.

EXAMPLES

To create an audio only mp4 file:
    mp4creator foo.mp3 foo.mp4

To create a video only mp4 file:
    mp4creator foo.divx foo.mp4

To create an audio and video file:
    mp4creator foo.mp3 foo.mp4
    mp4creator foo.divx foo.mp4

To create an audio and video file, hinted, and optimized for streaming:
    mp4creator foo.mp3 -H foo.mp4
    mp4creator foo.divx -H -O foo.mp4

AUTHORS

David Mackie <dmackie@cisco.com>
Bill May <wmay@cisco.com>

SEE ALSO

mp4encode(1) gmp4player(1)