mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 11:45:25 +00:00
codecs: vp9decoder: Don't check codec change with show_existing_frame
Show existing frame will zero frame_type value but it doesn't mean it's keyframe. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2112>
This commit is contained in:
parent
24eda30bd7
commit
771326a0fb
1 changed files with 3 additions and 1 deletions
|
@ -297,7 +297,8 @@ gst_vp9_decoder_handle_frame (GstVideoDecoder * decoder,
|
|||
goto unmap_and_error;
|
||||
}
|
||||
|
||||
if (priv->wait_keyframe && frame_hdr.frame_type != GST_VP9_KEY_FRAME) {
|
||||
if (priv->wait_keyframe && (frame_hdr.frame_type != GST_VP9_KEY_FRAME
|
||||
|| frame_hdr.show_existing_frame)) {
|
||||
GST_DEBUG_OBJECT (self, "Drop frame before initial keyframe");
|
||||
gst_buffer_unmap (in_buf, &map);
|
||||
|
||||
|
@ -307,6 +308,7 @@ gst_vp9_decoder_handle_frame (GstVideoDecoder * decoder,
|
|||
}
|
||||
|
||||
if (frame_hdr.frame_type == GST_VP9_KEY_FRAME &&
|
||||
!frame_hdr.show_existing_frame &&
|
||||
!gst_vp9_decoder_check_codec_change (self, &frame_hdr)) {
|
||||
GST_ERROR_OBJECT (self, "codec change error");
|
||||
goto unmap_and_error;
|
||||
|
|
Loading…
Reference in a new issue