codecs: h264decoder: Make get_long_ref_by_pic_num() transfer none

We don't use the extra reference, so let's just avoid the extra
ref/unref.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1238>
This commit is contained in:
Nicolas Dufresne 2020-05-08 17:56:48 -04:00 committed by Nicolas Dufresne
parent a20147f255
commit f8736626a9
2 changed files with 2 additions and 3 deletions

View file

@ -1269,7 +1269,6 @@ gst_h264_decoder_handle_memory_management_opt (GstH264Decoder * self,
ref_pic_marking->long_term_pic_num); ref_pic_marking->long_term_pic_num);
if (to_mark) { if (to_mark) {
to_mark->ref = FALSE; to_mark->ref = FALSE;
gst_h264_picture_unref (to_mark);
} else { } else {
GST_WARNING_OBJECT (self, "Invalid long term ref pic num to unmark"); GST_WARNING_OBJECT (self, "Invalid long term ref pic num to unmark");
return FALSE; return FALSE;

View file

@ -345,7 +345,7 @@ gst_h264_dpb_get_short_ref_by_pic_num (GstH264Dpb * dpb, gint pic_num)
* *
* Find a long term reference picture which has matching picture number * Find a long term reference picture which has matching picture number
* *
* Returns: (nullable) (transfer full): a #GstH264Picture * Returns: (nullable) (transfer none): a #GstH264Picture
*/ */
GstH264Picture * GstH264Picture *
gst_h264_dpb_get_long_ref_by_pic_num (GstH264Dpb * dpb, gint pic_num) gst_h264_dpb_get_long_ref_by_pic_num (GstH264Dpb * dpb, gint pic_num)
@ -359,7 +359,7 @@ gst_h264_dpb_get_long_ref_by_pic_num (GstH264Dpb * dpb, gint pic_num)
g_array_index (dpb->pic_list, GstH264Picture *, i); g_array_index (dpb->pic_list, GstH264Picture *, i);
if (picture->ref && picture->long_term && picture->pic_num == pic_num) if (picture->ref && picture->long_term && picture->pic_num == pic_num)
return gst_h264_picture_ref (picture); return picture;
} }
GST_WARNING ("No long term reference picture for %d", pic_num); GST_WARNING ("No long term reference picture for %d", pic_num);