Opened 12 years ago

Closed 12 years ago

#1435 closed defect (fixed)

Remuxing aac from mov to avi breaks timestamps

Reported by: feelart Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: avi aac desync
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description (last modified by Carl Eugen Hoyos)

FFmpeg 0.11.1 (32bits static) under WinXP

Hi,

This bug seems similar to other bug tracking on synchronisation issues.

Bug affects any input video, with same codecs & container.

Input video directly from camera, see below.

Descrynize output with (note wrong duration is displayed for the output video)

ffmpeg -i "2012-03 03Praha.mp4" -async 1 -acodec copy -vcodec mpeg4 -q 20 out_mpeg4AVI.avi

Synchronize output with:
ffmpeg -i "2012-03 03Praha.mp4" -async 1 -f mp4 -acodec copy -vcodec mpeg4 -q 20 out_mpeg4AVIMP4.avi

Now interestingly,

1/ if one takes the 1st instruction line, but changes to mkv or mp4, no problem, example
ffmpeg -i "2012-03 03Praha.mp4" -async 1 -acodec copy -vcodec mpeg4 -q 20 out_mpeg4_mp4.mp4

2/ if one takes the 1st instruction line, but converts the audio, no probem
ffmpeg -i "2012-03 03Praha.mp4" -async 1 -acodec libmp3lame -vcodec mpeg4 -q 20 out_mpeg4AVI_mp3.avi

3/ Now, no problem with
ffmpeg -i out_mpeg4.mp4 -vcodec copy -acodec copy -f mp4 output.avi

4/ KO with
ffmpeg -i out_mpeg4.mkv -vcodec copy -acodec copy -f mkv output.avi

Input video available on request.

Details:

C:\Documents and Settings\Angel\Mes documents\Downloads>ffmpeg -v 9 -loglevel 99 -i "2012-03 03Praha.mp4" -async 1 -acodec copy -vcodec mpeg4 -q 20 out_mpeg4AVI.avi
ffmpeg version N-41416-g718607b Copyright (c) 2000-2012 the FFmpeg developers
  built on Jun  8 2012 12:46:19 with gcc 4.6.3
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-runtime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libass --enable-libcelt --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --ena
  libavutil      51. 56.100 / 51. 56.100
  libavcodec     54. 25.100 / 54. 25.100
  libavformat    54.  6.101 / 54.  6.101
  libavdevice    54.  0.100 / 54.  0.100
  libavfilter     2. 78.101 /  2. 78.101
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 022dd220] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 022dd220] ISO: File Type Major Brand: MSNV
[mov,mp4,m4a,3gp,3g2,mj2 @ 022dd220] File position before avformat_find_stream_info() is 54769662
[mov,mp4,m4a,3gp,3g2,mj2 @ 022dd220] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 022dd220] File position after avformat_find_stream_info() is 545749
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '2012-03 03Praha.mp4':
  Metadata:
    major_brand     : MSNV
    minor_version   : 19595353
    compatible_brands: MSNVmp42isom
    creation_time   : 2012-03-29 21:13:18
  Duration: 00:00:49.04, start: 0.000000, bitrate: 8933 kb/s
    Stream #0:0(und), 15, 1/30000: Video: mpeg4 (Advanced Coding Profile) (mp4v / 0x7634706D), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1/30000, 8866 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc
    Metadata:
      creation_time   : 2012-03-29 21:13:18
      handler_name    : Video Media Handler
    Stream #0:1(und), 1, 1/24000: Audio: aac (mp4a / 0x6134706D), 24000 Hz, mono, s16, 64 kb/s
    Metadata:
      creation_time   : 2012-03-29 21:13:18
      handler_name    : Sound Media Handler
