codecparsers: h264: fix pred_weight_table() parsing.

Use 16-bit signed integer values for weight values because valid
ranges are -128 to +128 inclusive.
This commit is contained in:
Gwenole Beauchesne 2011-08-16 16:19:02 +02:00 committed by Edward Hervey
parent 4bacba620f
commit 621fd01281
2 changed files with 10 additions and 8 deletions

View file

@ -827,6 +827,7 @@ gst_h264_slice_parse_pred_weight_table (GstH264SliceHdr * slice,
NalReader * nr, guint8 chroma_array_type)
{
GstH264PredWeightTable *p;
gint16 default_luma_weight, default_chroma_weight;
gint i;
GST_DEBUG ("parsing \"Prediction weight table\"");

View file

@ -474,19 +474,20 @@ struct _GstH264PredWeightTable
guint8 luma_log2_weight_denom;
guint8 chroma_log2_weight_denom;
guint8 luma_weight_l0[32];
guint8 luma_offset_l0[32];
gint16 luma_weight_l0[32];
gint8 luma_offset_l0[32];
/* if seq->ChromaArrayType != 0 */
guint8 chroma_weight_l0[32][2];
guint8 chroma_offset_l0[32][2];
gint16 chroma_weight_l0[32][2];
gint8 chroma_offset_l0[32][2];
/* if slice->slice_type % 5 == 1 */
guint8 luma_weight_l1[32];
guint8 luma_offset_l1[32];
gint16 luma_weight_l1[32];
gint8 luma_offset_l1[32];
/* and if seq->ChromaArrayType != 0 */
guint8 chroma_weight_l1[32][2];
guint8 chroma_offset_l1[32][2];
gint16 chroma_weight_l1[32][2];
gint8 chroma_offset_l1[32][2];
};
struct _GstH264RefPicMarking