On Tue, Dec 13, 2011 at 3:12 AM, Luca Barbato <[email protected]> wrote:
> On 13/12/11 08:11, Alex Converse wrote:
>>
>> The 'fiel' atoms can be found in H.264 tracks clobbering the extradata.
>> MJPEG supports non field based extradata, and this data should be
>> preserved when copying.
>> ---
>>  avconv.c              |    1 +
>>  libavcodec/avcodec.h  |   10 ++++++++++
>>  libavcodec/mjpegdec.c |   10 ++++++----
>>  libavformat/mov.c     |   24 +++++++++++++++++++++++-
>>  libavformat/movenc.c  |   12 +++++++++++-
>>  5 files changed, 51 insertions(+), 6 deletions(-)
>>
>> diff --git a/avconv.c b/avconv.c
>> index 90ed00d..3870451 100644
>> --- a/avconv.c
>> +++ b/avconv.c
>> @@ -2068,6 +2068,7 @@ static int transcode_init(OutputFile *output_files,
>>              codec->bit_rate       = icodec->bit_rate;
>>              codec->rc_max_rate    = icodec->rc_max_rate;
>>              codec->rc_buffer_size = icodec->rc_buffer_size;
>> +            codec->field_order    = icodec->field_order;
>>              codec->extradata      = av_mallocz(extra_size);
>>              if (!codec->extradata) {
>>                  return AVERROR(ENOMEM);
>> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
>> index fe65a6e..23531e1 100644
>> --- a/libavcodec/avcodec.h
>> +++ b/libavcodec/avcodec.h
>> @@ -3081,6 +3081,16 @@ typedef struct AVCodecContext {
>>       * libavcodec functions.
>>       */
>>      struct AVCodecInternal *internal;
>> +
>> +    /** Field order
>> +     * 0x0000 - unset
>> +     * 0x0100 - progressive scan
>> +     * 0x0201 - top displayed first, top coded first
>> +     * 0x0206 - bottom displayed first, bottom coded first
>> +     * 0x0209 - top coded first, bottom displayed first
>> +     * 0x020E - bottom coded first, top displayed first
>> +     */
>> +    unsigned field_order;
>
>
> Could be made an enum?
>

It could but that would mean behavioral changes in the MJPEG decoder
who only looks at the second byte. Flags are possible but then we lose
unknown values.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to