[buffer @ 022ddd40] w:1280 h:720 pixfmt:yuv420p tb:1/30000 sar:1/1 sws_param:flags=2
[ffmpeg_buffersink @ 022dda40] No opaque field provided
[mpeg4 @ 022d9a40] detected 1 logical cores
[mpeg4 @ 022d9a40] intra_quant_bias = 0 inter_quant_bias = -64
[mpeg4 @ 022d23c0] detected 1 logical cores
Output #0, avi, to 'out_mpeg4AVI.avi':
  Metadata:
    major_brand     : MSNV
    minor_version   : 19595353
    compatible_brands: MSNVmp42isom
    creation_time   : 2012-03-29 21:13:18
    ISFT            : Lavf54.6.101
    Stream #0:0(und), 0, 1001/30000: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1001/30000, q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
    Metadata:
      creation_time   : 2012-03-29 21:13:18
      handler_name    : Video Media Handler
    Stream #0:1(und), 0, 16/375: Audio: aac ([255][0][0][0] / 0x00FF), 24000 Hz, mono, 64 kb/s
    Metadata:
      creation_time   : 2012-03-29 21:13:18
      handler_name    : Sound Media Handler
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg4 -> mpeg4)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 1470 fps= 32 q=20.0 Lsize=    5169kB time=00:00:49.02 bitrate= 863.7kbits/s
video:4713kB audio:383kB global headers:0kB muxing overhead 1.421177%

C:\Documents and Settings\Angel\Mes documents\Downloads>

Change History (22)

comment:1 by Carl Eugen Hoyos, 12 years ago

Description: modified (diff)
Keywords: desync added; synchronisation bug removed
Priority: criticalnormal

Is this also reproducible with current git head?
Why do you use -async 1?

Do you believe this is a regression? (=Did it work with older versions of FFmpeg?)

comment:2 by feelart, 12 years ago

Why do you use -async 1?

I tried just to see if it had a synchronisation influence, but with or without none.

I have to add, that although with the -f options it produces a synchronised video, on all players and depending on the encoding video codec mpeg4, libx264 or libxvid, the resulting video, leads to problems at when reaching the end(I presume there is unclosed parameters). I tried with KMplayer(3.2.0.19), VLC(2.0.1) or SMPlayer(0.8.0); KMplayer particular throws errors when reaching the end of file.

This bug(s) not only affects avi - with avi it's the worst case and visible - but with mkv or mp4 you have this fails to close bug.

For instance,

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec copy -vcodec libx264 -b:v 1000k outFF_libx264_f.mp4
and
ffmpeg -i "2012-03 03Praha.mp4" -acodec copy -vcodec libx264 -b:v 1000k outFF_libx264.mp4
produces very different output in term of size

I suspect 2 bugs:

1/ Either the parser or the internal fails to recognize the right input container, that's why with the -f option it works.
Seeing that converting input aac to mp3 leads to a synchronised video without the -f option, I would first look at an issue with aac.

2/ Eventhough with the -f option, the resulting video is malformed at its end, I suspect some unclosed option.

Is this also reproducible with current git head?

I used FFmpeg git-718607b 32-bit Static (Latest)
Do you want me to upload the input video?

Do you believe this is a regression? (=Did it work with older versions of FFmpeg?)

With 0.11.0 same issues, but possible, see
https://ffmpeg.org/trac/ffmpeg/ticket/1341

But I do believe, that other reported synchronisation bugs are linked and that by forcing -f option it makes a first incomplete work around.

I tried to make a thorought bug brake down, because, I do believe that you will close a bunch of bug reports, for instance to name some:
https://ffmpeg.org/trac/ffmpeg/ticket/1338
https://ffmpeg.org/trac/ffmpeg/ticket/1417
https://ffmpeg.org/trac/ffmpeg/ticket/1410
https://ffmpeg.org/trac/ffmpeg/ticket/475

in reply to:  2 comment:3 by Carl Eugen Hoyos, 12 years ago

Replying to feelart:

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec copy -vcodec libx264 -b:v 1000k outFF_libx264_f.mp4
and
ffmpeg -i "2012-03 03Praha.mp4" -acodec copy -vcodec libx264 -b:v 1000k outFF_libx264.mp4
produces very different output in term of size

