[RFC] avcodec/cavs: bugfixes and AVS1-P16 (AVS+) decoding
Rainbaby via ffmpeg-devel <[email protected]>
| Newsgroups | gmane.comp.video.ffmpeg.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, I have a working AVS1-P16 decoder on top of the existing cavs decoder. AVS1-P16 is profile_id 0x48, CAVS_PROFILE_GUANGDIAN in cavsvideodec.c. Its official name in the standard is the Broadcasting profile, and the common name is AVS+. It is the profile that Chinese DTMB terrestrial broadcast actually uses. The new code adds the AEC macroblock layer, annex A de-emulation and field pictures. I wrote it from the published standards, mainly GY/T 257.1-2012, with GB/T 20090.16-2016 and IEEE 1857-2023 to cross-check the places where the texts disagree. A closed decoder for this format can be found in the wild, and I used it only to check the result. I compared decoded frames, and the output is bit exact on everything I have here. I never looked inside it, and no code came from any existing implementation. This is my first contribution here, so I want to ask two things before I send anything, and I will follow what the project prefers. I have ~24 commits and plan to open a PR on code.ffmpeg.org. Half are JiZhun bug fixes with no API change, for example an int16_t overflow in the qpel filter that changes 51 of 60 frames of the bunny sample; one of them also closes trac #3885. The other half add the profile, do not apply without the fixes, and close trac #6948. Should it be one PR or two? The FATE suite has no AVS1-P16 sample now. I have a ~228 KB cut of a 1080i test card recorded from Beijing DTMB broadcast (only a test card, no program content), and a framecrc test for it. Is this sample OK for the fate-suite, and how can it get uploaded? I sent a subscribe mail to samples-request before but got no reply. If there is no better way, I will try to attach the file to the PR, so the CI can run the test. Thanks, Rainbaby _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]