The Ultimate Guide to Video Encoding

Contents

vzzariano

 
 

What is encoding?

Essentially, encoding is the process of converting video files from one format to another to make sure they play on all devices (desktop, mobile, tablet). When you film a video, the device you record it on gives that video a particular format and other attributes. If you then want to publish the video online, you must consider various devices on which it may be viewed. This is necessary because different devices and browser types only support specific video formats. After encoding, your videos are compatible with all playback mechanisms and can play on any device.

One more thing you should know is that encoding also allows you to manipulate file attributes, such as the bit rate and frame size of a video. Changing these attributes affects the file’s size and quality, so you can control whether you have a HD quality video, or something a little smaller. It’s good to know what you’re trying to achieve before you run a video through the encoder.

Getting confused with all the terminology? Check our encoding glossary here.

What encoding DOESN’T DO

Encoding can do a lot of things, but magic isn’t one of them… After you upload a video file to vzaar (or any other video hosting platform, for that matter), there isn’t much you can do to increase its quality.

But sometimes people persist, without realising to what extent they subject their poor video files to torture…

video encoding recommendations vzaar

video encoding recommendations vzaar

video encoding vzaar

video encoding vzaar

video encoding vzaar

Before we get into specifics, there is one question that you need to consider.

Do I want quality or reliability?

I’m sorry to break it to you, but you can’t always have what you want. And in this case, you can’t necessarily have both. The higher the quality of your video, the larger its file size. Imagine that your Internet connection is a tube. The faster your connection, the larger the tube. It can handle HD videos no problemo. But, low speed Internet connections have narrower pipes. Those large files need to squeeeeeeze through them. So you run the risk of subjecting your clients to stuttering streams. On the other hand, opting for lower quality videos means they’re available immediately, no matter where your clients are watching them but (most likely) the footage loses its visual appeal. Making everyone happy is an eternal hustle.

If you have your target bit rate in mind but are struggling to achieve desirable video quality, you’ll need to cut back in some aspect. The three main contributing factors that determine video quality are the number of pixels (the resolution of the video), the frame size and the amount of motion present. If the filming process is complete, there’s not much you can do about the motion aspect, but keep it in mind for future projects. So fundamentally, it all comes down to figuring out the best combination of bit rates and frame rate.

This is where we get a little technical, so brace yourself (we do have some recommendations later if you need them ;)).

If you’re unsure about your client’s’ connection speed but don’t want to stream super high quality videos in order to save bandwidth, there’s a method called Kush gauge that can help you determine an acceptable bit rate for your video.

Kush gauge formula: pixel count per frame x frame rate x motion factor x 0.07 ÷ 1000 = target bit rate in Kbps

Pixels per frame: width x height
Frame rate: number of frames per second
Amount of motion in the image: Low = 1; Medium = 2; High = 4

Example:
640 x 360 x 30 x 2 x 0.07 / 1,000 = 967.68 Kbps

This simply means that your target bit rate should not be lower than 967.68 Kbps if you want to steer clear from disappointing, low-quality videos.

Good option if you want to save bandwidth and ensure smooth playback for viewers on slow Internet connections. Be aware that the visual quality will be low. 360p
Good for smaller embeds and displays. Expect medium visual quality. 540p
High visual quality. Not recommended for full-screen playback. 720p
Optimal visual quality, best for HD video playback. Be aware that you’ll be using more bandwidth and viewers on slow Internet connections might experience buffering issues. 1080p

 

 
 

Encoding Recommendations

 
 

I need high quality (HD) videos

For 16:9 HD videos:

For 720p encode: 1280 pixels wide x 1600 Kbits

For 1080p encode: 1920 pixels wide x 2048 Kbits

Remember, this will vary depending on the things like the variation of the colour palette, frame rate and the amount of movement in the video. As always, the best strategy to achieving the optimal video quality is trying various different encoding settings.

 
 

I need my videos to play on mobile devices

Don’t worry, we’ll automatically encode in a mobile-friendly format and your videos will play on any device. Just remember that some Internet connections may be slower. You can read more about the challenges they create here.

 
 

I need my videos to play in full-screen mode

For 720p encode: 1280 pixels x 1600 Kbits

For 1080p encode: 1920 pixels x 2048 Kbits

It’s important to know this before you begin encoding your videos because it may impact on the quality of the compressed file. If you have reasons to believe that your videos will be viewed in a full-screen mode or you want a large embed size, videos need to be encoded with a high bit rate to meet the viewers’ quality expectations. Essentially, the full-screen mode is nothing more than a big canvas – so you need a lot of paint (pixels) to fill it.

 
 

I don’t want buffering on my videos

Encode at: 720 pixels wide x 512 Kbits