This is impossible / would be a severe regression and therefore needs command line together with complete, uncut console output for both commands.

comment:4 by feelart, 12 years ago

Well, you're right for mp4 they are MD5 equivalent, not for the rest.

Is NOT equivalent:

ffmpeg -i input.mp4 -acodec copy -vcodec mpeg4 output.<extension different than mp4, especially avi>
vs
ffmpeg -i input.mp4 -f mp4 -acodec copy -vcodec mpeg4 output.<extension different than mp4, especially avi>

Similarly:

ffmpeg -i input.mp4 -acodec libmp3lame -vcodec copy output.<extension different than mp4, especially avi>
vs
ffmpeg -i input.mp4 -f mp4 -acodec libmp3lame -vcodec copy output.<extension different than mp4, especially avi>

Observations:
1/ with the option -acodec copy, the output file is de-synchronized except when one adds the "-f mp4"

2/ Generally, KMplayer finishes playing and at the end throws an "unfound member" error. So I suspected so missing close() instruction at encoding.

3/ With avi there is a seriously flaw:
ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec libmp3lame -vcodec copy mp3_vcopy_f_AVI.avi
generates a synchronised file of 533124Kb

vs

ffmpeg -i "2012-03 03Praha.mp4" -acodec libmp3lame -vcodec copy mp3_vcopyAVI.avi
generates a file of 87804Kb (look at the preceding !)

Now, when played with KMPlayer it immediately throws an error "This AVI file was not prepared for sequential reading, the alternative 'Avi Splitter' will now ..." and if I simply close KMplayer, WinXP hangs... I had to tried several times to check, better killing.

After list of test instructions and list of outputs.

ffmpeg -i "2012-03 03Praha.mp4" -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4AVI.avi

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4_f_AVI.avi

ffmpeg -i "2012-03 03Praha.mp4" -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4MP4.mp4

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4_f_MP4.mp4

ffmpeg -i "2012-03 03Praha.mp4" -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4MKV.mkv

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4_f_MKV.mkv

* test a change of audio output as MP3

ffmpeg -i "2012-03 03Praha.mp4" -acodec libmp3lame -vcodec mpeg4 mp3_mpeg4AVI.avi

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec libmp3lame -vcodec mpeg4 mp3_mpeg4_f_AVI.avi

ffmpeg -i "2012-03 03Praha.mp4" -acodec libmp3lame -vcodec copy mp3_vcopyAVI.avi

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec libmp3lame -vcodec copy mp3_vcopy_f_AVI.avi

ffmpeg -i "2012-03 03Praha.mp4" -acodec libmp3lame -vcodec copy mp3_vcopyMP4.mp4

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec libmp3lame -vcodec copy mp3_vcopy_f_MP4.mp4

ffmpeg -i "2012-03 03Praha.mp4" -acodec libmp3lame -vcodec copy mp3_vcopyMKV.mkv

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec libmp3lame -vcodec copy mp3_vcopy_f_MKV.mkv

ffmpeg -i "2012-03 03Praha.mp4" -f mp4 -acodec libmp3lame -vcodec mpeg4 mp3_mpeg4_f_MP4.mp4

Now the directory outputs:

Répertoire de C:\Documents and Settings\Angel\Mes documents\Downloads\v11_1\_avi

11/06/2012 14:02 <REP> .
11/06/2012 14:02 <REP> ..
11/06/2012 14:00 78 acopy_mpeg4AVI-error.txt
11/06/2012 13:25 5 292 870 acopy_mpeg4AVI.avi
11/06/2012 13:26 5 242 086 acopy_mpeg4_f_AVI.avi
11/06/2012 14:02 60 mp3_mpeg4AVI-error.txt
11/06/2012 13:34 4 103 906 mp3_mpeg4AVI.avi
11/06/2012 13:35 4 036 226 mp3_mpeg4_f_AVI.avi
11/06/2012 13:58 98 mp3_vcopyAVI-error.txt
11/06/2012 13:36 89 910 782 mp3_vcopyAVI.avi
11/06/2012 13:37 54 592 770 mp3_vcopy_f_AVI.avi

