#1174 closed defect (duplicate)
iPod / iPad plays both audio tracks simultaneously
Reported by: | TonyPh12345 | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | git-master | Keywords: | mov |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
This is very similar to portions of what's described in #468.
The input MKV file has one AVC video track and two AC3 audio tracks.
I use this command (in ffmpeg 0.10.2; see below for results with today's git)
ffmpeg -y -i input.mkv -map 0:0 -map 0:1 -map 0:2 -acodec aac -ar 48000 -ab 128k -ac 2 -vcodec copy -strict experimental -threads 6 output.m4v
The process runs, and no errors are reported
ffmpeg started on 2012-04-06 at 15:59:59 Report written to "ffmpeg-20120406-155959.log" Command line: ffmpeg -report -y -i input.mkv -map 0:0 -map 0:1 -map 0:2 -acodec aac -ar 48000 -ab 128k -ac 2 -vcodec copy -strict experimental -threads 6 output.m4v ffmpeg version 0.10.2 Copyright (c) 2000-2012 the FFmpeg developers built on Mar 24 2012 15:22:08 with gcc 4.5.1 20100924 (Red Hat 4.5.1-4) configuration: libavutil 51. 35.100 / 51. 35.100 libavcodec 53. 61.100 / 53. 61.100 libavformat 53. 32.100 / 53. 32.100 libavdevice 53. 4.100 / 53. 4.100 libavfilter 2. 61.100 / 2. 61.100 libswscale 2. 1.100 / 2. 1.100 libswresample 0. 6.100 / 0. 6.100 [matroska,webm @ 0xa058280] Format matroska,webm probed with size=2048 and score=100 st:0 removing common factor 1000000 from timebase st:1 removing common factor 1000000 from timebase st:2 removing common factor 1000000 from timebase st:3 removing common factor 1000000 from timebase st:4 removing common factor 1000000 from timebase st:5 removing common factor 1000000 from timebase [h264 @ 0xa05f4c0] err{or,}_recognition separate: 1; 1 [h264 @ 0xa05f4c0] err{or,}_recognition combined: 1; 10001 [ac3 @ 0xa05fb60] err{or,}_recognition separate: 1; 1 [ac3 @ 0xa05fb60] err{or,}_recognition combined: 1; 10001 [ac3 @ 0xa05fb60] Unsupported bit depth: 0 [ac3 @ 0xa060140] err{or,}_recognition separate: 1; 1 [ac3 @ 0xa060140] err{or,}_recognition combined: 1; 10001 [ac3 @ 0xa060140] Unsupported bit depth: 0 [dvdsub @ 0xa079a00] err{or,}_recognition separate: 1; 1 [dvdsub @ 0xa079a00] err{or,}_recognition combined: 1; 10001 [dvdsub @ 0xa079a00] palette: 0x0000fd 0xfe0000 0x000000 0xfdfdfd 0xf38200 0x0087f4 0xf6ea8a 0x007c7b 0x0000fd 0xfeea04 0x7b0000 0x007e00 0x00007a 0xdc00fd 0xdd7d00 0xdfe13a [dvdsub @ 0xa07fc80] err{or,}_recognition separate: 1; 1 [dvdsub @ 0xa07fc80] err{or,}_recognition combined: 1; 10001 [dvdsub @ 0xa07fc80] palette: 0x0000fd 0xfe0000 0x000000 0xfdfdfd 0xf38200 0x0087f4 0xf6ea8a 0x007c7b 0x0000fd 0xfeea04 0x7b0000 0x007e00 0x00007a 0xdc00fd 0xdd7d00 0xdfe13a [h264 @ 0xa05f4c0] no picture [h264 @ 0xa05f4c0] no picture [matroska,webm @ 0xa058280] All info found rfps: 29.666667 0.013781 rfps: 29.666667 0.013781 rfps: 29.750000 0.007295 rfps: 29.750000 0.007295 rfps: 29.833333 0.002869 rfps: 29.833333 0.002869 rfps: 29.916667 0.000504 rfps: 29.916667 0.000504 rfps: 30.000000 0.000199 rfps: 30.083333 0.001955 rfps: 30.166667 0.005771 rfps: 30.250000 0.011647 rfps: 30.333333 0.019584 rfps: 30.333333 0.019584 rfps: 59.583333 0.019298 rfps: 59.666667 0.011477 rfps: 59.666667 0.011477 rfps: 59.750000 0.005717 rfps: 59.750000 0.005717 rfps: 59.833333 0.002017 rfps: 59.833333 0.002017 rfps: 59.916667 0.000377 rfps: 59.916667 0.000377 rfps: 29.970030 0.000072 rfps: 29.970030 0.000072 rfps: 59.940060 0.000287 rfps: 59.940060 0.000287 Input #0, matroska,webm, from 'input.mkv': Duration: 00:22:01.32, start: 0.000000, bitrate: 1705 kb/s Chapter #0.0: start 0.000000, end 330.330000 Metadata: title : Chapter 1 Chapter #0.1: start 330.330000, end 859.325133 Metadata: title : Chapter 2 Chapter #0.2: start 859.325133, end 1295.360733 Metadata: title : Chapter 3 Chapter #0.3: start 1295.360733, end 1321.320000 Metadata: title : Chapter 4 Stream #0:0(eng), 43, 1/1000: Video: h264 (Main), yuv420p, 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 1k tbn, 180k tbc (default) Stream #0:1(eng), 46, 1/1000: Audio: ac3, 48000 Hz, 5.1(side), s16, 384 kb/s (default) Stream #0:2(eng), 46, 1/1000: Audio: ac3, 48000 Hz, mono, s16, 96 kb/s Stream #0:3(eng), 0, 1/1000: Subtitle: dvd_subtitle Stream #0:4(eng), 0, 1/1000: Subtitle: dvd_subtitle Stream #0:5(eng), 0, 1/1000: Subtitle: text Incompatible sample format 's16' for codec 'aac', auto-selecting format 'flt' Incompatible sample format 's16' for codec 'aac', auto-selecting format 'flt' [aac @ 0xa0e4c80] err{or,}_recognition separate: 1; 1 [aac @ 0xa0e4c80] err{or,}_recognition combined: 1; 10001 [aac @ 0xa0e4c80] Unsupported bit depth: 0 [aac @ 0xa0a5340] err{or,}_recognition separate: 1; 1 [aac @ 0xa0a5340] err{or,}_recognition combined: 1; 10001 [aac @ 0xa0a5340] Unsupported bit depth: 0 [ac3 @ 0xa05fb60] err{or,}_recognition separate: 1; 10001 [ac3 @ 0xa05fb60] err{or,}_recognition combined: 1; 10001 [ac3 @ 0xa05fb60] Unsupported bit depth: 0 [ac3 @ 0xa060140] err{or,}_recognition separate: 1; 10001 [ac3 @ 0xa060140] err{or,}_recognition combined: 1; 10001 [ac3 @ 0xa060140] Unsupported bit depth: 0 Output #0, ipod, to 'output.m4v': Metadata: encoder : Lavf53.32.100 Chapter #0.0: start 0.000000, end 330.330000 Metadata: title : Chapter 1 Chapter #0.1: start 330.330000, end 859.325133 Metadata: title : Chapter 2 Chapter #0.2: start 859.325133, end 1295.360733 Metadata: title : Chapter 3 Chapter #0.3: start 1295.360733, end 1321.320000 Metadata: title : Chapter 4 Stream #0:0(eng), 0, 1/1000: Video: h264 (avc1 / 0x31637661), yuv420p, 720x480 [SAR 8:9 DAR 4:3], q=2-31, 29.97 fps, 1k tbn, 1k tbc (default) Stream #0:1(eng), 0, 1/48000: Audio: aac (mp4a / 0x6134706D), 48000 Hz, 2 channels, flt, 128 kb/s (default) Stream #0:2(eng), 0, 1/48000: Audio: aac (mp4a / 0x6134706D), 48000 Hz, 2 channels, flt, 128 kb/s Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (ac3 -> aac) Stream #0:2 -> #0:2 (ac3 -> aac) Press [q] to stop, [?] for help Input stream #0:1 frame changed from rate:48000 fmt:s16 ch:6 to rate:48000 fmt:s16 ch:2 0.707107 0.707107 frame=39600 fps=242 q=-1.0 Lsize= 236894kB time=00:22:01.22 bitrate=1468.8kbits/s video:193780kB audio:41301kB global headers:0kB muxing overhead 0.770842%
But when I watch these files on iPod Touch or iPad (both running iOS 5.1) BOTH audio tracks play simultaneously.
If I access the Audio Track chooser in the video player, NEITHER track is "Checkmarked." If I then select either track, playback is normal.
It just seems like there's no "Default" flag set or something.
I don't understand the M4V format enough to debug in detail.
The same MKV converted to M4V using HandBrake 0.9.5 and the iPad preset works correctly.
I have tried this with multiple files using ffmpeg 0.10.2.
I cannot try with today's GIT (4/6/12) because using the exact same command, I get the error
Application provided invalid, non monotonically increasing dts to muxer in stream 0: -67 >= -67 av_interleaved_write_frame(): Invalid argument
Attachments (1)
Change History (9)
follow-up: 3 comment:1 by , 13 years ago
comment:2 by , 13 years ago
I've uploaded a file named "Ticket1174.mkv" to the FTP server.
It's the entire file, not a 10M dd since some of the relevant metadata is at the end of the file.
comment:3 by , 13 years ago
Replying to cehoyos:
This sounds like a serious regression, please provide a sample.
Ooops; didn't hit the REPLY button. Trying again.
File uploaded.
by , 13 years ago
Attachment: | Ticket1174_cut.mkv added |
---|
follow-up: 5 comment:4 by , 13 years ago
You can use -vcodec mpeg4 instead of -vcodec copy to test if the audio issue is still reproducible with current git head.
Did you test the patch in ticket #468? You may need to git checkout 62101030c4ff23c61046a70cd27a627dfb0e0e54 to be able to apply the patch.
comment:5 by , 13 years ago
Replying to cehoyos:
You can use -vcodec mpeg4 instead of -vcodec copy to test if the audio issue is still reproducible with current git head.
Did you test the patch in ticket #468? You may need to git checkout 62101030c4ff23c61046a70cd27a627dfb0e0e54 to be able to apply the patch.
Using the -vcodec mpeg4 did indeed allow the GIT clone to run. However, no fix for the audio as-is.
Since I'm a complete git-iot, I just hand-edited the patch from 468 into the two files in the git clone and recompiled... It worked. iPad and iPod both played the file correctly.
Unfortunately, the source-code differences between the GIT and the 0.10.2 are too substantial for me to the just re-use the edited movenc.c and movenc.h in the 10.2 build... won't compile. :(
Is there any branch that would get me far enough to keep using the -vcodec COPY option, while keeping the patch? (-copy runs about 8x faster than re-encoding to MP4... and I have about 3000 files I want to run this against.)
comment:6 by , 13 years ago
Oh, interesting.
Just as a quick & dirty HACK, all I needed to do was change (in utils.c at line 3138)
if(st->cur_dts && st->cur_dts != AV_NOPTS_VALUE && ((!(s->oformat->flags & AVFMT_TS_NONSTRICT) && st->cur_dts >= pkt->dts) st->cur_dts > pkt->dts)){
to
if(st->cur_dts && st->cur_dts != AV_NOPTS_VALUE && ((!(s->oformat->flags & AVFMT_TS_NONSTRICT) && st->cur_dts > pkt->dts) st->cur_dts > pkt->dts)){
(changed the equality to an inequality) to get past the error in the GIT clone.
I realize that's not a "Fix," but it gets me where I need to be.
comment:7 by , 12 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
This appears to be fixed. Please reopen if not.
comment:8 by , 12 years ago
Component: | undetermined → avformat |
---|---|
Keywords: | mov added |
Resolution: | fixed → duplicate |
Version: | 0.10.2 → git-master |
Afaict this is a duplicate of ticket #468, still reproducible with the following command line:
$ ffmpeg -i fate-suite/svq3/Vertical400kbit.sorenson3.mov -i fate-suite/aac/al_sbr_cm_48_5.1.mp4 -map 0:0 -map 0:1 -map 1:0 -acodec aac -strict -2 -vcodec mpeg4 -qscale 5 out.m4v
Replying to TonyPh12345:
This sounds like a serious regression, please provide a sample.