diff options
author | He Junyan <junyan.he@intel.com> | 2021-07-29 21:30:32 +0800 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2021-08-12 07:41:28 +0000 |
commit | 70ce2327d0dc10941eafe01a39cb3dc6d776a800 (patch) | |
tree | f5376977aee20cc35e3fb211cf247c53e38a7313 /gst-libs | |
parent | 2505ab17e98eb6343ceae0e6fb7e130a90ec34f0 (diff) | |
download | gstreamer-plugins-bad-70ce2327d0dc10941eafe01a39cb3dc6d776a800.tar.gz |
codecs: h264dec: Output the picture directly if already a frame.
We forget one case that is the frame and field pictures may be mixed
together. For this case, the dpb is interlaced while the last picture
may be a complete frame. We do not need to cache that complete picture
and should output it directly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2448>
Diffstat (limited to 'gst-libs')
-rw-r--r-- | gst-libs/gst/codecs/gsth264decoder.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gst-libs/gst/codecs/gsth264decoder.c b/gst-libs/gst/codecs/gsth264decoder.c index f179be41a..263289688 100644 --- a/gst-libs/gst/codecs/gsth264decoder.c +++ b/gst-libs/gst/codecs/gsth264decoder.c @@ -724,7 +724,7 @@ output_picture_directly (GstH264Decoder * self, GstH264Picture * picture) GstH264Picture *out_pic = NULL; gboolean ret = TRUE; - if (!gst_h264_dpb_get_interlaced (priv->dpb)) { + if (GST_H264_PICTURE_IS_FRAME (picture)) { g_assert (priv->last_field == NULL); out_pic = g_steal_pointer (&picture); ret = TRUE; |