9 fichier(s) 163 178 876 octets

Répertoire de C:\Documents and Settings\Angel\Mes documents\Downloads\v11_1\_MKV

11/06/2012 14:05 <REP> .
11/06/2012 14:05 <REP> ..
11/06/2012 14:04 35 acopy_mpeg4MKV-error.txt
11/06/2012 13:27 5 236 324 acopy_mpeg4MKV.mkv
11/06/2012 13:28 5 242 086 acopy_mpeg4_f_MKV.mkv
11/06/2012 14:05 33 mp3_vcopyMKV-error.txt
11/06/2012 13:44 54 588 000 mp3_vcopyMKV.mkv
11/06/2012 13:45 54 592 770 mp3_vcopy_f_MKV.mkv

6 fichier(s) 119 659 248 octets

Répertoire de C:\Documents and Settings\Angel\Mes documents\Downloads\v11_1\_MP4

11/06/2012 14:12 <REP> .
11/06/2012 14:12 <REP> ..
11/06/2012 13:22 5 242 086 acopy_mpeg4MP4.mp4
11/06/2012 13:23 5 242 086 acopy_mpeg4_f_MP4.mp4
11/06/2012 14:11 4 036 226 mp3_mpeg4_f_MP4.mp4
11/06/2012 13:42 54 592 770 mp3_vcopyMP4.mp4
11/06/2012 13:43 54 592 770 mp3_vcopy_f_MP4.mp4

5 fichier(s) 123 705 938 octets

Total des fichiers listés :

20 fichier(s) 406 544 062 octets
11 Rép(s) 14 083 158 016 octets libres

C:\Documents and Settings\Angel\Mes documents\Downloads\v11_1>

in reply to:  2 comment:5 by Carl Eugen Hoyos, 12 years ago

Replying to feelart:

Is this also reproducible with current git head?

I used FFmpeg git-718607b 32-bit Static (Latest)

(Then why did you set version to 0.11.1?)

Do you want me to upload the input video?

Only if this is not a duplicate of ticket #1434.

comment:6 by feelart, 12 years ago

I used FFmpeg git-718607b 32-bit Static (Latest)
(Then why did you set version to 0.11.1?)
Well, then I didn't understand what is Git, I downloaded the exe directly from
http://ffmpeg.zeranoe.com/builds/

Only if this is not a duplicate of ticket #1434.

I didn't post it

in reply to:  6 comment:7 by Carl Eugen Hoyos, 12 years ago

Replying to feelart:

I used FFmpeg git-718607b 32-bit Static (Latest)
(Then why did you set version to 0.11.1?)
Well, then I didn't understand what is Git, I downloaded the exe directly from
http://ffmpeg.zeranoe.com/builds/

Don't worry, I just wanted to explain why I asked about git master.

comment:8 by feelart, 12 years ago

I uploaded a compress file, quick avi test show same issue; test file created with instruction:

ffmpeg -i "2012-03 03Praha.mp4" -acodec copy -vcodec mpeg4 -q 20 acopy_mpeg4MP4.mp4

http://www.filefactory.com/file/5uzhvoaiv62h/n/acopy_mpeg4MP4_mp4

I think now you've got everything to replicate it

comment:9 by Carl Eugen Hoyos, 12 years ago

Keywords: aac added
Reproduced by developer: set
Status: newopen
Summary: FFmpeg 0.11.1 simple reproducable synchronisation bug with work around - non imput specificRemuxing aac from mov to avi breaks timestamps
Version: 0.11.1git-master

out.avi has broken audio timestamps / does not play correctly with ffmpeg and MPlayer.

