cudacodec::VideoWriter add flag for writing full range luma chroma video#3868
Conversation
dacc035 to
c8ff1a7
Compare
|
@asmorkalov I've added a warning when the codec is not h264 or h265. Note: Because I can't test AV1 encoding (I don't have access to a card with 8th Gen NVDEC) the cudacodec module does not currently support AV1 encoding. This is why I haven't also added AV1 support for the |
|
You actually can submit the PR with GF 4x support. I have a device for test. |
|
That's good to know although I'll need access to one first to test everything locally first before submitting a PR. |
… the yuv frames passed to VideoWriter occupy the full or limited range as defined by the Annex E of the ITU-T Specification.
|
@cudawarped There is conflict with the previous PR please rebase. Also |
|
@asmorkalov Correct, I copied the name from the SDK where its a flag ( For consistency should I also rename it in |
|
|
|
Oh, got the issue. Let it be videoFullRangeFlag everywhere to not break code and confuse users. |
c8ff1a7 to
b4a91cd
Compare
Currently the meta data in all encoded video's is not updated to reflect the range (full of limited as defined in Annex E of the ITU-T Specification) of encoded luma/chroma values. With all video's indicating that they use the limited range. This means that when a full range YUV source is encoded the decoder will incorrectly decode it to a limited range resulting in poor color reproduction.
This PR correctly sets this meta data field for all encoded video's.
Pull Request Readiness Checklist
See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request
Patch to opencv_extra has the same branch name.