[FFmpeg-user] Changing behavior matroska muxer

Антон Приходько tosha at oviont.com
Thu Dec 22 19:10:40 EET 2016


On Thu, Dec 22, 2016 at 11:04:05 +0300, Антон Приходько wrote:
> Since version ffmpeg-20161006-0212867-win64-static it has changed the
> behavior the matroska muxer.

>Is this the very first version which displays your issue? In other
>words, 20161005 does not?

yes, the 20161005 does not - it's fully ok.
Since 20161006 the Mediainfo and Players not works. But the FFPROBE of that 
version is ok. Starting with a version of the FFPROBEis no longer read the 
track, I have not tested

>On 20161006, a lot of changes where introduced into the Matroska muxer,
>adding CRC32 fields. I don't believe they should interfere with
>previous behavior, but I honestly don't know.

it's fine!

>> The FFProbe.exe (in several versions, starting with said at the 
>> beginning,
>> ffprobe reads more tracks)
>> FFprobe result:
>> http://rgfootball.tv/media/up/148239316689.jpg

>Could you please show us an ffmpeg command line (not GUI options, GUIs
>are not supported here) which allows to reproduce the issue? Along with
>its complete, uncut console output - please not as screenshot, but
>copy/pasting the *text* from the console into the e-mail.

Yes you are right. I use the latest ver. of FFMPEG below.
This is the simplest command: copy of mkv with 1 audio. I press the Pause 
key on keybord to stop process and try to copy the output. It is screenshot:
http://rgfootball.tv/media/up/148242546962.jpg

The report of 1-st coping:

fmpeg started on 2016-12-22 at 19:41:00
Report written to "ffmpeg-20161222-194100.log"
Command line:
"G:\\Distr\\ffmpeg-20161218-02aa070-win64-static\\bin\\ffmpeg.exe" -i 
"F:\\p4.mkv" -report -map 0 -c copy "f:\\p4_1.mkv"
ffmpeg version N-82880-g02aa070 Copyright (c) 2000-2016 the FFmpeg 
developers
  built with gcc 5.4.0 (GCC)
  configuration: --enable-gpl --enable-version3 --enable-dxva2 --enable-libmfx 
 --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r 
 --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b 
 --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc 
 --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb 
 --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp 
 --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame 
 --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx 
 --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs 
 --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
  libavutil      55. 43.100 / 55. 43.100
  libavcodec     57. 68.100 / 57. 68.100
  libavformat    57. 61.100 / 57. 61.100
  libavdevice    57.  2.100 / 57.  2.100
  libavfilter     6. 68.100 /  6. 68.100
  libswscale      4.  3.101 /  4.  3.101
  libswresample   2.  4.100 /  2.  4.100
  libpostproc    54.  2.100 / 54.  2.100
Splitting the commandline.
Reading option '-i' ... matched as input url with argument 'F:\p4.mkv'.
Reading option '-report' ... matched as option 'report' (generate a report) 
with argument '1'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) 
with argument '0'.
Reading option '-c' ... matched as option 'c' (codec name) with argument 
'copy'.
Reading option 'f:\p4_1.mkv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url F:\p4.mkv.
Successfully parsed a group of options.
Opening an input file: F:\p4.mkv.
[file @ 000000000033ae00] Setting default whitelist 'file,crypto'
[matroska,webm @ 000000000033a400] 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
[matroska,webm @ 000000000033a400] Before avformat_find_stream_info() pos: 
953 bytes read:32768 seeks:0 nb_streams:2
[h264 @ 000000000034c3a0] nal_unit_type: 7, nal_ref_idc: 3
[h264 @ 000000000034c3a0] nal_unit_type: 8, nal_ref_idc: 3
[h264 @ 000000000034c3a0] nal_unit_type: 7, nal_ref_idc: 3
[h264 @ 000000000034c3a0] nal_unit_type: 8, nal_ref_idc: 3
[h264 @ 000000000034c3a0] user data:"x264 - core 148 r2694 3b70645 - 
H.264/MPEG-4 AVC codec - Copyleft 2003-2016 - 
http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 
analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 
me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 
chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 
decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 
b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 
keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf 
mbtree=1 crf=21.5 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 
aq=1:1.00"
[h264 @ 000000000034c3a0] nal_unit_type: 6, nal_ref_idc: 0
[h264 @ 000000000034c3a0] nal_unit_type: 5, nal_ref_idc: 3
[h264 @ 000000000034c3a0] user data:"x264 - core 148 r2694 3b70645 - 
H.264/MPEG-4 AVC codec - Copyleft 2003-2016 - 
http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 
analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 
me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 
chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 
decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 
b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 
keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf 
mbtree=1 crf=21.5 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 
aq=1:1.00"
[h264 @ 000000000034c3a0] Reinit context to 1280x720, pix_fmt: yuv420p
[h264 @ 000000000034c3a0] no picture
[matroska,webm @ 000000000033a400] All info found
[matroska,webm @ 000000000033a400] After avformat_find_stream_info() pos: 
65470 bytes read:65536 seeks:0 frames:6
Input #0, matroska,webm, from 'F:\p4.mkv':
  Metadata:
    title           : All Sport on RGFOOTBALL.NET
    ENCODER         : Lavf57.61.100
  Duration: 00:16:18.33, start: 0.000000, bitrate: 3244 kb/s
    Stream #0:0, 4, 1/1000: Video: h264 (High), yuv420p(progressive), 
1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 1k tbn, 100 tbc (default)
    Metadata:
      ENCODER         : Lavc57.48.102 libx264
      DURATION        : 00:16:18.325000000
    Stream #0:1(rus), 2, 1/1000: Audio: ac3, 48000 Hz, stereo, fltp, 128 
