Message ID | 20210601040239.2690-1-val.zapod.vz@gmail.com |
---|---|
State | New |
Headers | show |
Series | [FFmpeg-devel] avformat/nut: add support for P010 pixel format | expand |
Context | Check | Description |
---|---|---|
andriy/x86_make | success | Make finished |
andriy/x86_make_fate | fail | Make fate failed |
andriy/PPC64_make | success | Make finished |
andriy/PPC64_make_fate | warning | Make fate failed |
On Tue, Jun 01, 2021 at 07:02:39AM +0300, Valerii Zapodovnikov wrote: > This is used for dshow, though may be swapped endianness there. > Fixes #8454. fate-pixdesc-p010le and be will have to be updated. > --- > libavcodec/raw.c | 3 +++ > libavformat/nut.c | 3 +++ > 2 files changed, 6 insertions(+) > > diff --git a/libavcodec/raw.c b/libavcodec/raw.c > index 079d5c5d10..7efc0156ca 100644 > --- a/libavcodec/raw.c > +++ b/libavcodec/raw.c > @@ -224,6 +224,9 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = { > { AV_PIX_FMT_BAYER_GRBG16LE, MKTAG(0xBA, 'G', 'R', 16 ) }, > { AV_PIX_FMT_BAYER_GRBG16BE, MKTAG(16, 'R', 'G', 0xBA) }, > > + { AV_PIX_FMT_P010LE, MKTAG('P', '0', '1', '0') }, > + { AV_PIX_FMT_P010BE, MKTAG('0', '1', '0', 'P') }, > + > /* quicktime */ > { AV_PIX_FMT_YUV420P, MKTAG('R', '4', '2', '0') }, /* Radius DV YUV PAL */ > { AV_PIX_FMT_YUV411P, MKTAG('R', '4', '1', '1') }, /* Radius DV YUV NTSC */ > diff --git a/libavformat/nut.c b/libavformat/nut.c > index 47ed152529..c69a9ab6ad 100644 > --- a/libavformat/nut.c > +++ b/libavformat/nut.c > @@ -205,6 +205,9 @@ const AVCodecTag ff_nut_video_tags[] = { > { AV_CODEC_ID_RAWVIDEO, MKTAG(0xBA, 'G', 'R', 16 ) }, > { AV_CODEC_ID_RAWVIDEO, MKTAG(16, 'R', 'G', 0xBA) }, > > + { AV_CODEC_ID_RAWVIDEO, MKTAG('P', '0', '1', '0') }, > + { AV_CODEC_ID_RAWVIDEO, MKTAG('0', '1', '0', 'P') }, > + > { AV_CODEC_ID_NONE, 0 } these are not listed in https://git.ffmpeg.org/gitweb/nut.git/blob_plain/HEAD:/docs/nut4cc.txt and i also see no suggestion to add them how could anyone be interoperable with this without them being documented ? [...]
I don't really care about your nut container, FATE just complains that something in raw.c is not in nut.c.
On Wed, Jun 02, 2021 at 07:08:24PM +0300, Valerii Zapodovnikov wrote: > I don't really care about your nut container, FATE just complains that > something in raw.c is not in nut.c. If you care about the discrepancy then you have to fix it. your patch just moves the discrepancy to be between the nut spec and nut.c Thanks [...]
The bigger problem are FATE hashes. I am not able to fill them here. As to send patches against another repo, I can do that, no problem with --subject-prefix="PATCH nut". Also, I do not see a problem with the spec, the spec says that it has priority, not the code. I am not doing this patch for nut.c, but for dshow to support HDR, but HDR signalling is PQ transfer and other patches implement reading that. I still do not know whether endianness is swapped in dshow and what sample location means for P010, BTW.
Okay, I will send a patch to just raw.c to check it out, if it will not work I will send against http://lists.mplayerhq.hu/pipermail/nut-devel/2020-December/thread.html Again, who can do FATE hashes for me? Please?
On Sat, Jun 05, 2021 at 11:29:24AM +0300, Valerii Zapodovnikov wrote: > Okay, I will send a patch to just raw.c to check it out, if it will not > work I will send against > http://lists.mplayerhq.hu/pipermail/nut-devel/2020-December/thread.html > > Again, who can do FATE hashes for me? Please? if you are asking about updating fate checksums "make fate GEN=1" should update them in theory but maybe i misunderstand the question you would after that definitly want to look at the diff before submitting it though and also checking if fate passes after it thx [...]
GEN=1 is nice, but why diff is no longer working on patchwork itself? See: https://patchwork.ffmpeg.org/check/18368/
diff --git a/libavcodec/raw.c b/libavcodec/raw.c index 079d5c5d10..7efc0156ca 100644 --- a/libavcodec/raw.c +++ b/libavcodec/raw.c @@ -224,6 +224,9 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = { { AV_PIX_FMT_BAYER_GRBG16LE, MKTAG(0xBA, 'G', 'R', 16 ) }, { AV_PIX_FMT_BAYER_GRBG16BE, MKTAG(16, 'R', 'G', 0xBA) }, + { AV_PIX_FMT_P010LE, MKTAG('P', '0', '1', '0') }, + { AV_PIX_FMT_P010BE, MKTAG('0', '1', '0', 'P') }, + /* quicktime */ { AV_PIX_FMT_YUV420P, MKTAG('R', '4', '2', '0') }, /* Radius DV YUV PAL */ { AV_PIX_FMT_YUV411P, MKTAG('R', '4', '1', '1') }, /* Radius DV YUV NTSC */ diff --git a/libavformat/nut.c b/libavformat/nut.c index 47ed152529..c69a9ab6ad 100644 --- a/libavformat/nut.c +++ b/libavformat/nut.c @@ -205,6 +205,9 @@ const AVCodecTag ff_nut_video_tags[] = { { AV_CODEC_ID_RAWVIDEO, MKTAG(0xBA, 'G', 'R', 16 ) }, { AV_CODEC_ID_RAWVIDEO, MKTAG(16, 'R', 'G', 0xBA) }, + { AV_CODEC_ID_RAWVIDEO, MKTAG('P', '0', '1', '0') }, + { AV_CODEC_ID_RAWVIDEO, MKTAG('0', '1', '0', 'P') }, + { AV_CODEC_ID_NONE, 0 } };