Slow Internet connections (around 2 Mbps) are often the culprit of this frustrating problem. You see, video files are typically quite large, so they require good Internet speed (or more bandwidth) to display the video properly. When the Internet connection is slow, the video starts stuttering and is often displayed in a very poor quality. One way to avoid this problem is to decrease the bitrate of the video. This will simply decrease the bandwidth demand (or the demand for better Internet connection) and increase the likelihood of video playing without any interruptions.

But don’t panic, no one expects you to know the Internet speeds around the world by heart… Here’s a world map with general information on Internet connections on planet Earth. You can use Google Analytics to determine where most of your viewers live and choose the best encoding solutions for your videos. When you know the average connection speed of your customers, you can set your overall bit rate to be under their download speed to achieve a reliable playback.

video encoding guide

Source: www.vox.com

For those of you fortunate enough to have customers all over the globe, we would suggest you make use of our Dual Encoding feature to have two different versions of the same video. In a nutshell, Dual Encoding means you can stream HD quality to fast connections, and a smaller SD version for those on the slower ones. This makes sure your audience gets the best quality video stream for them. Everyone’s happy.

These are our recommended encoding settings for slow Internet connections. However, keep in mind that the best way to find the right solution for each video is to try several different encoding options and see what you can get away with, without sacrificing your video quality too much.

For slower Internet connections, set your encoding settings to:

720 pixels wide x 512 Kbits

slow internet connections video encoding

 
 

I want to save bandwidth

Encode at: 360p = 640 pixels x 512 Kbits

Bandwidth is a synonym for data transfer rate or the amount of data that can be carried from one point to another in a given time period (usually a second). Essentially, it is a measurement of how fast data can be sent over a wired or wireless connection. A great analogy for bandwidth is visualizing it as a tube and each bit of data as a grain of sand. If you attempt to pour a large amount of sand into a skinny tube, it will take a long time for the sand to flow through it. Similarly, a file will be sent or received much slower if you have a low-bandwidth connection. Standard definition (SD) video (480p) works at 1 megabit per second (Mbps), but HD video (720p) wants around 4 Mbps, and HDX (1080p), more than 7 Mbps.

The more often your videos are played, the more bandwidth you will need. Every vzaar plan comes with a certain bandwidth limit. In order to choose a plan that is perfectly aligned with your projections, you will need at least a rough first estimation. If you’re just starting out, calculating bandwidth may prove somewhat tricky. But don’t worry, we’ve created a calculator that will estimate your bandwidth needs based on your existing video content.

Bandwidth Calculator

 
 

The Most Common Encoding Issues & How To Deal With Them

My users are on a slow Internet connection. What can I do?

Let’s establish the fact that slow Internet connections and high quality streaming are not a match made in heaven; but you already know that, right? If you’re facing this issue, the best approach we can recommend is to fall back on the old trial and error method. See how low you can get the bit rate of a video, whilst still maintaining a level of quality which is acceptable to you.

Start with a high frame width (say 1280px, which is 720p at 16:9) and a relatively low bit rate (around 512kbps). See how that comes out. If you are not pleased with the image quality, try either lowering the frame width or increasing the bit rate. Remember that a higher bit rate will mean a larger file and a lower frame width will mean fewer pixels over all (which can be a really noticeable issue on larger displays).

video encoding vzaar

My target file size is larger than the original

Remember, encoding cannot increase the quality of your original video file. If your target file is larger than its original, unencoded version, itmeans you tried to perform some hokus pokus to increase the quality of your video and ended up stretching it… because your Magic Encoding was turned off. So turn it back on! Then re-upload your video to encode with correct settings and give a self-high five for dealing with this like a boss.

Help! The audio is out of sync…

  1. This could have something to do with the frame rate of your video, so just double check if it is between 20 FPS and 30 FPS (you can use some freely available online tools, such as Media Inspector for OS X, GSpot for Windows, or MediaInfo for Windows, OS X and Linux to obtain that information). If the frame rate of your video is lower or higher than the recommended norm, you may discover the audio is mildly out of sync after encoding. In this case, we recommend you to try the Two-pass Encoding feature. It tells the encoder to look at the file before compressing it, as opposed to the usual behaviour, where the encoder interprets the file on the fly. This can solve many issues the encoder might have interpreting the file interpretation issues.
  2. If it’s not the frame rate and the audio continues to play up, you will need to check the relative length of the audio and video streams. And it’s not just a matter of opening the file in an audio player. Use the same tools mentioned above to get that information.
     
    In some cases, source files can be created with different length for their audio and video streams. When this happens, the encoder doesn’t always succeed in precisely matching up the streams as they were before. To avoid falling into that trap, you should enable two-pass encoding. However, if the problem persists, you may need to ask your video producer to ensure the streams are of appropriate corresponding lengths.

