Compression & Codecs in video
(File)Format or Container is the shipping box, codec is the goods inside the box.
- determines the way audio and video streams (and other metadata(like the codec info)) are stored inside the file
- Examples are :
- .avi (Microsoft -> OLD)
- .wmf (Microsoft -> Unflexible)
- .mov (Apple -> supports a lot of codecs)
- .ogg (Open Source -> but not very well supported by editing software)
- .mkv (Open Source -> but not very well supported by editing software)
- .mp4 (works on virtually all platforms, browsers etc)
Why do we compress?
- Image- and videofile sizes reduced
- More files to store, or longer videos
- Faster to download
- Downside: someone has to decode!
Types of compression'
- Intraframe or spatial compression
- Compresses each frame (so similar to image compression, with for instance JPG)
- No effective size compression
- High Quality
- Easily readable by edit software
- Apple ProRes, DNxHD (Avid)
- Interframe or temporal Compression
- Compress BETWEEN frames
- effective size compression
- Not easy for edit software
- Use for sharing -> final output
- MPEG-2 (DVD's, hardware players), DivX (downloads), H264 (currently has best quality vs. file ratio)
- Run length encoding > Looks for identical segments (often lossless)
- Transform coding > Most used (jpeg, DCT, wavelet) (selectively removes ‘non-relevant’ detail from the image).
- Chroma subsampling >Selective loss of resolution (4:4:4 vs 4:2:0)
- Reducing bit-depth (reducing colour accuracy)
- Fractal compression (replacing pixels with mathematic approximations)
Bitrate + Framesize
Workflow, Archiving & Delivery
There's no solution to the question 'What is the best setting for my video?". All depends on the platform you will deliver to!
- How do you record? (Camera codec? DSLR)
- How do you edit? (intermediate files?)
- What do you deliver? (Archiving, uploading, DVD?)
Example, for editing/archiving use:
- ProRes video codec (visually lossless through many iterations)
- Wav/Aiff audio codec
- .mov container
For (online) delivery use:
- H.264 codec
- MP3/ACC audio codec
- .mp4 container
Glitch Art & Data moshing