Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Video codec
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Video codec design == {{Further|Video coding format}} Video codecs seek to represent a fundamentally analog data set in a digital format. Because of the design of analog video signals, which represent [[Luminance (video)|luminance]] (luma) and [[chrominance|color information]] (chrominance, chroma) separately, a common first step in image compression in codec design is to represent and store the image in a [[YCbCr]] color space. The conversion to YCbCr provides two benefits: first, it improves compressibility by providing decorrelation of the color signals; and second, it separates the luma signal, which is perceptually much more important, from the chroma signal, which is less perceptually important and which can be represented at lower resolution using [[chroma subsampling]] to achieve more efficient data compression. It is common to represent the ratios of information stored in these different channels in the following way Y:Cb:Cr. Different codecs use different chroma subsampling ratios as appropriate to their compression needs. Video compression schemes for Web and DVD make use of a 4:2:1 color sampling pattern, and the [[DV (video format)|DV]] standard uses 4:1:1 sampling ratios. Professional video codecs designed to function at much higher bitrates and to record a greater amount of color information for post-production manipulation sample in 4:2:2 and 4:4:4 ratios. Examples of these codecs include Panasonic's DVCPRO50 and DVCPROHD codecs (4:2:2), Sony's HDCAM-SR (4:4:4), Panasonic's HDD5 (4:2:2), [[Apple Inc.|Apple]]'s Prores HQ 422 (4:2:2).<ref>{{Cite book|last=Hoffman|first=P.|title=Requirements for Internet-Draft Tracking by the IETF Community in the Datatracker |date=June 2011|doi=10.17487/rfc6293|doi-access=free}}</ref> It is also worth noting that video codecs can operate in RGB space as well. These codecs tend not to sample the red, green, and blue channels in different ratios, since there is less perceptual motivation for doing so—just the blue channel could be undersampled. Some amount of spatial and temporal [[downsampling]] may also be used to reduce the raw data rate before the basic encoding process. The most popular encoding transform is the 8x8 DCT. Codecs that make use of a [[wavelet]] transform are also entering the market, especially in camera workflows that involve dealing with [[Raw image format|RAW]] image formatting in motion sequences. This process involves representing the video image as a set of [[macroblocks]]. For more information about this critical facet of video codec design, see [[B-frames]].<ref>{{Cite web|title=Video Codec Design: Developing Image and Video Compression Systems {{!}} Wiley|url=https://www.wiley.com/en-ie/Video+Codec+Design%3A+Developing+Image+and+Video+Compression+Systems-p-9780471485537|access-date=2022-02-11|website=Wiley.com|language=en-ie}}</ref> The output of the transform is first [[Quantization (image processing)|quantized]], then [[entropy encoding]] is applied to the quantized values. When a DCT has been used, the coefficients are typically scanned using a [[zig-zag scan]] order, and the entropy coding typically combines a number of consecutive zero-valued quantized coefficients with the value of the next non-zero quantized coefficient into a single symbol and also has special ways of indicating when all of the remaining quantized coefficient values are equal to zero. The entropy coding method typically uses [[Variable-length code|variable-length coding tables]]. Some encoders compress the video in a multiple-step process called ''n-pass'' encoding (e.g. 2-pass), which performs a slower but potentially higher quality compression. The decoding process consists of performing, to the extent possible, an inversion of each stage of the encoding process.<ref>{{Cite web|title=Encoding Stage - an overview {{!}} ScienceDirect Topics|url=https://www.sciencedirect.com/topics/computer-science/encoding-stage|access-date=2022-02-11|website=www.sciencedirect.com}}</ref> The one stage that cannot be exactly inverted is the quantization stage. There, a best-effort approximation of inversion is performed. This part of the process is often called ''inverse quantization'' or ''dequantization'', although quantization is an inherently non-invertible process. Video codec designs are usually standardized or eventually become standardized—i.e., specified precisely in a published document. However, only the decoding process need be standardized to enable interoperability. The encoding process is typically not specified at all in a standard, and implementers are free to design their encoder however they want, as long as the video can be decoded in the specified manner. For this reason, the quality of the video produced by decoding the results of different encoders that use the same video codec standard can vary dramatically from one encoder implementation to another.
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Video codec
(section)
Add topic