MPEG-4
MPEG-4 is a form of MPEG encoding. It is a flexible audio and video compression format. The format describes audio and video compression, with a container format for streaming across networks and saving to disk. It also contains optional extra features, including DRM and subtitles. These extra features are only included in software if needed. MPEG-4 can provide better quality than MPEG-2 at low bitrates.
Here is an example of how to transcode an AVI into an MPEG-4 video from the command prompt
% vlc file.avi --sout='#transcode{vcodec=mp4v,acodec=mpga}:std{access=file,mux=mp4,dst=file.m4v}'
Contents
Codecs
mp4a
|
This is an audio codec. The name to use at the command line is mp4a, but you can also use m4a. This codec is from the ffmpeg module. |
mp4v
|
This is a video codec. The name to use at the command line is mp4v, but you can also use m4v. This codec is from the ffmpeg module. |
MPEG-4 specifies a range of codecs
The fourccs of MPEG-4 codecs are:
- 3IV2, 3iv2
- BLZ0
- DIV1, div1, DIVX, divx, DX50, dx50
- DXGM
- FMP4, fmp4
- HDX4, hdx4
- M4S2, m4s2
- MP4S, mp4s
- MP4V, mp4v
- RMP4
- SEDG
- SMP4
- UMP4
- WV1F
- XVID
- XviD, xvid
- XVIX
File extension
MP4 (.mp4) is the global file extension for the official container format defined in the MPEG-4 standard (ISO 14496-14).
- .mp4: the only official extension; used for both audio and video files (and advanced content)
- .m4a: introduced by Apple for aac/alac audio-only files.
NOTE: .m4a files can safely be renamed to .mp4 -- but the distinction between audio (m4a) and video (mp4) may be useful if you are going to share files, or if you tend to forget what files you have.
For complete details on MP4, see the following link:
.mp4 audio
mp4a
|
This is an audio codec. The name to use at the command line is mp4a. This codec can be used inside the mpeg, mp4, asf and matroska containers. |
.m4a is the file extension attached to names of files containing MPEG-4 Audio. Generally, MPEG-4 files are have the .mp4 file extension.
The .m4a file extension has been popularized by Apple, which started using the .m4a file extension in their iTunes software and iPod music players to distinguish between MPEG-4 Video and Audio files. Currently, most software that supports MPEG-4 Audio also supports the .m4a extension. The most common type of .m4a files available are those using the AAC (Advanced Audio Coding) audio format, but other formats such as Apple Lossless and even mp3 files may be put inside a .m4a container file. You can normally safely rename the file extension of an .mp4 file containing only audio to .m4a or vice versa to get the file to properly play in your favorite audio player.
Protected MPEG-4 Audio
When these files have digital rights management (DRM) restrictions applied to them, their extension are often changed to .m4p, the p standing for protected. Music files purchased from the iTunes Music Store, for example, have this extension.
Audiobooks
When they contain audiobook data, MPEG-4 files have a .m4b extension.
Container
mp4
|
VLC can encode and decode this container. The module name to use at the command line is mp4, but you can also use mov, or 3gp. |
Accepted video codecs
Accepted audio codecs
Accepted subtitle codec
Source code
- modules/mux/mp4.c (output muxer)
- modules/demux/mp4 (input demuxer)