Re: [libav-devel] [PATCH] avutil: add yuva444p10 pixel format
On 10/01/2012 05:23 PM, Ronald S. Bultje wrote: > Hi, > > Why not add support for yuva{420,422}p10{be,le} also? And while at it, > Why not add yuva{420,422,444}p9{be.le} at the same time? I started with 2 pixel formats I spotted in the question regarding ffv1.3 that I deemed interesting, nothing prevents to add all of them beside doublechecking that the alpha codepath actually works. (I forgot to check about this problem...) lu ___ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel
Re: [libav-devel] [PATCH] avutil: add yuva444p10 pixel format
Hi, On Mon, Oct 1, 2012 at 5:03 AM, Luca Barbato wrote: > From: Paul B Mahol > > Signed-off-by: Luca Barbato > --- > libavutil/pixdesc.c | 26 ++ > libavutil/pixfmt.h| 3 ++- > libswscale/utils.c| 2 ++ > tests/ref/lavfi/pixdesc | 2 ++ > tests/ref/lavfi/pixfmts_copy | 2 ++ > tests/ref/lavfi/pixfmts_null | 2 ++ > tests/ref/lavfi/pixfmts_scale | 2 ++ > tests/ref/lavfi/pixfmts_vflip | 2 ++ > 8 files changed, 40 insertions(+), 1 deletion(-) > > diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c > index d0d5de0..04801a7 100644 > --- a/libavutil/pixdesc.c > +++ b/libavutil/pixdesc.c > @@ -553,6 +553,32 @@ const AVPixFmtDescriptor > av_pix_fmt_descriptors[PIX_FMT_NB] = { > }, > .flags = PIX_FMT_PLANAR, > }, > +[PIX_FMT_YUVA444P10LE] = { > +.name = "yuva444p10le", > +.nb_components = 4, > +.log2_chroma_w = 0, > +.log2_chroma_h = 0, > +.comp = { > +{ 0, 1, 1, 0, 9 },/* Y */ > +{ 1, 1, 1, 0, 9 },/* U */ > +{ 2, 1, 1, 0, 9 },/* V */ > +{ 3, 1, 1, 0, 9 },/* A */ > +}, > +.flags = PIX_FMT_PLANAR, > +}, > +[PIX_FMT_YUVA444P10BE] = { > +.name = "yuva444p10be", > +.nb_components = 4, > +.log2_chroma_w = 0, > +.log2_chroma_h = 0, > +.comp = { > +{ 0, 1, 1, 0, 9 },/* Y */ > +{ 1, 1, 1, 0, 9 },/* U */ > +{ 2, 1, 1, 0, 9 },/* V */ > +{ 3, 1, 1, 0, 9 },/* A */ > +}, > +.flags = PIX_FMT_BE | PIX_FMT_PLANAR, > +}, > [PIX_FMT_VDPAU_H264] = { > .name = "vdpau_h264", > .log2_chroma_w = 1, > diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h > index f3c504a..d3f10ee 100644 > --- a/libavutil/pixfmt.h > +++ b/libavutil/pixfmt.h > @@ -159,7 +159,8 @@ enum PixelFormat { > PIX_FMT_GBRP16LE, ///< planar GBR 4:4:4 48bpp, little endian > PIX_FMT_YUVA422P, ///< planar YUV 4:2:2 24bpp, (1 Cr & Cb sample per > 2x1 Y & A samples) > PIX_FMT_YUVA444P, ///< planar YUV 4:4:4 32bpp, (1 Cr & Cb sample per > 1x1 Y & A samples) > - > +PIX_FMT_YUVA444P10BE, ///< planar YUV 4:4:4 40bpp, (1 Cr & Cb sample per > 1x1 Y & A samples) > +PIX_FMT_YUVA444P10LE, ///< planar YUV 4:4:4 40bpp, (1 Cr & Cb sample per > 1x1 Y & A samples) > PIX_FMT_NB,///< number of pixel formats, DO NOT USE THIS if you > want to link with shared libav* because the number of formats might differ > between versions > }; > > diff --git a/libswscale/utils.c b/libswscale/utils.c > index 2f78e87..7d9c120 100644 > --- a/libswscale/utils.c > +++ b/libswscale/utils.c > @@ -110,6 +110,8 @@ static const FormatEntry format_entries[PIX_FMT_NB] = { > [PIX_FMT_YUVA420P]= { 1, 1 }, > [PIX_FMT_YUVA422P]= { 1, 1 }, > [PIX_FMT_YUVA444P]= { 1, 1 }, > +[PIX_FMT_YUVA444P10BE]= { 1, 1 }, > +[PIX_FMT_YUVA444P10LE]= { 1, 1 }, > [PIX_FMT_RGB48BE] = { 1, 1 }, > [PIX_FMT_RGB48LE] = { 1, 1 }, > [PIX_FMT_RGB565BE]= { 1, 1 }, Why not add support for yuva{420,422}p10{be,le} also? And while at it, Why not add yuva{420,422,444}p9{be.le} at the same time? Ronald ___ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel
[libav-devel] [PATCH] avutil: add yuva444p10 pixel format
From: Paul B Mahol Signed-off-by: Luca Barbato --- libavutil/pixdesc.c | 26 ++ libavutil/pixfmt.h| 3 ++- libswscale/utils.c| 2 ++ tests/ref/lavfi/pixdesc | 2 ++ tests/ref/lavfi/pixfmts_copy | 2 ++ tests/ref/lavfi/pixfmts_null | 2 ++ tests/ref/lavfi/pixfmts_scale | 2 ++ tests/ref/lavfi/pixfmts_vflip | 2 ++ 8 files changed, 40 insertions(+), 1 deletion(-) diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index d0d5de0..04801a7 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -553,6 +553,32 @@ const AVPixFmtDescriptor av_pix_fmt_descriptors[PIX_FMT_NB] = { }, .flags = PIX_FMT_PLANAR, }, +[PIX_FMT_YUVA444P10LE] = { +.name = "yuva444p10le", +.nb_components = 4, +.log2_chroma_w = 0, +.log2_chroma_h = 0, +.comp = { +{ 0, 1, 1, 0, 9 },/* Y */ +{ 1, 1, 1, 0, 9 },/* U */ +{ 2, 1, 1, 0, 9 },/* V */ +{ 3, 1, 1, 0, 9 },/* A */ +}, +.flags = PIX_FMT_PLANAR, +}, +[PIX_FMT_YUVA444P10BE] = { +.name = "yuva444p10be", +.nb_components = 4, +.log2_chroma_w = 0, +.log2_chroma_h = 0, +.comp = { +{ 0, 1, 1, 0, 9 },/* Y */ +{ 1, 1, 1, 0, 9 },/* U */ +{ 2, 1, 1, 0, 9 },/* V */ +{ 3, 1, 1, 0, 9 },/* A */ +}, +.flags = PIX_FMT_BE | PIX_FMT_PLANAR, +}, [PIX_FMT_VDPAU_H264] = { .name = "vdpau_h264", .log2_chroma_w = 1, diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index f3c504a..d3f10ee 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -159,7 +159,8 @@ enum PixelFormat { PIX_FMT_GBRP16LE, ///< planar GBR 4:4:4 48bpp, little endian PIX_FMT_YUVA422P, ///< planar YUV 4:2:2 24bpp, (1 Cr & Cb sample per 2x1 Y & A samples) PIX_FMT_YUVA444P, ///< planar YUV 4:4:4 32bpp, (1 Cr & Cb sample per 1x1 Y & A samples) - +PIX_FMT_YUVA444P10BE, ///< planar YUV 4:4:4 40bpp, (1 Cr & Cb sample per 1x1 Y & A samples) +PIX_FMT_YUVA444P10LE, ///< planar YUV 4:4:4 40bpp, (1 Cr & Cb sample per 1x1 Y & A samples) PIX_FMT_NB,///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions }; diff --git a/libswscale/utils.c b/libswscale/utils.c index 2f78e87..7d9c120 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -110,6 +110,8 @@ static const FormatEntry format_entries[PIX_FMT_NB] = { [PIX_FMT_YUVA420P]= { 1, 1 }, [PIX_FMT_YUVA422P]= { 1, 1 }, [PIX_FMT_YUVA444P]= { 1, 1 }, +[PIX_FMT_YUVA444P10BE]= { 1, 1 }, +[PIX_FMT_YUVA444P10LE]= { 1, 1 }, [PIX_FMT_RGB48BE] = { 1, 1 }, [PIX_FMT_RGB48LE] = { 1, 1 }, [PIX_FMT_RGB565BE]= { 1, 1 }, diff --git a/tests/ref/lavfi/pixdesc b/tests/ref/lavfi/pixdesc index dc1b857..2e437c1 100644 --- a/tests/ref/lavfi/pixdesc +++ b/tests/ref/lavfi/pixdesc @@ -59,6 +59,8 @@ yuv444p9le f0606604a5c08becab6ba500124c4b7c yuva420pa29884f3f3dfe1e00b961bc17bef3d47 yuva422p92b6815f465297284cdb843711682cee yuva444pc523716e4900cfe515eaab1d7124fdd9 +yuva444p10be8feac3ae2a8b97580051a8c9ae761875 +yuva444p10le8c2e1a12c53541bb63fa5f4e3bbc4824 yuvj420p32eec78ba51857b16ce9b813a49b7189 yuvj422p0dfa0ed434f73be51428758c69e082cb yuvj440p657501a28004e27a592757a7509f5189 diff --git a/tests/ref/lavfi/pixfmts_copy b/tests/ref/lavfi/pixfmts_copy index dc1b857..5bc31bf 100644 --- a/tests/ref/lavfi/pixfmts_copy +++ b/tests/ref/lavfi/pixfmts_copy @@ -59,6 +59,8 @@ yuv444p9le f0606604a5c08becab6ba500124c4b7c yuva420pa29884f3f3dfe1e00b961bc17bef3d47 yuva422p92b6815f465297284cdb843711682cee yuva444pc523716e4900cfe515eaab1d7124fdd9 +yuva444p10be5b511e1df30f12b4f9183043c80db189 +yuva444p10le47e2c61bab822a619172e54053026b09 yuvj420p32eec78ba51857b16ce9b813a49b7189 yuvj422p0dfa0ed434f73be51428758c69e082cb yuvj440p657501a28004e27a592757a7509f5189 diff --git a/tests/ref/lavfi/pixfmts_null b/tests/ref/lavfi/pixfmts_null index dc1b857..5bc31bf 100644 --- a/tests/ref/lavfi/pixfmts_null +++ b/tests/ref/lavfi/pixfmts_null @@ -59,6 +59,8 @@ yuv444p9le f0606604a5c08becab6ba500124c4b7c yuva420pa29884f3f3dfe1e00b961bc17bef3d47 yuva422p92b6815f465297284cdb843711682cee yuva444pc523716e4900cfe515eaab1d7124fdd9 +yuva444p10be5b511e1df30f12b4f9183043c80db189 +yuva444p10le47e2c61bab822a619172e54053026b09 yuvj420p32eec78ba51857b16ce9b813a49b7189 yuvj422p0dfa0ed434f73be51428758c69e082cb yuvj440p657501a28004e27a592757a7509f5189 diff --git a/tests