GNOME Bugzilla – Bug 745927
baseparse: does not preserve discont flag
Last modified: 2015-05-04 23:13:59 UTC
Baseparse ignores DISCONT flags from upstream in forward playback. No buffers leave baseparse with the discont flag except for the first one pushed or when parsing needs to skip data to resync.
Created attachment 298931 [details] [review] tests: h264parse: test discont flag passing in h264parse Add test to check if the discont flag is preserved by h264parse
Created attachment 298934 [details] [review] baseparse: respect DISCONT flag on buffers Drain the parser when a DISCONT buffer is received and then mark the next buffer to be pushed as a DISCONT one
Would someone have some time to look at this, please?
To fully fix your issue, you might also need this patch: https://bugzilla.gnome.org/show_bug.cgi?id=738237
Thanks for the review. commit 4f4c040c02b755d9e7a3b4ab67ebb8e7c75f35d8 Author: Thiago Santos <thiagoss@osg.samsung.com> Date: Mon Mar 9 19:31:36 2015 -0300 baseparse: respect DISCONT flag on buffers Drain the parser when a DISCONT buffer is received and then mark the next buffer to be pushed as a DISCONT one https://bugzilla.gnome.org/show_bug.cgi?id=745927
push failed and I didn't notice. This is the commit that went in. commit 8641997630a9a63cc23f3e3f883496073ea61f34 Author: Thiago Santos <thiagoss@osg.samsung.com> Date: Mon Mar 9 19:31:36 2015 -0300 baseparse: respect DISCONT flag on buffers Drain the parser when a DISCONT buffer is received and then mark the next buffer to be pushed as a DISCONT one https://bugzilla.gnome.org/show_bug.cgi?id=745927
I wonder if any of the guys working on more advanced H.264 decoders will be annoyed by this as you may be able to decode frames with slices missing in that case. This is also true of VP8, but it has no parser, so in this case, it doesn't matter.
Forget what I said, I guess if alignment=nal, this is the right behavior.