oggdemux: vp8: Detect keyframe packets
authorPhilippe Normand <philn@igalia.com>
Sat, 27 May 2023 12:06:22 +0000 (13:06 +0100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 1 Jun 2023 17:00:44 +0000 (17:00 +0000)
commitda024361937704db99a515f375ed706461d17a87
tree3a4a02e35721f43a27c389c073aa46222fbbd8eb
parent781606c9769649c94713b189d102d94858b644f5
oggdemux: vp8: Detect keyframe packets

decodebin3 drops data on video streams until a keyframe or header is detected,
so for Ogg/VP8 we now need to correctly flag and signal keyframes downstream.
The first buffer pushed from each src pad also has the HEADER flag set.

Fixes playback of
https://github.com/web-platform-tests/wpt/raw/master/media/test.ogv in playbin3.

Fixes #1418

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4745>
subprojects/gst-integration-testsuites/testsuites/validate.testslist
subprojects/gst-integration-testsuites/testsuites/validate/playbin3/ogv_vp8.validatetest [new file with mode: 0644]
subprojects/gst-plugins-base/ext/ogg/gstoggdemux.c
subprojects/gst-plugins-base/ext/ogg/gstoggdemux.h
subprojects/gst-plugins-base/ext/ogg/gstoggstream.c