diff options
author | Nicolas Dufresne <nicolas.dufresne@collabora.com> | 2020-05-13 17:23:12 -0400 |
---|---|---|
committer | Nicolas Dufresne <nicolas@ndufresne.ca> | 2020-05-19 16:57:09 +0000 |
commit | 540c287a73ce526ac1ce17ac67ca5d36470dbe0c (patch) | |
tree | e1fde3a93140f516c21ad1432596f35221fbbd37 /gst-libs/gst/codecparsers | |
parent | d062677b3fb0a3acbb1feebb1f55c41227547fc7 (diff) | |
download | gstreamer-plugins-bad-540c287a73ce526ac1ce17ac67ca5d36470dbe0c.tar.gz |
codecparsers: h264: Only set relevant default weight values
This is minor optimization to avoid setting values we don't need. It also
makes debugging easier since only relevant values a non-zero now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1238>
Diffstat (limited to 'gst-libs/gst/codecparsers')
-rw-r--r-- | gst-libs/gst/codecparsers/gsth264parser.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c index a7ddad4b6..1c40b6517 100644 --- a/gst-libs/gst/codecparsers/gsth264parser.c +++ b/gst-libs/gst/codecparsers/gsth264parser.c @@ -773,10 +773,10 @@ gst_h264_slice_parse_pred_weight_table (GstH264SliceHdr * slice, READ_UE_MAX (nr, p->luma_log2_weight_denom, 7); /* set default values */ default_luma_weight = 1 << p->luma_log2_weight_denom; - for (i = 0; i < G_N_ELEMENTS (p->luma_weight_l0); i++) + for (i = 0; i <= slice->num_ref_idx_l0_active_minus1; i++) p->luma_weight_l0[i] = default_luma_weight; if (GST_H264_IS_B_SLICE (slice)) { - for (i = 0; i < G_N_ELEMENTS (p->luma_weight_l1); i++) + for (i = 0; i <= slice->num_ref_idx_l1_active_minus1; i++) p->luma_weight_l1[i] = default_luma_weight; } @@ -784,12 +784,12 @@ gst_h264_slice_parse_pred_weight_table (GstH264SliceHdr * slice, READ_UE_MAX (nr, p->chroma_log2_weight_denom, 7); /* set default values */ default_chroma_weight = 1 << p->chroma_log2_weight_denom; - for (i = 0; i < G_N_ELEMENTS (p->chroma_weight_l0); i++) { + for (i = 0; i <= slice->num_ref_idx_l0_active_minus1; i++) { p->chroma_weight_l0[i][0] = default_chroma_weight; p->chroma_weight_l0[i][1] = default_chroma_weight; } if (GST_H264_IS_B_SLICE (slice)) { - for (i = 0; i < G_N_ELEMENTS (p->chroma_weight_l1); i++) { + for (i = 0; i <= slice->num_ref_idx_l0_active_minus1; i++) { p->chroma_weight_l1[i][0] = default_chroma_weight; p->chroma_weight_l1[i][1] = default_chroma_weight; } |