On 19/07/2025 16.14, Jim DeLaHunt wrote: Some excellent suggestions. Thanks, Jim. The latest draft follows.
Dear Dr. Poynton, Thank you for providing valuable guidance to so many people for so many years. You may know that Wikipedia contains a rather tortured description of chroma subsampling. I seek to simplify the description and to expand the scope to include the notations that I call "conjectures", below. I'm associated with the ffmpeg-user mailing list, and though I speak solely for myself, I have the entirety of ffmpeg as an audience. I would be delighted to receive the opinions of an authority. All comments are welcome. I will not post any replies on ffmpeg-user or Wikipedia or anywhere else without your expressed permission. Note however that I have posted drafts of this message on ffmpeg-user for comments. Q1. I show five conjectures: 4:4:2 and 4:4:1 and 4:2:1 and 4:1:0 and 4:0:0. In your judgment, do those conjectured notations exist? Are they correct? Q2. For 4:2:2 and 4:2:0 and 4:1:1, I see a difference between your descriptions and Wikipedia's. As I see it, you show sampling that's a half-pixel offset to the left. Do my diagrams correctly depict your judgment? Thank you. I hope you respond but I also hope you don't spend much time on the response. Warm Regards, Mark Filipak. References. Poynton: https://www.poynton.ca/PDFs/Chroma_subsampling_notation.pdf Wikipedia: https://en.wikipedia.org/wiki/Chroma_subsampling KEY: • : denotes a luma pixel. © : denotes a chroma pixel. ©== : denotes a single Cb Cr pair that spans 2 pixels. ©====== : denotes a single Cb Cr pair that spans 4 pixels. ——[1]—— : denotes that there is no chroma subpicture there [1]. Shown next is the top-left corner of the sampled film. +————————— | • • • • <== The sample loci in subpicture 0 (frame or field). | • • • • <== The sample loci in subpicture 1 (frame or field). | The above is repeated across the pixel data's columns and rows. Shown next is the loci of Y, Cb, and Cr separated as element 'planes'. | Y Cb Cr | • • • • | © © © © | © © © © 4:4:4, Poynton, Wikipedia. | • • • • | © © © © | © © © © | • • • • | © © © © | © © © © 4:4:2, conjecture. | • • • • | ©== ©== | ©== ©== | • • • • | © © © © | © © © © 4:4:1, conjecture. | • • • • | ©====== | ©====== | • • • • | © © © © | © © © © 4:4:0, Wikipedia. | • • • • | ——[1]—— | ——[1]—— | • • • • | ©== ©== | ©== ©== 4:2:2, Wikipedia. | • • • • | ©== ©== | ©== ©== | • • • • |©== ©== |©== ©== 4:2:2 (BT.601), Poynton. | • • • • |©== ©== |©== ©== [2] | • • • • | ©== ©== | ©== ©== 4:2:1, conjecture. | • • • • | ©====== | ©====== | • • • • | ©== ©== | ©== ©== 4:2:1 (JPEG variant, irregular), | • • • • | ——[1]—— | ©====== Wikipedia. | • • • • | ©== ©== | ©== ©== 4:2:0 (MPEG1, H.261), Poynton, | • • • • | ——[1]—— | ——[1]—— Wikipedia. | • • • • |©== ©== |©== ©== 4:2:0 (MPEG2 frames), Poynton. | • • • • | ——[1]—— | ——[1]—— [2] | • • • • | ©====== | ©====== 4:1:1, Wikipedia. | • • • • | ©====== | ©====== | • • • • ©====== | ©====== 4:1:1 (480i), Poynton. | • • • • ©====== | ©====== [2] | • • • • | ©====== | ©====== 4:1:0, conjecture. | • • • • | ——[1]—— | ——[1]—— | • • • • | ——[1]—— | ——[1]—— 4:0:0, (monochrome) conjecture. | • • • • | ——[1]—— | ——[1]—— | • • • | ©==== | ©==== 3:1:1 (Sony), Poynton, | • • • | ©==== | ©==== Wikipedia. [1] The chroma subpicture is void. If both chroma subpictures 0 and 1 are void (e.g. 4:0:0), then there are no chroma subpictures and the composited pixels carry luma only. Otherwise, the decoder copies chroma subpicture 0 to chroma subpicture 1. Note that though it is possible, the condition: chroma subpicture 0 void and chroma subpicture 1 populated, has not been seen in the wild. [2] The chroma samples are shown left-shifted by one-half pixel, presumably due to sampling one-half pixel to the left. Since they cannot be moved, the pixels must be obtained by mixing (e.g. C.n = (C.n + C.n+1)/2) in un-coded pictures. Note that the appearance of the left edges of chroma spans are slightly blurred by simple mixing. Note also that chroma spans are assumed to be truncated as needed at the left edge of film edges (e.g. in 4:1:1) and that the mixing is most accurately accomplished in frame pictures. _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".