What does a video converter actually do to convert a video?

Status
Not open for further replies.

testinglife

Distinguished
Dec 2, 2008
3
0
18,510
I'm not sure if anyone will actually be able to answer this but how does a video converter actually fuction? I understand that it changes a video from one format to another but i'm asking how? Like what settings does it go in and change? I mean there are HUNDREDS of converters out there so it must be a known software practice to make a CONVERTER so i'm wondering what does it do? Am I able to just go to the video open it and edit it into another format ? I realize its probably more complicated that just editng a quick thing or too but can anyone enlighten me ? Thanks !
 
First it does not just change a setting, it has to recode the actual images of the video. How it does that varies greatly depending on the format and standard and options you want. For a nearly perfect copy it works about the same as how a compression software like WinZip works, it looks for any data that is the same in an image and instead of duplicating it many times over, just does a quick math calculation that is an abstract of the actual image, then reverses it on playback. So something like RED RED RED RED RED RED RED ends up looking like RED x 7. You took that long string of color data, and changed it to one string of color and a math calculation on where that red should go.

For converters like DIVX they actually have to toss out information, how they decide what to discard and how they recode it so it looks decent at 1/5 the size if the original will take a very very long book.
 

Pinhedd

Distinguished
Moderator


Hi there,

There are quite a large number of video conversion software tools available, but they all do more or less the same thing. Many of these tools are nothing more than frontends for a small number of backend tools such as ffmpeg.

Multimedia files can be broken down recursively like so.

1. Container format. A container is used to compress and multiplex multiple multimedia objects together. One of the most popular container formats is the Matroska format which supports pretty much anything and everything under the sun. Some container formats are closely linked to the format of the data that they carry, while others are quite flexible.

Common container features are:

variable bitrate / variable framerate

metadata

menus (DVD/BluRay style)

streaming (allowing media to begin playing before the entire container is available to the player)

3D support

Subtitles / Captions

Framing / synchronization

In addition to the above, the container must be compatible with the media objects contained within. For example, while Matroska can support pretty much every audio and video format under the sun, the RealMedia container can only contain video encoded in RealVideo format. The most common containers by far are Matroska (MKV), Audio Video Interleave (AVI), several different MPEG containers (MPG, MP4, TS), and Advanced Systems Format (WMV).

2. Stream format. Raw audio and video streams are terribly spatially inefficient. Here's some quick math:

A single pixel is commonly represented in a frame buffer as a triple of channel intensity values representing the intensity of the red, green, and blue colour channels. Each channel is represented by a single byte, giving 256 intensities per channel or 16 million possible colours per pixel. A 1920x1080 resolution frame contains 2,073,600 pixels and consumes 6,220,800 bytes when no compression is used. A typical movie is recorded at ~24 frames per second, which requires 149,299,200 bytes per second. A typical movie lasts ~90 minutes, which brings the uncompressed tally to 806,215,680,000 or ~806 gigabytes of uncompressed data. Try torrenting that.

Fortunately, it turns out that most of the data in that uncompressed mass is redundant. A huge amount of it can be removed through lossless compression alone. Lossless compression may bring that 806GB down to around ~100GB. Lossless means that compression and decompression are fully symmetric. The output of the decompression algorithm returns the exact data that was fed into the compression algorithm.

So, lossless is good, but can we do better? The answer is yes!

After data has been maximally compressed using lossless algorithms it's no longer possible to shrink the size of the dataset without losing information. This is called lossy compression. The output of the decompression returns data that is not the same as that which was fed into the compression algorithm. It turns out that video frames still contain a lot of data that while not redundant, can be removed with very little impact on perceived visual quality. The measure used for this is peak signal-to-noise ratio (PSNR). An image recreated from a losslessly compressed source will have an infinite PSNR because it does not differ at all from the source image. In general, a higher PSNR is more desirable, but obtaining a high PSNR comes with greater time (computational load) and space (storage/memory requrements) complexity requirements. Certain lossy codecs are more suited to certain use cases across this spectrum.
For example, many digital TV shows are encoded in h262 (MPEG-2 Part 2) and wrapped into an MPEG-2 Transport Stream container as that codec/container format is well supported by most set top boxes and televisions. BluRay players support the h262 format (which is also used by DVDs) as well as the newer h264 codec which provides similar visual quality at about 2/3rds the storage requirement but at the cost of greater computational complexity. h265 is currently in development and is expected to provide compression levels suitable enough to store UHD video.
 
Status
Not open for further replies.