Hi James, Thanks for the suggestion. Now the vvcdec decoder is workable. The md5 is matched with the vvdecapp. I am working on the conformance test. Hope I can send the patch later. thanks
On Thu, Dec 17, 2020 at 4:56 AM James Almer <jamr...@gmail.com> wrote: > On 12/15/2020 10:43 AM, Nuo Mi wrote: > > On Tue, Dec 15, 2020 at 4:44 AM Mark Thompson <s...@jkqxz.net> wrote: > > > >> On 14/12/2020 13:31, Nuo Mi wrote: > >>> Hi Mark, > >>> I have almost done the cbs for sps, pps, and slice header. I will start > >> to > >>> implement the parser. > >> > >> This looks fun :) > >> > >>> Few questions for you: > >>> 1. We need over-read some nals to detect the frame boundaries. But > those > >>> nals may switch/replace sps/pps. Do we need to use an output cbs and > get > >>> frames from the output cbs? > >> > >> I'm not seeing where this can happen - if you see a new parameter set > then > >> you must be in a new AU so you don't parse it, while a new VCL NAL as > part > >> of a new frame with no PS before it must have a parsable header? (Or > am I > >> missing some problematic case?) > >> > > > >>> 2. We can't handle an incompleted nal in current cbs. > >>> > >> > https://github.com/FFmpeg/FFmpeg/blob/03c8fe49ea3f2a2444607e541dff15a1ccd7f0c2/libavcodec/h2645_parse.c#L437 > >> , > >>> do we have a plan to fix it? What's your suggstion for the frame split? > >> > >> I'm unsure what the question is. You will always need to keep reading > >> until you split a valid NAL unit which isn't in the current AU (noting > that > >> a slice is the last slice in the current frame is never sufficient, > because > >> suffixes might follow). > >> > >> I want to feed the input buffer to cbs and get nal units from it. Seems > it > > does not work like this. > > We still need a frame split in the parser. And feed the entire frame to > > cbs. > > The parser is meant to look byte by byte until it has found enough data > to complete an entire Access Unit worth of NALUs. > See how hevc does it in > > https://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/hevc_parser.c;h=463d352055b971bdcc27a27b3fcd7aa4b609286e;hb=HEAD#l261 > > > Once the delimitation of an AU is found, then the resulting buffer can > be parsed (In VVC's case, we want that to be done by CBS) and ultimately > propagated so the generic demux code in libavformat can create complete > packets. > > > > > > >>> 3. How to well test the cbs? > >> > >> Passthrough is the best initial test, by making an h266_metadata bsf > (even > >> if it has no options). The existing test coverage in FATE of CBS is > >> primarily driven by this - for H.26[45], the input streams there are a > >> subset of the H.26[45].1 conformance test streams chosen to cover as > much > >> of the header space as possible. > >> > >> I recommend enabling the write support ASAP (by adding the second > include > >> of cbs_h266_syntax_template.c), because the double build can shake out > >> other problems too. > >> > >> My original plan is cbs->parser->vvdec decoder->60% comfornace passrate > -> > > check in -> h266_metadata. > > are you suggest we implement h266_metadata firstly? > > > > thanks > > > > Thanks, > >> > >> - Mark > >> _______________________________________________ > >> ffmpeg-devel mailing list > >> ffmpeg-devel@ffmpeg.org > >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > >> > >> To unsubscribe, visit link above, or email > >> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". > > _______________________________________________ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > > To unsubscribe, visit link above, or email > > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". > > > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".