$ ffmpeg -i \'acopy_mpeg4MP4.mp4\' -acodec copy -qscale 2 out.avi
ffmpeg version N-41509-g20e46aa Copyright (c) 2000-2012 the FFmpeg developers
  built on Jun 11 2012 09:15:19 with gcc 4.3.2
  configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-gpl --enable-libopenjpeg --enable-libvorbis --enable-libspeex --enable-libmp3lame --enable-libtheora --extra-ldflags=-lm --enable-libvpx --enable-libxavs
  libavutil      51. 57.100 / 51. 57.100
  libavcodec     54. 25.100 / 54. 25.100
  libavformat    54.  6.101 / 54.  6.101
  libavdevice    54.  0.100 / 54.  0.100
  libavfilter     2. 78.101 /  2. 78.101
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from ''acopy_mpeg4MP4.mp4'':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf54.6.101
  Duration: 00:00:49.04, start: 0.000000, bitrate: 854 kb/s
    Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 786 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 24000 Hz, mono, s16, 64 kb/s
    Metadata:
      handler_name    : SoundHandler
Please use -q:a or -q:v, -qscale is ambiguous
[buffer @ 0x904f3e0] w:1280 h:720 pixfmt:yuv420p tb:1/30000 fr:30000/1001 sar:1/1 sws_param:flags=2
[ffmpeg_buffersink @ 0x901a900] No opaque field provided
Output #0, avi, to 'out.avi':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    ISFT            : Lavf54.6.101
    Stream #0:0(und): Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac ([255][0][0][0] / 0x00FF), 24000 Hz, mono, 64 kb/s
    Metadata:
      handler_name    : SoundHandler
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg4 -> mpeg4)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 1470 fps= 50 q=2.0 Lsize=    9238kB time=00:00:49.02 bitrate=1543.6kbits/s
video:8782kB audio:383kB global headers:0kB muxing overhead 0.789841%

comment:10 by feelart, 12 years ago

Well, just want to re-state, that the bug(s) is specific to avi container, but also to mkv, flv, etc.

comment:11 by Michael Niedermayer, 12 years ago

the link with the "acopy_mpeg4MP4_mp4" file shows: "Sorry, this file is no longer available. It may have been deleted by the uploader, or has expired."

comment:13 by feelart, 12 years ago

Happy to see that so starts working on it.
If need be I can re-upload sample

comment:14 by feelart, 12 years ago

Here upload.
http://www.filefactory.com/file/773pgcfb5ygz/n/acopy_mpeg4MP4_mp4

P.S. Tried again with build of 28th June, still same issue

comment:15 by feelart, 12 years ago

It's a regression bug as it works OK with ffmpeg version 0.8.4

comment:16 by Carl Eugen Hoyos, 12 years ago

Does not work with 0.8.4 for me either.
Could you add console output?

comment:17 by feelart, 12 years ago

Working OK with.

# ffmpeg -i acopy_mpeg4MP4.mp4 -acodec copy -qscale 2 out.avi
ffmpeg version 0.8.4, Copyright (c) 2000-2011 the FFmpeg developers
  built on Sep 24 2011 17:41:15 with gcc 4.5.2
  configuration: --prefix=/usr --cpu=i686 --enable-libmp3lame --enable-libx264 --enable-libfaac --enable-pthreads --enable-small --enable-postproc --enable-libvorbis --enable-gpl --enable-shared --enable-nonfree --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug --enable-bzlib --enable-zlib --enable-libspeex --enable-version3 --enable-runtime-cpudetect --enable-x11grab --enable-libdc1394 --enable-libschroedinger --enable-libtheora --enable-libxvid --enable-swscale --enable-libvpx
  libavutil    51.  9. 1 / 51.  9. 1
  libavcodec   53.  7. 0 / 53.  7. 0
  libavformat  53.  4. 0 / 53.  4. 0
  libavdevice  53.  1. 1 / 53.  1. 1
  libavfilter   2. 23. 0 /  2. 23. 0
  libswscale    2.  0. 0 /  2.  0. 0
  libpostproc  51.  2. 0 / 51.  2. 0

