#3394 closed defect (fixed)
mp4 -> mkv produces broken file
Reported by: | tessus | Owned by: | |
---|---|---|---|
Priority: | important | Component: | avformat |
Version: | git-master | Keywords: | mkv regression |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Summary of the bug:
I copy a video stream and convert an aac audio stream from an mp4 file to an mkv file. The resulting mkv file is broken. It doesn't play on HW players (e.g. WD TV Media box) and stops in VLC as well.
How to reproduce:
% ffmpeg -i inp.mp4 -i inp.srt -map 0:0 -vcodec copy -map 0:1 -acodec ac3 -b:a 384k -af volume=2 -map 1:0 -scodec copy -metadata:s:1 language=eng -metadata:s:2 language=eng -metadata title="Title here" "out.mkv" ffmpeg version N-60689-g8309171-tessus Copyright (c) 2000-2014 the FFmpeg developers built on Feb 16 2014 19:49:23 with llvm-gcc 4.2.1 (LLVM build 2336.1.00) configuration: --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --enable-runtime-cpudetect libavutil 52. 64.100 / 52. 64.100 libavcodec 55. 52.102 / 55. 52.102 libavformat 55. 33.100 / 55. 33.100 libavdevice 55. 9.101 / 55. 9.101 libavfilter 4. 1.102 / 4. 1.102 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100
The last good version I have on my disk is from Feb. 4th. The first bad version was around Feb. 7th. Since then the output files are broken.
I have uploaded 3 files to upload.ffmpeg.org (cut off after 4MB):
1) input file: mp4-mkv-input.mp4
2) good output file (674195c): mp4-mkv-good.mkv
3) bad output file (8309171): mp4-mkv-broken.mkv
I suspect that the mkv structure of the output file is garbled. Maybe you guys have tools to check the integrity of containers.
Since the video stream is copied, I can't believe that the stream is the problem.
I used several different input files - same result, so it's not the input file either.
ffmpeg 2.1.3 does not have the problem.
Maybe you have an idea what was changed after Feb 4th that would screw up the output file.
Change History (40)
comment:1 by , 11 years ago
comment:2 by , 11 years ago
Please provide your failing command line together with the complete, uncut console output to make this a valid ticket.
comment:3 by , 11 years ago
I'm not quite sure I understand. ffmpeg does not abend. Here is the complete output:
ffmpeg -i 1.mp4 -i 1.srt -map 0:0 -vcodec copy -map 0:1 -acodec ac3 -b:a 384k -af volume=2 -map 1:0 -scodec copy -metadata:s:1 language=eng -metadata:s:2 language=eng -metadata title=test test.mkv ffmpeg version N-60689-g8309171-tessus Copyright (c) 2000-2014 the FFmpeg developers built on Feb 16 2014 19:49:23 with llvm-gcc 4.2.1 (LLVM build 2336.1.00) configuration: --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --enable-runtime-cpudetect libavutil 52. 64.100 / 52. 64.100 libavcodec 55. 52.102 / 55. 52.102 libavformat 55. 33.100 / 55. 33.100 libavdevice 55. 9.101 / 55. 9.101 libavfilter 4. 1.102 / 4. 1.102 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '1.mp4': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 creation_time : 2014-02-09 20:22:13 Duration: 01:41:11.96, start: 0.000000, bitrate: 2473 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 1962 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default) Metadata: creation_time : 2014-02-09 20:22:13 Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 380 kb/s (default) Metadata: creation_time : 2014-02-09 17:38:55 Stream #0:2(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 124 kb/s (default) Metadata: creation_time : 2014-02-09 17:54:44 Input #1, srt, from '1.srt': Duration: N/A, bitrate: N/A Stream #1:0: Subtitle: subrip Output #0, matroska, to 'test.mkv': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 title : test encoder : Lavf55.33.100 Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 1962 kb/s, 23.98 fps, 1k tbn, 24k tbc (default) Metadata: creation_time : 2014-02-09 20:22:13 Stream #0:1(eng): Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1, fltp, 384 kb/s (default) Metadata: creation_time : 2014-02-09 17:38:55 Stream #0:2(eng): Subtitle: subrip Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (aac -> ac3) Stream #1:0 -> #0:2 (copy) Press [q] to stop, [?] for help frame=145580 fps=606 q=-1.0 Lsize= 1741934kB time=01:41:11.96 bitrate=2350.1kbits/s video:1454812kB audio:284624kB subtitle:57 data:0 global headers:0kB muxing overhead 0.140359%
Please note: It doesn't matter, if the subtitles are muxed in or not. The problem only occurs, if aac is converted to something else. I also tried the stereo audio stream. Same problem. Hope this helps.
comment:4 by , 11 years ago
Could you confirm that you uploaded the right sample?
$ md5sum mp4-mkv-input.mp4 33a1b2787adb1b58bf5e0160234caffe mp4-mkv-input.mp4 $ ffmpeg -i mp4-mkv-input.mp4 ffmpeg version N-60700-g07b4b0c Copyright (c) 2000-2014 the FFmpeg developers built on Feb 18 2014 09:15:18 with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 52. 64.100 / 52. 64.100 libavcodec 55. 52.102 / 55. 52.102 libavformat 55. 33.100 / 55. 33.100 libavdevice 55. 10.100 / 55. 10.100 libavfilter 4. 1.102 / 4. 1.102 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x2150100] error reading header: -1094995529 mp4-mkv-input.mp4: Invalid data found when processing input
follow-up: 6 comment:5 by , 11 years ago
I cut off the files I uploaded after 4MB, since the input file is 1,877,018,601 bytes. According to the bug report web site, I was supposed to do so. The output files are also about the same size.
comment:6 by , 11 years ago
Replying to tessus:
I cut off the files I uploaded after 4MB, since the input file is 1,877,018,601 bytes.
Please upload the complete file, there is no hard file size limit.
comment:7 by , 11 years ago
I get the following message: 421 Too many connections (1) from this IP
Which is weird, since I have only one connection open.
comment:8 by , 11 years ago
I'm uploading from a different IP. The name of the file is mp4-mkv-input-big.mp4
md5sum mp4-mkv-input-big.mp4 18158efb3f3def0c94670608f4bf7692 mp4-mkv-input-big.mp4
Should be completely uploaded within the next 15 minutes.
comment:9 by , 11 years ago
Replying to tessus:
I copy a video stream and convert an aac audio stream from an mp4 file to an mkv file. The resulting mkv file is broken. It doesn't play on HW players (e.g. WD TV Media box) and stops in VLC as well.
I tested the following command line:
$ ffmpeg -i mp4-mkv-input-big.mp4 -vcodec copy -acodec ac3 out.mkv
The output file plays fine here with vlc for two minutes, when does it stop for you?
comment:10 by , 11 years ago
Component: | undetermined → avformat |
---|---|
Keywords: | mkv regression added |
Priority: | normal → important |
comment:11 by , 11 years ago
It stops almost right away. I open it in VLC, the position bar jumps back and forth for about 1-2 seconds and then the video stops. The HW player does not do or play anything.
comment:12 by , 11 years ago
Which version of vlc are you testing? On which operating system?
(This is assuming you want to report the problem with vlc to reproduce in which case I will do the regression tests if I can reproduce the problem. The alternative is of course that you do the git bisect yourself and tell us the version that broke the output files for your hardware decoder.)
comment:13 by , 11 years ago
I'm using VLC Version 2.1.3 Rincewind (Intel 64bit) on MacOSX 10.6.8.
I doubt that it is an issue with VLC, because the HW player does not play the file either.
Also, when I use an ffmpeg git version from Feb 4th, VLC plays it just fine.
It takes quite a while to compile ffmpeg on my machine, so doing a bisect would take forever for me. Unfortunately I'm rather busy at the moment, so I would have to wait until I have more time. That's fine too, I just don't have any idea when this will be.
comment:14 by , 11 years ago
I'm terribly sorry, I made a mistake with my earlier testing. I mentioned earlier that it doesn't matter, if the subtitles are muxed in or not.
This is actually not true. I only have the problem when the subtitles are muxed in via -scodec copy
. I'm truly sorry, if I wasted your time.
Well, it is still a problem, just not the one I opened it for.
comment:15 by , 11 years ago
I've uploaded the subtitle file as mp4-mkv-input-big.srt
, although you could take any .srt file I guess.
comment:16 by , 11 years ago
I tested the following:
$ ffmpeg -i mp4-mkv-input-big.mp4 -i mp4-mkv-input-big.srt -scodec copy -vcodec copy -acodec ac3 ~/out.mkv ffmpeg version N-60710-g61d5970 Copyright (c) 2000-2014 the FFmpeg developers built on Feb 18 2014 10:42:46 with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 52. 64.100 / 52. 64.100 libavcodec 55. 52.102 / 55. 52.102 libavformat 55. 33.100 / 55. 33.100 libavdevice 55. 10.100 / 55. 10.100 libavfilter 4. 1.102 / 4. 1.102 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'mp4-mkv-input-big.mp4': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 creation_time : 2014-02-09 20:22:13 Duration: 01:41:11.96, start: 0.000000, bitrate: 2473 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 1962 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default) Metadata: creation_time : 2014-02-09 20:22:13 Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 380 kb/s (default) Metadata: creation_time : 2014-02-09 17:38:55 Stream #0:2(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 124 kb/s (default) Metadata: creation_time : 2014-02-09 17:54:44 Input #1, srt, from 'mp4-mkv-input-big.srt': Duration: N/A, bitrate: N/A Stream #1:0: Subtitle: subrip Output #0, matroska, to '/home/cehoyos/out.mkv': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 encoder : Lavf55.33.100 Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 1962 kb/s, 23.98 fps, 1k tbn, 24k tbc (default) Metadata: creation_time : 2014-02-09 20:22:13 Stream #0:1(eng): Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1, fltp, 448 kb/s (default) Metadata: creation_time : 2014-02-09 17:38:55 Stream #0:2: Subtitle: subrip Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (aac -> ac3) Stream #1:0 -> #0:2 (copy) Press [q] to stop, [?] for help frame=145580 fps=2897 q=-1.0 Lsize= 1789364kB time=01:41:11.96 bitrate=2414.1kbits/s video:1454812kB audio:332061kB subtitle:57 data:0 global headers:0kB muxing overhead 0.136231%
$ md5sum out.mkv 35ea0dd5238a3fdbf7d169850bbfc30b out.mkv
The output file plays fine in vlc for five minutes showing correct subtitles.
I can reproduce the problem with the file mp4-mkv-broken.mkv you uploaded, please find out what is different about the command I am testing.
Unrelated:
Please remove the following options from your configure line, they have no effect:
--as=yasm --disable-shared --enable-static --enable-pthreads --enable-postproc --enable-bzlib --enable-zlib --enable-filters --enable-runtime-cpudetect
follow-ups: 18 19 23 comment:17 by , 11 years ago
Just ran the following:
$ ffmpeg -i mp4-mkv-input-big.mp4 -i mp4-mkv-input-big.srt -scodec copy -vcodec copy -acodec ac3 out.mkv ffmpeg version N-60712-g5f4219b-tessus Copyright (c) 2000-2014 the FFmpeg developers built on Feb 17 2014 20:55:39 with llvm-gcc 4.2.1 (LLVM build 2336.1.00) configuration: --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --enable-runtime-cpudetect libavutil 52. 64.100 / 52. 64.100 libavcodec 55. 52.102 / 55. 52.102 libavformat 55. 33.100 / 55. 33.100 libavdevice 55. 10.100 / 55. 10.100 libavfilter 4. 1.102 / 4. 1.102 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'mp4-mkv-input-big.mp4': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 creation_time : 2014-02-09 20:22:13 Duration: 01:41:11.96, start: 0.000000, bitrate: 2473 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 1962 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default) Metadata: creation_time : 2014-02-09 20:22:13 Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 380 kb/s (default) Metadata: creation_time : 2014-02-09 17:38:55 Stream #0:2(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 124 kb/s (default) Metadata: creation_time : 2014-02-09 17:54:44 Input #1, srt, from 'mp4-mkv-input-big.srt': Duration: N/A, bitrate: N/A Stream #1:0: Subtitle: subrip Output #0, matroska, to 'out.mkv': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 encoder : Lavf55.33.100 Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 1962 kb/s, 23.98 fps, 1k tbn, 24k tbc (default) Metadata: creation_time : 2014-02-09 20:22:13 Stream #0:1(eng): Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1, fltp, 448 kb/s (default) Metadata: creation_time : 2014-02-09 17:38:55 Stream #0:2: Subtitle: subrip Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (aac -> ac3) Stream #1:0 -> #0:2 (copy) Press [q] to stop, [?] for help frame=145580 fps=793 q=-1.0 Lsize= 1789371kB time=01:41:11.96 bitrate=2414.1kbits/s video:1454812kB audio:332061kB subtitle:57 data:0 global headers:0kB muxing overhead 0.136624%
$ md5sum out.mkv 35de7829297090a333718ed8dd100e17 out.mkv
After that I ran the same command as above with the additional option -t 300
and uploaded the file for you as 3394_out_300.mkv
. It might be easier for you to check the binary.
Wrt the config options: I create a static binary, so wouldn't I need --enable-static
?
Why don't they have any effect?
follow-up: 20 comment:18 by , 11 years ago
Replying to tessus:
Wrt the config options: I create a static binary, so wouldn't I need
--enable-static
?
No, --enable-static
is unrelated to building static binaries.
Why don't they have any effect?
They are all set by default (and even if they would not work, for example because you don't have the necessary bz2 libraries, they would not fail).
follow-up: 22 comment:19 by , 11 years ago
Replying to tessus:
built on Feb 17 2014 20:55:39 with llvm-gcc 4.2.1 (LLVM build 2336.1.00)
(Isn't this a broken compiler?)
$ md5sum out.mkv 35de7829297090a333718ed8dd100e17 out.mkv
This is unexpected, when using the same FFmpeg versions with the same configure options, identical output files are expected.
follow-up: 21 comment:20 by , 11 years ago
No, I don't think that it is a broken compiler. I've been using it for years now and never had any issues.
follow-up: 24 comment:21 by , 11 years ago
Replying to tessus:
No, I don't think that it is a broken compiler. I've been using it for years now and never had any issues.
See #353 but this is not necessarily related, I just wanted to convince you to also test clang. And please use a saner configure line (preferably ./configure --cc=clang && make
) for the tests.
comment:22 by , 11 years ago
Replying to cehoyos:
$ md5sum out.mkv 35de7829297090a333718ed8dd100e17 out.mkvThis is unexpected
Sorry, there are float codecs involved, this is expected.
follow-up: 25 comment:23 by , 11 years ago
Replying to tessus:
Wrt the config options: I create a static binary
Looking at your configure line, you are not creating a static binary.
But why would that make sense on OS X? Isn't there a set of compatible system libraries installed on every possible target system?
comment:24 by , 11 years ago
Replying to cehoyos:
I just wanted to convince you to also test clang. And please use a saner configure line (preferably
./configure --cc=clang && make
) for the tests.
Ok, I'll try building with clang.
follow-up: 26 comment:25 by , 11 years ago
Replying to cehoyos:
Looking at your configure line, you are not creating a static binary.
But why would that make sense on OS X? Isn't there a set of compatible system libraries installed on every possible target system?
Yes, they are static binaries. You can grab them at http://evermeet.cx/ffmpeg/snapshots/
comment:26 by , 11 years ago
Replying to tessus:
Replying to cehoyos:
Looking at your configure line, you are not creating a static binary.
But why would that make sense on OS X? Isn't there a set of compatible system libraries installed on every possible target system?
Yes, they are static binaries. You can grab them at http://evermeet.cx/ffmpeg/snapshots/
I don't think so:
$ otool -L ffmpeg ffmpeg: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
follow-up: 28 comment:27 by , 11 years ago
On MacOSX this is considered static, because those 2 libraries are only available as dylibs, therefore can't be linked statically.
But these 2 libs are available on all MacOSX versions. If I didn't compile it the way I do with the options I had, I would have about 35 libs in the otool output (which sre not standard).
comment:28 by , 11 years ago
Replying to tessus:
On MacOSX this is considered static, because those 2 libraries are only available as dylibs, therefore can't be linked statically.
Then what you provide are not static binaries.
But these 2 libs are available on all MacOSX versions.
That is why - imo - static binaries are not needed for OS X.
(Two people are providing them for Linux iirc.)
comment:29 by , 11 years ago
That is why I said that they are considered static on MacOSX. Technically they are not, but since there is not static version of libSystem.B.dylib, there are no static binaries on MacOSX, because all binaries require this lib.
So the term static on MacOSX means that nothing else is required to run this executable.
So this is as close as you can get on MacOSX.
But 'all-dependent-libraries-to-run-on-MacOSX-are-included' binary is a tongue twister and that's why people adapted the term static for binaries that only show system libs in the otool output.
So my binary has all the libs included in the binary to run it on all MacOSX version > 10.6.8. (e.g. libbluray, libopus, and about 20 more).
It doesn't make any sense to compile it on a system that has Homebrew or Macports installed where the binary links to files which are only available on my box and do not exist on a standard MacOSX machine.
The first thing they get is a library missing error when they try to run it.
But this has nothing to do with the ticket, I just wanted to explain what people consider static on MacOSX. I'm not saying that it is technically correct.
comment:31 by , 11 years ago
Oh, my update on this apparently didn't go through.
Yes, I used ./configure --cc=clang && make
, but no change. Same problem.
comment:32 by , 11 years ago
Assuming there is a bug that can be fixed in FFmpeg, I don't think anybody can do anything about it as long as you don't run a regression test with git bisect to find the change introducing the problem.
comment:34 by , 11 years ago
Last good commit was 6a4cc50. Commit 3adb5f8 is already bad.
git log:
* 3adb5f8 | 2014-02-05 03:19:22 +0100 | Merge commit 'd9ae1031f5edbd25c8526b4cb51aba66d3bee931' |\ | * d9ae103 | 2014-02-04 22:01:42 +0100 | lavf: improve handling of sparse streams when muxing * | 6a4cc50 | 2014-02-05 02:47:46 +0100 | Merge commit '4c3e1956ee35fdcc5ffdb28782050164b4623c0b'
(Tried to build d9ae103 as well, but no ffmpeg binary is built by make.)
comment:35 by , 11 years ago
Can you try Git HEAD again please? A problem raised by this commit was fixed very recently, it could be the same issue.
comment:37 by , 11 years ago
Yes, git HEAD (9aa59a9) works fine. Awesome. What was the commit that fixed it?
comment:38 by , 11 years ago
Probably that:
commit d089e9a4d125269bbdc6e9e16456cd3f3a76baf8 Merge: c427b2b 299a568 Author: Michael Niedermayer <michaelni@gmx.at> Date: 2014-02-20 16:29:09 +0100 Merge remote-tracking branch 'cigaes/master' * cigaes/master: ffmpeg: make reading packets from thread blocking. Merged-by: Michael Niedermayer <michaelni@gmx.at> commit 299a56879d2d790ac0c40d09af18e7f03471de9e Author: Nicolas George <george@nsup.org> Date: 2013-10-25 10:58:14 +0200 ffmpeg: make reading packets from thread blocking. If a packet is not ready on the input selected by ffmpeg, it will read from another input instead. If that happens repeatedly, frames will accumulate somewhere later in the processing to ensure streams synchronization. It can happen in particular when reading from a slow medium or an expensive lavfi filter graph. Make reading from normal demuxers on non-streamed data and from the lavfi pseudo-device blocking to avoid that. Should fix trac ticket #3079.
comment:39 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Thanks for the info, mate.
Shall I close the ticket, or will you? I'm not sure what the procedure is, maybe you still have to add something to the ticket before closing it.
I was able to narrow it down:
The output file is not broken, when I copy video and audio stream.
However, it is broken, when I convert the audio. The target does not matter. I tried ac3 and mp3.
This brings me to the conclusion that the mkv container is fine, but that the aac decoder has a problem.