[FFmpeg-devel] [PATCH v2 3/3] lavc/libdavs2: correct frame type setting

Huiwen Ren hwrenx at 126.com
Thu Nov 1 05:19:27 EET 2018










At 2018-11-01 08:40:50, "Carl Eugen Hoyos" <ceffmpeg at gmail.com> wrote:
>2018-10-31 23:15 GMT+01:00, Mark Thompson <sw at jkqxz.net>:
>> On 31/10/18 10:23, hwren wrote:
>
>>> +    switch (pic->type) {
>>> +        case DAVS2_PIC_I:
>>> +            frame->pict_type = AV_PICTURE_TYPE_I;
>>> +            break;
>>> +        case DAVS2_PIC_P:
>>> +            frame->pict_type = AV_PICTURE_TYPE_P;
>>> +            break;
>>> +        case DAVS2_PIC_B:
>>> +        case DAVS2_PIC_F:
>>> +            frame->pict_type = AV_PICTURE_TYPE_B;
>>> +            break;
>>> +        default:
>>> +            frame->pict_type = AV_PICTURE_TYPE_NONE;
>>
>> Are there any types which aren't already handled?  If there aren't
>> then this would probably be better as an assert.
>
>Since this is an external library, an assert would be wrong.
>
>I wanted to suggest an error message or a negative return value.

Actually, there are six types of frames defined by AVS2 standard: 

DAVS2_PIC_I , DAVS2_PIC_P, DAVS2_PIC_B
DAVS2_PIC_G, DAVS2_PIC_F ,DAVS2_PIC_S
(the DAVS2_PIC_S is not exactly the same thing as AV_PICTURE_TYPE_S)

While in this patch I may make a wrong classification. Every frame in davs2 has its same/similar type in ffmpeg.
So maybe it's better to set the  unhandled-type to an error assert.

Thanks :-)

>
>Carl Eugen
>_______________________________________________
>ffmpeg-devel mailing list
>ffmpeg-devel at ffmpeg.org
>http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list