My video is already encoded in a web-ready format

Look at you…came all prepared, huh? If your video is already a H.264 encoded MP4, you can turn off vzaar’s encoding – the job is done. However, one thing you need to keep in mind is the MOOV atom. MOOV atom is a bundle of metadata (extra information), which tells Flash what do with a file. Before saying no to vzaar’s encoding, ensure the MOOV atom is positioned at the beginning of the file. If it’s placed at the end, Flash will take a long time to start the video – it will buffer and buffer and buffer – and may even timeout.

If you find this MOOV atom issue a little over the top, we suggest simply using vzaar’s built-in encoding to scrap the encoded MP4 file that you already have and use vzaar’s encoding. As long as you choose the same frame size and bit rate as your original file, encoding the video with vzaar will not have any noticeable impact on its quality, and it will fix the MOOV atom.

I don’t want my videos in an MP4 format

That’s okay, we can probably help you with that, but let’s take a step back for a second. Other formats, such as OGV, work for HTML5 playback in most modern browsers. However, they’re not supported by Flash. To help customers avoid this issue, we only encode content to H.264 in an MP4 container. And for this same reason, we only allow encoding to be disabled for videos already in an MP4 container. However, if you feel that you need your videos encoded in another format, have a chat with our Support Engineers and they will sort it out for you.

video encoding vzaar

I uploaded a video and the quality is really poor…

That’s annoying. Generally, this means the frame size and bit rate of the target video is much lower than the original’s. But let’s back up a little. Here are a few suggestions where things might have gone awry.

To get the maximum quality of your videos on mobile, tablet, desktop or when watched in full-screen, follow this simple instruction:

  1. Use the “Original” profile on vzaar – this will match the source file’s frame size.
  2. Turn on “Magic encoding” and set the bit rate to 4096 kbps. This will cap the target file’s bit rate to match to source’s (or match to 4096 kbps, whichever is higher).
  3. Turn off “iOS optimised streams”. This will ensure all devices use the same, super high quality video.
  4. Upload your video and vzaar will encode it with as high a quality as is possible with the source available.

One thing you need to keep in mind here is that high quality videos require more bandwidth. But what won’t you do for your lovely customers? :)

Related blog posts:

How to fix video files: our secret weapon

 
 

I don’t know what that means…


Encoding Glossary

Frame rate

is the number of frames or still images that are displayed per second in a video. The faster the frames flicker along, the more lifelike and immersive the video becomes. The rate at which these still images are displayed is expressed in frames per second ( FPS).
The recommended frame rates are 24, 25 and 30 and each of them have different uses. The professional frame rate for motion pictures is 24 and 25 FPS, and it’s 30 FPS for television (in US only).

video encoding vzaar

Bit rate.

The bit rate of a file tells us how many bits of data the file contains per second. The video or audio quality increases as the bit rate increases. But you have to remember that you can’t make the video look better or improve the quality of sound by increasing the bit rate if it was low in the first place. Bit rates are usually measured in kilobits per second (kbps), or megabits per second (Mbps).

How can I check the bit rate of my source file? Bad news first – there is no magic way to increase the quality of a video encoding beyond the bit rate of your source file. So, how do you check the bit rate of the original file?.. There are a number of tools out there for checking video bit rate and other useful metadata. Media Inspector for OS X, GSpot for Windows, or MediaInfo for Windows, OS X and Linux are some of the most popular graphical applications that will give you this information.

Aspect ratio

is a proportional relationship between the width and height of a rectangle, which is usually expressed in the W:H format, where W stands for width and H stands for height. Most modern television and computer monitors have an aspect ratio of 16:9. But this will vary – remember the old square television sets? That’s 4:3.

ratio

Video resolution

is the number of pixels displayed on screen. In other words, it’s the width and height of the projected image, measured in pixels. For example, a video that has an aspect ration of 16:9 will most likely have the resolution of 720p (1280×720) or 1080p / 1080i (1920×1080).

Codec.

Codec stands for “compression/decompression”. It’s a piece of software that compresses raw video and audio files when encoding and decompresses/decodes the files on playback. Codecs are needed because video and audio files are very large and therefore become difficult to transfer across the Internet quickly. There are hundreds of different codecs out there. Common video codecs are: H.264, MPEG-2, DivX, XviD, Theora, VP8, and the WMV family. Common audio codecs are: MP3, AAC, Vorbis, and the WMA family.

Remember that codecs do not determine the file’s extension. That’s the container format. Some of the most popular container formats include mov (Quicktime), P4, OGG, and AVI.

Source File

The original video before you upload it to vzaar.

Target File

This is the encoded video. After you’ve run it through vzaar’s uploading and encoding process.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>