[FFmpeg-devel] [PATCH] lavc/dnxhddata: fix bitrates for cid 1251 and 1252 in cid table

Tim Nicholson nichot20 at yahoo.com
Tue Jan 22 16:04:48 CET 2013


On 22/01/13 13:34, Matthieu Bouron wrote:
> On Tue, Jan 22, 2013 at 2:18 PM, Tim Nicholson <nichot20 at yahoo.com> wrote:
>> On 21/01/13 20:14, Matthieu Bouron wrote:
>>> ---
>>>
>>> Hi there,
>>>
>>> According to SMPTE S2019-1, bitrates should be:
>>>   - 180Mbps for cid 1251 at 50fps,
>>>   - 120Mbps for cid 1252 at 50fps.
>>
>> Looking at Annex F in my SMPTE S2019-1-2008 suggests 25fps figures are
>> wrong too..
>>
>> cid 1251 is { 90, 80, 180, 220 }
>> cid 1252 is { 60, 60, 120, 145 }
>>
> 
> The 75Mbps value "may" refer to the 29.97fps profile (which is
> declared here: http://www.avid.com/static/resources/FR/documents/dnxhd.pdf
> but not in the S2019). The single 60Mbps value refers here to the
> 23.976fps and 25fps profiles (this is how i understand it).


So the original values are based on Avid's spec (although the 75 should
be 72), and you want to change some of them to conform to SMPTE VC3 spec?

It is unhelpful that the values sources are not documented, since you
were quoting SMPTE I assumed the values that I suggested also needed a
tweak were for 25fps since 29.97fps does not exist in the cid's under
discussion...

What is your thinking behind having values that appear to be drawn from
two different specification sources? Is this wise?

VC3 and DNX do have one or two discrepancies between them, this looks
like another.

> 
> I have an upcoming patch which associate bitrate and framerate values
> (in order to print valid dnxhd profiles if the codec parameters are
> wrong).

Which is a good thing....

> 
> Regards,
> Matthieu
> 
>> Rounded to the nearest 5Mbps....
>>
>>>
>>> Regards,
>>> Matthieu
>>>
>>> ---
>>>  libavcodec/dnxhddata.c | 4 ++--
>>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/libavcodec/dnxhddata.c b/libavcodec/dnxhddata.c
>>> index c433d9d..c9d82c8 100644
>>> --- a/libavcodec/dnxhddata.c
>>> +++ b/libavcodec/dnxhddata.c
>>> @@ -1001,14 +1001,14 @@ const CIDEntry ff_dnxhd_cid_table[] = {
>>>        dnxhd_1251_ac_codes, dnxhd_1251_ac_bits, dnxhd_1251_ac_level,
>>>        dnxhd_1251_ac_flags,
>>>        dnxhd_1251_run_codes, dnxhd_1251_run_bits, dnxhd_1251_run,
>>> -      { 90, 110, 175, 220 } },
>>> +      { 90, 110, 180, 220 } },
>>>      { 1252, 1280,  720, 0, 303104, 303104, 4, 8, 5,
>>>        dnxhd_1252_luma_weight, dnxhd_1252_chroma_weight,
>>>        dnxhd_1252_dc_codes, dnxhd_1252_dc_bits,
>>>        dnxhd_1252_ac_codes, dnxhd_1252_ac_bits, dnxhd_1252_ac_level,
>>>        dnxhd_1252_ac_flags,
>>>        dnxhd_1251_run_codes, dnxhd_1251_run_bits, dnxhd_1251_run,
>>> -      { 60, 75, 115, 145 } },
>>> +      { 60, 75, 120, 145 } },
>>>      { 1253, 1920, 1080, 0, 188416, 188416, 4, 8, 3,
>>>        dnxhd_1237_luma_weight, dnxhd_1237_chroma_weight,
>>>        dnxhd_1237_dc_codes, dnxhd_1237_dc_bits,
>>>
>>[..]


-- 
Tim


More information about the ffmpeg-devel mailing list