On 06/03/14 07:59, Anton Khirnov wrote:
> 
> On Wed,  5 Mar 2014 23:26:24 +0100, Luca Barbato <[email protected]> wrote:
>> From: Matthieu Bouron <[email protected]>
>>
>> Signed-off-by: Luca Barbato <[email protected]>
>> ---
>>  libavformat/mxf.c | 40 ++++++++++++++++++++++++++++++++++++++++
>>  libavformat/mxf.h |  7 +++++++
>>  2 files changed, 47 insertions(+)
>>
>> diff --git a/libavformat/mxf.c b/libavformat/mxf.c
>> index d3798cd..e99f31a 100644
>> --- a/libavformat/mxf.c
>> +++ b/libavformat/mxf.c
>> @@ -106,3 +106,43 @@ int ff_mxf_decode_pixel_layout(const char 
>> pixel_layout[16], enum AVPixelFormat *
>>  
>>      return -1;
>>  }
>> +
>> +static const MXFSamplesPerFrame mxf_spf[] = {
>> +    { { 1001, 24000 }, { 2002, 0,    0,    0,    0,    0 } }, // FILM 23.976
>> +    { { 1, 24},        { 2000, 0,    0,    0,    0,    0 } }, // FILM 24
>> +    { { 1001, 30000 }, { 1602, 1601, 1602, 1601, 1602, 0 } }, // NTSC 29.97
>> +    { { 1001, 60000 }, { 801,  801,  801,  801,  800,  0 } }, // NTSC 59.94
>> +    { { 1, 25 },       { 1920, 0,    0,    0,    0,    0 } }, // PAL 25
>> +    { { 1, 50 },       { 960,  0,    0,    0,    0,    0 } }, // PAL 50
>> +};
>> +
>> +static const AVRational mxf_time_base[] = {
>> +    { 1001, 24000 },
>> +    { 1, 24},
>> +    { 1001, 30000 },
>> +    { 1001, 60000 },
>> +    { 1, 25 },
>> +    { 1, 50 },
>> +    { 0, 0}
>> +};
>> +
>> +const MXFSamplesPerFrame *ff_mxf_get_samples_per_frame(AVFormatContext *s,
>> +                                                       AVRational time_base)
>> +{
>> +    int idx = av_find_nearest_q_idx(time_base, mxf_time_base);
>> +    AVRational diff = av_sub_q(time_base, mxf_time_base[idx]);
>> +
>> +    diff.num = abs(diff.num);
>> +
>> +    if (av_cmp_q(diff, (AVRational){1, 1000}) < 0)
> 
> Shouldn't this be '>' ?
> 

Right, updated.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to