kb/s
    Metadata:
      ENCODER         : Lavc57.48.102 ac3
      DURATION        : 00:16:18.240000000
Successfully opened the file.
Parsing a group of options: output url f:\p4_1.mkv.
Applying option map (set input stream mapping) with argument 0.
Applying option c (codec name) with argument copy.
Successfully parsed a group of options.
Opening an output file: f:\p4_1.mkv.
[file @ 000000000060de80] Setting default whitelist 'file,crypto'
Successfully opened the file.
Output #0, matroska, to 'f:\p4_1.mkv':
  Metadata:
    title           : All Sport on RGFOOTBALL.NET
    encoder         : Lavf57.61.100
    Stream #0:0, 0, 1/1000: Video: h264 (High) (H264 / 0x34363248), 
yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 50 fps, 50 tbr, 
1k tbn, 1k tbc (default)
    Metadata:
      ENCODER         : Lavc57.48.102 libx264
      DURATION        : 00:16:18.325000000
    Stream #0:1(rus), 0, 1/1000: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 
stereo, fltp, 128 kb/s
    Metadata:
      ENCODER         : Lavc57.48.102 ac3
      DURATION        : 00:16:18.240000000
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per 
stream)
cur_dts is invalid (this is harmless if it occurs once at the start per 
stream)
cur_dts is invalid (this is harmless if it occurs once at the start per 
stream)
cur_dts is invalid (this is harmless if it occurs once at the start per 
stream)
[matroska @ 0000000002a729a0] get_metadata_duration returned: 978325000
[matroska @ 0000000002a729a0] Write early duration from metadata = 978325
[matroska @ 0000000002a729a0] Writing block at offset 9, size 33074, pts 20, 
dts -20, duration 20, keyframe 1
[matroska @ 0000000002a729a0] Writing block at offset 33091, size 22038, pts 
105, dts 0, duration 20, keyframe 0
[matroska @ 0000000002a729a0] Writing block at offset 55137, size 512, pts 
0, dts 0, duration 32, keyframe 1
[matroska @ 0000000002a729a0] Writing block at offset 55656, size 7325, pts 
65, dts 20, duration 20, keyframe 0
[matroska @ 0000000002a729a0] Writing block at offset 62988, size 512, pts 
32, dts 32, duration 32, keyframe 1

Then I try to copy the Output of first command:
It is Report of 2-d copying:

ffmpeg started on 2016-12-22 at 20:04:10
Report written to "ffmpeg-20161222-200410.log"
Command line:
"G:\\Distr\\ffmpeg-20161218-02aa070-win64-static\\bin\\ffmpeg.exe" -i 
"F:\\p4_1.mkv" -report -map "?" -c copy "f:\\p4_2.mkv"
ffmpeg version N-82880-g02aa070 Copyright (c) 2000-2016 the FFmpeg 
developers
  built with gcc 5.4.0 (GCC)
  configuration: --enable-gpl --enable-version3 --enable-dxva2 --enable-libmfx 
 --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r 
 --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b 
 --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc 
 --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb 
 --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp 
 --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame 
 --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx 
 --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs 
 --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
  libavutil      55. 43.100 / 55. 43.100
  libavcodec     57. 68.100 / 57. 68.100
  libavformat    57. 61.100 / 57. 61.100
  libavdevice    57.  2.100 / 57.  2.100
  libavfilter     6. 68.100 /  6. 68.100
  libswscale      4.  3.101 /  4.  3.101
  libswresample   2.  4.100 /  2.  4.100
  libpostproc    54.  2.100 / 54.  2.100
Splitting the commandline.
Reading option '-i' ... matched as input url with argument 'F:\p4_1.mkv'.
Reading option '-report' ... matched as option 'report' (generate a report) 
with argument '1'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) 
with argument '?'.
Reading option '-c' ... matched as option 'c' (codec name) with argument 
'copy'.
Reading option 'f:\p4_2.mkv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url F:\p4_1.mkv.
Successfully parsed a group of options.
Opening an input file: F:\p4_1.mkv.
[file @ 000000000033ae00] Setting default whitelist 'file,crypto'
[matroska,webm @ 000000000033a400] Format matroska,webm probed with 
size=2048 and score=100
[matroska,webm @ 000000000033a400] Unknown entry 0x1654AE6B
[matroska,webm @ 000000000033a400] Duplicate element
[matroska,webm @ 000000000033a400] Unknown entry 0x1654AE6B
[matroska,webm @ 000000000033a400] Unknown entry 0x1254C367
[matroska,webm @ 000000000033a400] Before avformat_find_stream_info() pos: 
953 bytes read:32768 seeks:0 nb_streams:0
[matroska,webm @ 000000000033a400] All info found
[matroska,webm @ 000000000033a400] After avformat_find_stream_info() pos: 
953 bytes read:32768 seeks:0 frames:0
Input #0, matroska,webm, from 'F:\p4_1.mkv':
  Duration: N/A, bitrate: N/A
Successfully opened the file.
Parsing a group of options: output url f:\p4_2.mkv.
Applying option map (set input stream mapping) with argument ?.
Stream map '?' matches no streams; ignoring.
Applying option c (codec name) with argument copy.
Successfully parsed a group of options.
Opening an output file: f:\p4_2.mkv.
Output #0, matroska, to 'f:\p4_2.mkv':
Output file #0 does not contain any stream
[AVIOContext @ 0000000000327400] Statistics: 32768 bytes read, 0 seeks


>Thanks,
>Moritz

Thank you, Moritz, for your attention. 



More information about the ffmpeg-user mailing list