testinglife :
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 !
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.