[Ffmpeg-devel] Re: [PATCH] x264 avc encoding, movenc avcC, ctts (original) (raw)

Michael Niedermayer michaelni
Mon Feb 20 19:48:33 CET 2006


Hi

On Mon, Feb 20, 2006 at 06:53:53PM +0100, Baptiste COUDURIER wrote:

Michael Niedermayer wrote: > [...] > > > use trk->cluster[cl][id].cts= (pkt->pts - pkt->dts) * enc->timebase.num; >

Humm. Here is what I get: from generated sample (using pkt->pts - pkt->dts) * enc->timebase.num timescale : 25 stts : count 22 duration 1 count 1, duration 3600 count 1, duration 10800 count 2, duration 0 count 1, duration 10800 count 2, duration 0 count 1, duration 10800 count 2, duration 0 count 1, duration 7200 count 1, duration 0 count 1, duration 3600 count 1, duration 10800 count 2, duration 0 count 1, duration 10800 ... from H264GOP125.mp4 generated by FCP: timescale : 2500 stts : count 201 duration 100 count 1, duration 100 count 1, duration 200 count 1, duration 0 count 1, duration 200 count 1, duration 0 count 1, duration 200 count 1, duration 0 count 1, duration 200 count 1, duration 0 count 1, duration 200 count 1, duration 0 ... pkt->dts - pkt->pts is a multiple of pkt->duration, the latter being 3600. If I rescale I will get the right values. I must be missing something.

no, movenc.c is missing something av_set_pts_info(s->streams[i], 64, 1, timescale); and then trk->cluster[cl][id].cts= pkt->pts - pkt->dts; should work

if not, tell me what happens ...

[...]

-- Michael



More information about the ffmpeg-devel mailing list