Baptiste Coudurier <[email protected]> added the comment:

On 03/31/2010 05:33 AM, Carl Eugen Hoyos wrote:
>
> Carl Eugen Hoyos<[email protected]>  added the comment:
>
> incoming/[Frostii]_Summer_Wars_[720p][9B12BBFA]-ffplay-desync-clip.mkv is
> another sample:
>
> ffmpeg -i \[Frostii\]_Summer_Wars_\[720p\]\[9B12BBFA\]-ffplay-desync-clip.mkv
> -acodec copy test.aac
> FFmpeg version SVN-r22741, Copyright (c) 2000-2010 the FFmpeg developers
>    built on Mar 31 2010 14:23:11 with gcc 4.4.3
>    configuration: --cc=/usr/local/gcc-4.4.3/bin/gcc --enable-gpl
>    libavutil     50.14. 0 / 50.14. 0
>    libavcodec    52.64. 0 / 52.64. 0
>    libavformat   52.59. 0 / 52.59. 0
>    libavdevice   52. 2. 0 / 52. 2. 0
>    libswscale     0.10. 0 /  0.10. 0
> [matroska @ 0x1193420]max_analyze_duration reached
> [matroska @ 0x1193420]Estimating duration from bitrate, this may be inaccurate
>
> Seems stream 0 codec frame rate differs from container frame rate: 47.95
> (48000/1001) ->  23.98 (24000/1001)
> Input #0, matroska, from
> '[Frostii]_Summer_Wars_[720p][9B12BBFA]-ffplay-desync-clip.mkv':
>    Metadata:
>      title           : [Frostii] Summer Wars
>    Duration: 00:00:32.17, start: 0.000000, bitrate: N/A
>      Chapter #0.0: start 0.000000, end 32.171000
>      Metadata:
>        title           : 00:00:00.000
>      Stream #0.0(jpn): Video: h264, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 
> 47.62
> fps, 23.98 tbr, 1k tbn, 47.95 tbc
>      Metadata:
>        title           : Video (h264)
>      Stream #0.1(jpn): Audio: aac, 48000 Hz, 5.1, s16
>      Metadata:
>        title           : Audio (AAC ch5.1)
>      Stream #0.2(eng): Subtitle: 0x0000
>      Metadata:
>        title           : English Subs (ASS)
>      Stream #0.3: Attachment: 0x0000
>      Metadata:
>        filename        : PreciousSansDemiBoldItalic.ttf
>      Stream #0.4: Attachment: 0x0000
>      Metadata:
>        filename        : PreciousSansDemiBold.ttf
> Output #0, adts, to 'test.aac':
>    Metadata:
>      encoder         : Lavf52.59.0
>      Chapter #0.0: start 0.000000, end 32.171000
>      Metadata:
>        title           : 00:00:00.000
>      Stream #0.0(jpn): Audio: aac, 48000 Hz, 5.1
>      Metadata:
>        title           : Audio (AAC ch5.1)
> Stream mapping:
>    Stream #0.1 ->  #0.0
> Press [q] to stop encoding
> [adts @ 0x11fdc90]st:0 error, non monotone timestamps 1080>= 1080
> av_interleaved_write_frame(): Operation not permitted
>

The problem is related to the timestamps interpolation of aac frames.
MKV packs audio frames in block, only the first frame has a timestamp.

The frame size is determined only after the first frame, so the first 
and the second frame share the same timestamp.

The aac frame size must be determined before the first frame, or 
updated. I'm not sure if the frame size can be computed from extradata, 
that would be easier.

________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue807>
________________________________________________

Reply via email to