Started: August 30th, 2015
Last update: November 9th, 2015
Written by Peter B.,

 

Introduction

In the digital world, end users are often overwhelmed and confused by the vast myriad of abbreviations, tech-terms used by engineers and IT-staff. Let's take a look at file formats.

The perceived complexity suggested by tech-speak led to the misapprehension that having one term for video file formats would make things easier to understand. On the contrary.

The name "MPEG-4"

Let's take the term "MPEG-4" for example.

What is MPEG-4?

Quoting Wikipedia:

"MPEG-4 absorbs many of the features of MPEG-1 and MPEG-2 and other related standards, adding new features such as (extended) VRML support for 3D rendering, object-oriented composite files (including audio, video and VRML objects), support for externally specified Digital Rights Management and various types of interactivity.

AAC (Advanced Audio Coding) was standardized as an adjunct to MPEG-2 (as Part 7) before MPEG-4 was issued."

When someone answers "MPEG-4" to the question "Which format are you using?", they may answer correctly, but at the same time, not really telling the details about container, video codec, audio codec, or possible compatibility.

They might be using an MPEG-4 variant as video codec, or just MPEG-4 as container - or even just for audio encoding. A Flash video (.flv) file with H.264 video might be referred to MPEG-4, as well as an audiofile with AAC stored as ".m4a" file. And many other variants...

Why is that so?

Quoting Wikipedia again:

"MPEG-4 is still an evolving standard and is divided into a number of parts. Companies promoting MPEG-4 compatibility do not always clearly state which "part" level compatibility they are referring to."

In practice, applications supporting some variant of MPEG-4 only mention that they offer support for the file format in different, non-clear ways. They often do so, by using the following terms somewhat arbitrarily:

Or less commonly known ones: ...and so on.

One term = less confusion?

Seeing this short list of more than 10 different meanings of the term "MPEG-4", the answer "We use MPEG-4" might seem attractive. Still, it would not only keep things unclear, but add to the confusion.

Format = file suffix?

Since many people associate the format of a file with the extension of the filename (e.g. "my_video_file.avi") they see in their file explorer, it became very common to either refer to the format being used by simply saying/listing the file suffix.

Popular examples: AVI, MKV (Matroska), MP4, MOV, etc.

This led to an interesting phenomenon: Some vendors and authors of files started to put the video codec name into the file suffix, inventing new file extensions and even their own flavors of a container.

One popular example would be "DivX Media Format (DMF)", with the file extension ".divx":
It's actually DivX encoded video in a version of AVI - optionally adding proprietary RIFF chunks to the container, to support features like subtitles, etc.

Member of a family

The term "MPEG" actually refers to "Motion Picture Experts Group". Using it for video formats declares that the file adheres to specifications of the MPEG family. So, all MPEG files are usually somewhat technically related to each other, but in fact very different algorithms and concepts can be implemented storing the media. Therefore, it's not guaranteed that an application supporting "MPEG-*" is actually compatible with other applications, also supporting "MPEG-*".

"John Edward Smith"

Staying with the family comparison, you could think of it like this:

Think of the word "MPEG" like a surname. Let's take "Smith".
If you say: "It's Smith", depending on the context, it might be clear whom you refer to - or lead to a follow up question: "Which "Smith?".

Kim Smith?
Jane Smith?
Edward Smith?
John Smith?
The "other" Smith?

In fact, you meant your good friend "John Edward Smith".

I think you get the idea.

There's a reason why we use different names for different people. And different file formats. And different encodings.

Many parts

The standard of MPEG-4 actually consists of many so called "parts". Each part "only covers a certain aspect of the whole specification". Wikipedia holds a nice list with links of these parts.

Currently these are more than 30 different specifications, each defined in their own ISO standards paper. Ranging from describing how audio/video are multiplexed and synchronized, over different methods of compression - as well as how Intellectual Property Management is to be handled - and many more.

To make things a bit less confusing, let's quote Wikipedia again:

"Profiles are also defined within the individual 'parts', so an implementation of a part is ordinarily not an implementation of an entire part."

Different profiles, different levels

Additionally to different parts, there are also different levels and profiles defined as part of the MPEG-4 standard. The profiles supported by an application might make a difference regarding format compatibility, whereas the levels just define certain accepted values for properties such as resolution, bitrate, etc.

Here is a screenshot of the levels defined in "Simple Profile (SP)" and "Advanced Simple Profile" (ASP)

Conclusion

There's a reason why some terms for more popular MPEG-4 variants are being used, such as "XviD", "H.264", "Blu-Ray", etc. They actually do make things easier - as well as not. It's tricky.

If you would like to reduce this confusion in the future, you might want to try the following:

If you buy equipment, or choose software, or define which video format to use for a production, you could try to use the correct terms. At least declare which container, video codec and audio codec you mean. This might establish more awareness of the depth of digital video terms, and popularize a clearer, more correct way of speaking about video formats.

If authors of software and devices encounter understanding users, they are more likely to use proper terms. That would make things clearer, and make it easier for everyone dealing with digital video.

The MPEG-4 cheatsheet

Here's a short list that might help reducing the confusion a bit, by listing common terms for MPEG-4 formats, with a short explanation:

Term Equivalents Description
MPEG-4 video .mp4, .m4v, .mov Usually H.264 (video), AAC (audio) in .mp4, .mkv or .mov (container)
MPEG-4 audio .mp4 .m4a, .m4p, Usually AAC audio encoding in .mp4 (container). Might also have the suffix ".m4a". Popular due to Apple's use on iPod, iPhone. ".m4p" is not a typo, but the file suffix used for DRM copy-protected audio, as sold e.g. on iStore.
h264 H.264, x264, MPEG-4 AVC Only refers to the video codec. The container is usually .avi, .mkv or .mov.
XviD DivX, MPEG-4 ASP Only refers to the video codec. The container is usually .avi, .mkv or .mov.
MPEG-4 Flash video Usually refers to H.264 (video), AAC or MP3 (audio) in .flv (container)
Blu-Ray MPEG-2 Part 2 (=H.262), MPEG-4 Part 10: AVC (=H.264) Could contain MPEG-2 or MPEG-4 encoded video. Audio could be uncompressed (linear PCM), Dolby Digital (AC-3), DTS, Dolby Digital Plus, DTS-HD, Dolby TrueHD, DTS-HD Master Audio,
Usually it's H.264 with AAC or PCM.