Commit 621fd012 authored by Gwenole Beauchesne's avatar Gwenole Beauchesne Committed by Edward Hervey

codecparsers: h264: fix pred_weight_table() parsing.

Use 16-bit signed integer values for weight values because valid
ranges are -128 to +128 inclusive.
parent 4bacba62
...@@ -827,6 +827,7 @@ gst_h264_slice_parse_pred_weight_table (GstH264SliceHdr * slice, ...@@ -827,6 +827,7 @@ gst_h264_slice_parse_pred_weight_table (GstH264SliceHdr * slice,
NalReader * nr, guint8 chroma_array_type) NalReader * nr, guint8 chroma_array_type)
{ {
GstH264PredWeightTable *p; GstH264PredWeightTable *p;
gint16 default_luma_weight, default_chroma_weight;
gint i; gint i;
GST_DEBUG ("parsing \"Prediction weight table\""); GST_DEBUG ("parsing \"Prediction weight table\"");
......
...@@ -474,19 +474,20 @@ struct _GstH264PredWeightTable ...@@ -474,19 +474,20 @@ struct _GstH264PredWeightTable
guint8 luma_log2_weight_denom; guint8 luma_log2_weight_denom;
guint8 chroma_log2_weight_denom; guint8 chroma_log2_weight_denom;
guint8 luma_weight_l0[32]; gint16 luma_weight_l0[32];
guint8 luma_offset_l0[32]; gint8 luma_offset_l0[32];
/* if seq->ChromaArrayType != 0 */ /* if seq->ChromaArrayType != 0 */
guint8 chroma_weight_l0[32][2]; gint16 chroma_weight_l0[32][2];
guint8 chroma_offset_l0[32][2]; gint8 chroma_offset_l0[32][2];
/* if slice->slice_type % 5 == 1 */ /* if slice->slice_type % 5 == 1 */
guint8 luma_weight_l1[32]; gint16 luma_weight_l1[32];
guint8 luma_offset_l1[32]; gint8 luma_offset_l1[32];
/* and if seq->ChromaArrayType != 0 */ /* and if seq->ChromaArrayType != 0 */
guint8 chroma_weight_l1[32][2]; gint16 chroma_weight_l1[32][2];
guint8 chroma_offset_l1[32][2]; gint8 chroma_offset_l1[32][2];
}; };
struct _GstH264RefPicMarking struct _GstH264RefPicMarking
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment