[FFmpeg-devel] [PATCH] mov.c: Use dimensions from tkhd
Baptiste Coudurier
baptiste.coudurier
Sun Jan 11 13:15:04 CET 2009
David Conrad wrote:
> On Jan 11, 2009, at 2:54 AM, Baptiste Coudurier wrote:
>
>> David Conrad wrote:
>>> Hi,
>>>
>>> This sets the codec dimensions to what's set in in the tkhd. This is
>>> useful for timed text because their dimensions are independent of video
>>> tracks and this is the only place they're stored. This shouldn't affect
>>> video since it'll later be overridden when reading the stsd.
>>>
>>> --- a/libavformat/mov.c
>>> +++ b/libavformat/mov.c
>>> @@ -1510,6 +1510,9 @@ static int mov_read_tkhd(MOVContext *c,
>>> ByteIOContext *pb, MOVAtom atom)
>>> width = get_be32(pb); // 16.16 fixed point track width
>>> height = get_be32(pb); // 16.16 fixed point track height
>>>
>>> + st->codec->width = width >> 16;
>>> + st->codec->height = height >> 16;
>>> +
>>> //transform the display width/height according to the matrix
>>> // skip this if the display matrix is the default identity matrix
>>> // to keep the same scale, use [width height 1<<16]
>>>
>>
>> Humm, code will be lost here IMHO, I'd rather put fields in
>> MOVStreamContext and set them only for subs in read_stsd to avoid side
>> effects, future misbehaviour.
>
> How's this?
>
>
> ------------------------------------------------------------------------
>
> commit f3770486557a56b39cbabc274e864be8f5e21a72
> Author: David Conrad <davedc at Kozue.local>
> Date: Sun Jan 11 01:45:15 2009 -0500
>
> Use the dimensions in tkhd for timed text tracks
>
> diff --git a/libavformat/mov.c b/libavformat/mov.c
> index ed027db..c488bf8 100644
> --- a/libavformat/mov.c
> +++ b/libavformat/mov.c
> @@ -134,6 +134,8 @@ typedef struct MOVStreamContext {
> MOVDref *drefs;
> int dref_id;
> int wrong_dts; ///< dts are wrong due to negative ctts
> + int width;
> + int height;
> } MOVStreamContext;
///< tkhd width/height
Except this I think the patch is ok.
[...]
--
Baptiste COUDURIER GnuPG Key Id: 0x5C1ABAAA
Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
checking for life_signs in -lkenny... no
More information about the ffmpeg-devel
mailing list