[FFmpeg-devel] [PATCH] support for flvtool2 "keyframes based" generated index in FLV format decoder

Vladimir Pantelic vladoman
Wed Feb 2 13:44:51 CET 2011


Kharkov Alexander wrote:
>>  why do that? I can understand to seek back to the old position if the
>>  index parsing gave errors, but in case of success why read the
>>  same data again?
>
> Almost all comments processed new patch attached.
> Following not process:
>>>  Index: libavformat/flvdec.c
>>>  ===================================================================
>>>  --- libavformat/flvdec.c        (revision 26402)
>>>  +++ libavformat/flvdec.c        (working copy)
>>>  +
>>>  +        for (i = 0; i<    arraylen&&    url_ftell(ioc)<    max_pos - 1; i++) {
>>
>>  nit: please give operators room the breathe and drop the double spaces
> Actually my English is not good, so I do not understand what do you
> mean, I did not find any two sequential spaces in this line, but
> anyway I format this line to look the same as other lines in this .c
> file (so this line fit at least to this file "codestyle" now).

forget it, I need to kill my mail client ... :)

>>
>>>  +            amf_type = get_byte(ioc);
>>>  +            if (amf_type != AMF_DATA_TYPE_NUMBER)
>>>  +                return;
>>>  +            num_val = av_int2dbl(get_be64(ioc));
>>>  +            (*current_array)[i] = num_val;
>>>  +        }
>>>  +    }
>>>  +    if (timeslen != fileposlen)
>>>  +        // times->filepositions arrays have different size, will not use
>>>  such metadata for indexing
>>
>>  obvious, no?
> Not obvious 'keyframes' metatag is not part of standart it is just
> convention to use such kind of metatag information for indexing, but
> nobody can prevent end user to create FLV file with keyframes metadata
> with it's own structure, for own purposed, in that case I try just
> ignore such data not coredump trying to access data which does not
> present. I want prevent crushed on expected structure. I compare two
> sizes because they packet in two different arrays in metadata,
> that is why they can have different sizes in case of bug in tool which
> insert metatags for example.
> JFYI strructure is following, it allows to have it inconsistent:
> keyframes:
>     times (array):
>         time0 (num)
>         time1 (num)
>         time2 (num)
>     filepositions (array)
>         position0 (num)
>         position1 (num)
>>

okok, leave the comment then





More information about the ffmpeg-devel mailing list