Seems stream 0 codec frame rate differs from container frame rate: 30000.00 (30000/1) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'acopy_mpeg4MP4.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf54.6.101
  Duration: 00:00:49.04, start: 0.000000, bitrate: 689 kb/s
    Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 621 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc
    Stream #0.1(und): Audio: aac, 24000 Hz, mono, s16, 64 kb/s
File 'out.avi' already exists. Overwrite ? [y/N] y
[buffer @ 0x805f860] w:1280 h:720 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param:
Output #0, avi, to 'out.avi':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    ISFT            : Lavf53.4.0
    Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
    Stream #0.1(und): Audio: libfaac, 24000 Hz, mono, 64 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1
Press [q] to stop, [?] for help
frame= 1470 fps= 18 q=2.0 Lsize=    7015kB time=00:00:49.02 bitrate=1172.2kbits/s    
video:6559kB audio:383kB global headers:0kB muxing overhead 1.042639%
# 
Last edited 12 years ago by Carl Eugen Hoyos (previous) (diff)

comment:18 by Carl Eugen Hoyos, 12 years ago

Output looks different here with 0.8.4, could you confirm that you are testing with http://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket1435/acopy_mpeg4MP4.mp4 (md5sum 26143beb80166ab324cc8c729e9ce6cb), the file you uploaded originally?

comment:19 by Carl Eugen Hoyos, 12 years ago

out.avi has broken timestamps with ffplay and mplayer.

$ ffmpeg -i acopy_mpeg4MP4.mp4 -acodec copy -qscale 2 out.avi
ffmpeg version 0.8.4, Copyright (c) 2000-2011 the FFmpeg developers
  built on Jul 22 2012 16:08:34 with gcc 4.3.2
  configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-small --enable-libfaac --enable-nonfree
  libavutil    51.  9. 1 / 51.  9. 1
  libavcodec   53.  7. 0 / 53.  7. 0
  libavformat  53.  4. 0 / 53.  4. 0
  libavdevice  53.  1. 1 / 53.  1. 1
  libavfilter   2. 23. 0 /  2. 23. 0
  libswscale    2.  0. 0 /  2.  0. 0

Seems stream 0 codec frame rate differs from container frame rate: 30000.00 (30000/1) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'acopy_mpeg4MP4.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf54.6.101
  Duration: 00:00:49.04, start: 0.000000, bitrate: 854 kb/s
    Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 786 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc
    Stream #0.1(und): Audio: aac, 24000 Hz, mono, s16, 64 kb/s
[buffer @ 0x89e95c0] w:1280 h:720 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param:
Output #0, avi, to 'out.avi':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    ISFT            : Lavf53.4.0
    Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
    Stream #0.1(und): Audio: libfaac, 24000 Hz, mono, 64 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1
Press [q] to stop, [?] for help
frame= 1470 fps= 44 q=2.0 Lsize=    9237kB time=00:00:49.02 bitrate=1543.6kbits/s
video:8782kB audio:383kB global headers:0kB muxing overhead 0.789734%

comment:20 by feelart, 12 years ago

1/ it's a demux bug for any aac file.

2/ The bug does not appear with version 0.8.4

3/ Yes, I don't know why my MD5 is different than yours.
If you really want I can re-test on the uploaded file, but as I say bug is NOT file specific. can you provide an URL for download the uploaded test file (the one provided directly opens in browser and can't save).

in reply to:  20 comment:21 by Carl Eugen Hoyos, 12 years ago

Replying to feelart:

3/ Yes, I don't know why my MD5 is different than yours.
If you really want I can re-test on the uploaded file, but as I say bug is NOT file specific. can you provide an URL for download the uploaded test file (the one provided directly opens in browser and can't save).

Consider using the right mouse button.

comment:22 by Michael Niedermayer, 12 years ago

Resolution: fixed
Status: openclosed
Note: See TracTickets for help on using tickets.