[FFmpeg-devel] [PATCH][VAAPI][6/6] Add H.264 bitstream decoding (take 7)
Sat Apr 18 02:18:08 CEST 2009
On Fri, Apr 17, 2009 at 10:05:30AM +0200, Gwenole Beauchesne wrote:
> On Fri, 17 Apr 2009, Michael Niedermayer wrote:
>>>>> + pic_param->bit_depth_luma_minus8 =
>>>>> h->sps.bit_depth_luma >= 8 ? h->sps.bit_depth_luma - 8 : 0;
>>>>> + pic_param->bit_depth_chroma_minus8 =
>>>>> h->sps.bit_depth_chroma >= 8 ? h->sps.bit_depth_chroma - 8 : 0;
>>>> it cant be smaller 8 (not counting overflows on broken streams)
>>> Mmmm, I think I had a case where it was needed, I will check again with
>>> samples tomorrow.
> It works so far, so let's just stick to this newer patch.
>>> + assert(dpb->size < dpb->max_size);
>>> + vaapi_h264_fill_picture(&dpb->pics[dpb->size++], ff_pic, 0);
>> i think this assert should be a hard check as its failure looks
> OK, changed that function return value to int and propagated it to
>>> + *p_luma_weight_flag = h->luma_weight_flag[list];
>>> + *p_chroma_weight_flag = h->chroma_weight_flag[list];
>> and whats the sense of this double indirection?!
> For code simplification but it seems to be a failure. ;-) So, I have now
> written a specific function, as in the new attachment. WDYT?
> +static void dpb_init(DPB *dpb, VAPictureH264 *pics, unsigned int max_size)
> + unsigned int i;
> + dpb->size = 0;
> + dpb->max_size = max_size;
> + dpb->pics = pics;
> + for (i = 0; i < dpb->max_size; i++)
> + vaapi_h264_init_picture(&dpb->pics[i]);
you could inline this, its small its caller is small and its used just once
> + unsigned char *luma_weight_flag,
> + short luma_weight,
> + short luma_offset,
> + unsigned char *chroma_weight_flag,
> + short chroma_weight,
> + short chroma_offset)
> + const int luma_def = 1 << h->luma_log2_weight_denom;
> + const int chroma_def = 1 << h->chroma_log2_weight_denom;
they are just used once and not in any complex code
also maybe you could add a single sentance to each function to describe
what it does.
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
I have often repented speaking, but never of holding my tongue.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: Digital signature
More information about the ffmpeg-devel