codecs: h264dec: Fix a typo in construct_ref_field_pic_lists_b.

The array sort of ref_frame_list_0_short_term has some typo. The
typo makes this list not in the POC ascend order and generate wrong
decoding result for interlaced streams.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2425>
This commit is contained in:
He Junyan 2021-07-23 12:31:17 +08:00 committed by GStreamer Marge Bot
parent d2a7b763be
commit eef9067619

View file

@ -2619,7 +2619,8 @@ construct_ref_field_pic_lists_b (GstH264Decoder * self,
/* First sort ascending, this will put [1] in right place and finish /* First sort ascending, this will put [1] in right place and finish
* [2]. */ * [2]. */
print_ref_pic_list_b (self, priv->ref_frame_list_0_short_term, 0); print_ref_pic_list_b (self, priv->ref_frame_list_0_short_term, 0);
g_array_sort (priv->ref_pic_list_b0, (GCompareFunc) poc_asc_compare); g_array_sort (priv->ref_frame_list_0_short_term,
(GCompareFunc) poc_asc_compare);
print_ref_pic_list_b (self, priv->ref_frame_list_0_short_term, 0); print_ref_pic_list_b (self, priv->ref_frame_list_0_short_term, 0);
/* Find first with POC > current_picture's POC to get first element /* Find first with POC > current_picture's POC to get first element