Anatomy of a Video

The purpose of this article is to explain the technical anatomy of a video and the file types associated with a video, including a web video.

There are three dimensions to a video:

Audio Track

Height of The Image, and the Width of The Image

A video file is a piece of data that (typically) contains both an audio and a video stream.  Other information that can be encoded into a video file as well, such as subtitles or multiple audio tracks (think of director’s commentaries or alternate languages on a DVD).

How Does a Video File Work?

This multidimensional data is stored within one video file.  The type of video file (.avi, .mpg, .flv, etc.) is actually known as the container.  As the name implies, it contains multiple streams of data that are organized and accessed according to the standards for the container.

Different containers exist for different purposes.  For example, .avi and .mpg are best suited for videos that are going to stay on your hard drive while .mp4 and .flv are geared more towards the web.

Within a container file, you will find the audio and video streams, which are chunks of information that are encoded using a variety of standards (video and audio codec formats).  Different containers support different standards.  Audio is typically found as either .mp3, PCM, or AAC.  Web video is typically .flv or h.264.   How you intend to distribute the video determines the encoding schemes that are used, and with some many options there is plenty of wiggle room for personal preference.

What Audio and Video Stream Standards Work Best for Web Video?

For web video (e.g. video email), mp3 is one of the best choices for the audio stream. mp3 is a “lossy” type of audio encoding.  This means that some audio fidelity is going to be lost when converting from the audio source.  We recommend using a 128 kbps (kilobits per second) for mp3 encoding as this is close enough to CD quality, it is the current sweet spot that balances quality with size.

There is certainly a time and place for higher or lower audio bit rates.  Whenever you listen to a song (or a preview) on a website like Amazon, the audio is usually a very low bitrate, somewhere around 32 kbps.  This allows the previews to load quickly.  Whenever subtle acoustic details are present, there is definitely a benefit for higher bitrates (e.g. classical music).

When it comes to the video stream, there are a lot of different encoding formats available.  The current format that is dominating is h.264, which is one part of the MPEG4 standard.   This encoding scheme can achieve a high level of compression and retaining good visual fidelity.  Flash video (.flv) is another popular encoding format, it is very similar to h.264.[

Today, many people are using smartphones to browse the web and view video email.  The browsers for these devices are typically much simpler than a computer browser, and typically have some limitation on functionality. These limitations can sometimes prevent online video from being viewed as the video streams are not always encoded to a format supported by the phone.  If you are looking to deliver video to smartphones, the most popular format is .3gp.  One thing to bear in mind with .3gp is that it does not support mp3 audio streams.  The stream has to be AAC or a similar audio format.

Wrapping it up! [...in a Container File]

Video files contain a minimum of one video and one audio stream.  As long as the container file supports the standard, you can use any type of encoding for the two types of information.  For example, you could have a Flash file that encodes video with Sorenson’s VP6 standard and mp3 audio.  You could also turn around and create that same file with h.264 on the video stream and AAC audio.   They will both be completely acceptable Flash files, just with the information packaged in a different way.

With this knowledge, you can start looking at encoding your videos differently for better quality, download speeds, etc.  Play around with different encoding settings and see what you get.  If you have any online video encoding tips or questions, please feel free to leave a comment.

Here is a link to a number of different containers and the standards they support, check out a comparison of container formats.

thumbnail image credit fdecomite