[Bug 796519] Add AV1 codec parser

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Jul 11 22:19:52 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=796519

--- Comment #22 from sreerenj <bsreerenj at gmail.com> ---
(In reply to Georg Ottinger from comment #21)
> I also try to imagine what possible combinations of OBU compositions the
> parser should be able to handle:
> 
> 1. The first frame in a Sequence might look like this:
>  
> * Temp Delimiter OBU
> * Sequence OBU
> * Frame OBU
>  
> 2. Following frames in its simplest form may look like this
>  
> * Temp Delimiter OBU
> * Frame OBU
>  
> 3. The Superframe / B-Frame like case may look like this
>  
> * Temp Delimiter OBU
> * Frame 1 OBU
> * Frame 2 OBU
>  
> 4. The parallel encoded / tile groups individuall decodable case may look
> like this
>  
> * Temp Delimiter OBU
> * Frame Header OBU
> * Tile Group 1 OBU
> ...
> * Tile Group N OBU
>  
> 5. combining case 3 and 4 i might get a structure similar to this one:
>  
> * Temp Delimiter OBU
> * Frame Header 1 OBU
> * Tile Group 1.1 OBU
> ...
> * Tile Group 1.N OBU
>  
> * Frame Header 2 OBU
> * Tile Group 2.1 OBU
> ...
> * Tile Group 2.N OBU
>  
> Note: All the above cases may be even more advanced by adding Metadata
> and/or Tile Info OBUs
> 
> -> Should the goal of the codecparser library be one superfunction capable
> of parsing all variations of OBU compositions (within a temporal unit)?

The question is whether AV1 allows the existence of individual OBUs (eg:
sending only a tile group as an rtp packet)?
If the answer is "YES", it may make sense to add individual parsing APIs for
each OBUs. But it requires packetization stuff similar to H264. Probably an API
for parsing the OBU header, then based on obu header type, user invoke
individual APIs.
But if the answer is "NO", a single API should be enough IMHO.

Not sure whether I'm missing something, but so far everything looks very
similar to VP9 and I prefer following the same structure (single API) for AV1
too.
Let's wait for suggestions from other developers before proceeding with a
patch.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list