On Tue, Aug 02, 2022 at 06:54:15PM +0200, Nicolas George wrote: > Signed-off-by: Nicolas George > --- > libavutil/pixfmt.h | 17 +++++++++++++++++ > 1 file changed, 17 insertions(+) > > > Identical to the one I posted last week. > > > diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h > index 2d3927cc3f..3d0f92ed4d 100644 > --- a/libavutil/pixfmt.h > +++ b/libavutil/pixfmt.h > @@ -60,6 +60,23 @@ > * For all the 8 bits per pixel formats, an RGB32 palette is in data[1] like > * for pal8. This palette is filled in automatically by the function > * allocating the picture. > + * > + * @par > + * Summary of the naming conventions for YUV formats: > + * 444 422 440 420 411 410 > + * ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╋━┿━┿━┿━╋ ╋━┿━┿━┿━╋ > + * ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╂─╂─╂─╂─╂ ╂─┼─╂─┼─╂ ╋━┿━┿━┿━╋ ╂─┼─┼─┼─╂ > + * ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╋━┿━┿━┿━╋ ╂─┼─┼─┼─╂ > + * ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╂─╂─╂─╂─╂ ╂─┼─╂─┼─╂ ╋━┿━┿━┿━╋ ╂─┼─┼─┼─╂ > + * ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╋━╋━╋━╋━╋ ╋━┿━╋━┿━╋ ╋━┿━┿━┿━╋ ╋━┿━┿━┿━╋ > + * where > + * ┼─┼ = luma pixel ╋━╋ = chroma pixel > + * ┼─┼ ╋━╋ > + * > + * yuv4ab → > + * log2_chroma_w = log₂(4/a) > + * log2_chroma_h = b == a ? 0 : b == 0 ? log2_chroma_w : unused > + * i.e. a = horizontally, number of luma pixels for four chroma pixels > */ You seem to describe samples as rectangular areas of constant value IIUC. If you look at the ITU/ISO specs (mpeg2, h264 or others) they are described by point samples. The desity of samples matches. While the default locations do not. What you list above are where probably most sane people would place the samples. But ISO/ITU, probably because of historic TV standard reasons and interlacing convertion reasons place the chroma samples in a more crooked way I think either the ascii art should be adapted or the text should clarify this difference thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB "Nothing to hide" only works if the folks in power share the values of you and everyone you know entirely and always will -- Tom Scott