[FFmpeg-trac] #8043(ffmpeg:new): Nero and Quicktime format chapters
FFmpeg
trac at avcodec.org
Sun Jul 28 06:53:13 EEST 2019
#8043: Nero and Quicktime format chapters
-------------------------------------+-------------------------------------
Reporter: Naqros | Type:
| enhancement
Status: new | Priority: wish
Component: ffmpeg | Version: 4.1
Keywords: chapter | Blocked By:
mark nero quicktime chapters |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
I've asked about this elsewhere before but have not gotten any possible
solution to this issue that I have, I certainly haven't seen it anywhere
else online so I am putting here as a feature request.
I've got this file, an MP4, here is part of the MediaInfo:
{{{
Menu
00:00:00.000 : CHAPTER01
00:00:23.133 : CHAPTER02
00:01:31.633 : CHAPTER03
00:02:05.100 : CHAPTER04
00:08:04.567 : CHAPTER05
00:16:03.133 : CHAPTER06
00:21:45.266 : CHAPTER07
}}}
So it has Nero formatted chapters embedded with mp4box. Then when I
process this file further with ffmpeg it always comes out like this:
{{{
Menu #1
ID : 3
Codec ID : text
Duration : 21 min 45 s
Language : English
Bit rate mode : CBR
Menu For : 2
00:59:57.994 : CHAPTER01
01:00:21.127 : CHAPTER02
01:01:29.627 : CHAPTER03
01:02:03.094 : CHAPTER04
01:08:02.561 : CHAPTER05
01:16:01.127 : CHAPTER06
01:21:43.260 : CHAPTER07
Menu #2
00:00:00.000 : CHAPTER01
00:00:23.133 : CHAPTER02
00:01:31.633 : CHAPTER03
00:02:05.100 : CHAPTER04
00:08:04.567 : CHAPTER05
00:16:03.133 : CHAPTER06
00:21:45.266 : CHAPTER07
}}}
Now there are 2 chapter streams, I found out that the top is Quicktime
formatted and then my original Nero formatted chapters are on the bottom.
Basically I want to only have the original Nero formatted (Menu #2)
chapters as anything else makes these chapters not work at all in an Oppo
Blu-ray player. The Oppo doesn't work with Quicktime format, and it
doesn't work if both formats are present either.
I'm aware of the `-movflags disable_chpl` but that gets rid of the Nero
chapter and keeps the Quicktime chapters, I need to do the opposite.
Perhaps there is some sort of `-map` or `-map_metadata` or something that
could be done for this use case but I have not found it. For time saving
reasons I'd rather not have to embed the chapters with mp4box after ffmpeg
as since I am basically doing a whole bunch of subtitle embedding and
burning-in, that would result in 17 times the amount of chapter embedding
as opposed to just adding chapters once before that to the source file. No
matter what, I always get these Quicktime format chapters on the output of
ffmpeg.
Chapter marks are embedded in a batch file with:
{{{
`mp4box.exe -add %input% -chap %chapters%
"%output%\%inputfile%_chapters.mp4"`
}}}
Then later on in the workflow encoded with ffmpeg:
{{{
`"C:\Users\******\promo _chapters.mp4" -pix_fmt yuv420p -vf yadif -c:
v libx264 -profile:v high -level 4.0 -preset fast -r 30000/1001 -vsync
1 -bf 1 -
crf 18 -maxrate 12M -bufsize 12M -movflags +faststart -c:a aac -b:a
192k -ar 48K
-f mp4 Z:\output\promo.mp4`
}}}
Here is the ffmpeg log:
{{{
ffmpeg -y -i "C:\Users\******\promo _chapters.mp4" -pix_fmt yuv420p -vf
yadif -c:
v libx264 -profile:v high -level 4.0 -preset fast -r 30000/1001 -vsync
1 -bf 1 -
crf 18 -maxrate 12M -bufsize 12M -movflags +faststart -c:a aac -b:a
192k -ar 48K
-f mp4 Z:\output\promo.mp4
ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 8.3.1 (GCC) 20190414
configuration: --enable-gpl --enable-version3 --enable-sdl2
--enable-fontconfi
g --enable-gnutls --enable-iconv --enable-libass --enable-libbluray
--enable-lib
freetype --enable-libmp3lame --enable-libopencore-amrnb --enable-
libopencore-amr
wb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-
libsnappy --
enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx
--enable-l
ibwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-
libxml2 --
enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-
libvidstab --en
able-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-
libspeex --en
able-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-
ffnvcodec --e
nable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-
dxva2 --enab
le-avisynth
libavutil 56. 22.100 / 56. 22.100
libavcodec 58. 35.100 / 58. 35.100
libavformat 58. 20.100 / 58. 20.100
libavdevice 58. 5.100 / 58. 5.100
libavfilter 7. 40.101 / 7. 40.101
libswscale 5. 3.100 / 5. 3.100
libswresample 3. 3.100 / 3. 3.100
libpostproc 55. 3.100 / 55. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\Users\******\promo
_chapters.mp4':
Metadata:
major_brand : isom
minor_version : 1
compatible_brands: isom
creation_time : 2019-07-14T20:51:43.000000Z
Duration: 00:00:32.03, start: 0.000000, bitrate: 145729 kb/s
Chapter #0:0: start 0.000000, end 5.166000
Metadata:
title : CHAPTER01
Chapter #0:1: start 5.166000, end 10.233000
Metadata:
title : CHAPTER02
Chapter #0:2: start 10.233000, end 14.867000
Metadata:
title : CHAPTER03
Chapter #0:3: start 14.867000, end 21.367000
Metadata:
title : CHAPTER04
Chapter #0:4: start 21.367000, end 24.400000
Metadata:
title : CHAPTER05
Chapter #0:5: start 24.400000, end 29.333000
Metadata:
title : CHAPTER06
Chapter #0:6: start 29.333000, end 32.032032
Metadata:
title : CHAPTER07
Stream #0:0(und): Video: dnxhd (DNXHD) (AVdn / 0x6E645641),
yuv422p(tv, bt70
9/unknown/unknown), 1920x1080, 145344 kb/s, SAR 1:1 DAR 16:9, 29.97
fps, 29.97 t
br, 29970 tbn, 29970 tbc (default)
Metadata:
creation_time : 2019-04-26T19:59:22.000000Z
handler_name : ?Apple Video Media Handler
encoder : Avid DNxHD Codec
timecode : 00:59:58;00
Stream #0:1(und): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
stereo, s3
2 (24 bit), 2304 kb/s (default)
Metadata:
creation_time : 2019-04-26T19:59:22.000000Z
handler_name : ?Apple Sound Media Handler
Stream #0:2(und): Data: none (tmcd / 0x64636D74) (default)
Metadata:
creation_time : 2019-04-26T19:59:34.000000Z
handler_name : ?Time Code Media Handler
timecode : 00:59:58;00
Stream mapping:
Stream #0:0 -> #0:0 (dnxhd (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (pcm_s24le (native) -> aac (native))
Press [q] to stop, [?] for help
[libx264 @ 00000000006c0140] using SAR=1/1
[libx264 @ 00000000006c0140] using cpu capabilities: MMX2 SSE2Fast
SSSE3 SSE4.2
AVX FMA3 BMI2 AVX2
[libx264 @ 00000000006c0140] profile Progressive High, level 4.0,
4:2:0, 8-bit
[libx264 @ 00000000006c0140] 264 - core 157 r2970 5493be8 -
H.264/MPEG-4 AVC cod
ec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options:
cabac=1 r
ef=2 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=6 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_pski
p=1 chroma_qp_offset=-2 threads=34 lookahead_threads=5
sliced_threads=0 nr=0 dec
imate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=1
b_pyramid=0 b
_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=250
keyint_min=
25 scenecut=40 intra_refresh=0 rc_lookahead=30 rc=crf mbtree=1
crf=18.0 qcomp=0.
60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=12000 vbv_bufsize=12000
crf_max=0.0 nal
_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'Z:\output\promo.mp4':
Metadata:
major_brand : isom
minor_version : 1
compatible_brands: isom
encoder : Lavf58.20.100
Chapter #0:0: start 0.000000, end 5.166000
Metadata:
title : CHAPTER01
Chapter #0:1: start 5.166000, end 10.233000
Metadata:
title : CHAPTER02
Chapter #0:2: start 10.233000, end 14.867000
Metadata:
title : CHAPTER03
Chapter #0:3: start 14.867000, end 21.367000
Metadata:
title : CHAPTER04
Chapter #0:4: start 21.367000, end 24.400000
Metadata:
title : CHAPTER05
Chapter #0:5: start 24.400000, end 29.333000
Metadata:
title : CHAPTER06
Chapter #0:6: start 29.333000, end 32.032032
Metadata:
title : CHAPTER07
Stream #0:0(und): Video: h264 (libx264) (avc1 / 0x31637661),
yuv420p, 1920x1
080 [SAR 1:1 DAR 16:9], q=-1--1, 0.03 fps, 30k tbn, 29.97 tbc
(default)
Metadata:
creation_time : 2019-04-26T19:59:22.000000Z
handler_name : ?Apple Video Media Handler
timecode : 00:59:58;00
encoder : Lavc58.35.100 libx264
Side data:
cpb: bitrate max/min/avg: 12000000/0/0 buffer size: 12000000
vbv_delay: -1
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz,
stereo, flt
p (24 bit), 192 kb/s (default)
Metadata:
creation_time : 2019-04-26T19:59:22.000000Z
handler_name : ?Apple Sound Media Handler
encoder : Lavc58.35.100 aac
frame= 14 fps=0.0 q=0.0 size= 0kB time=00:00:00.93 bitrate=
1.8kbits/s
frame= 43 fps= 43 q=0.0 size= 0kB time=00:00:02.00 bitrate=
0.8kbits/s
frame= 74 fps= 49 q=24.0 size= 0kB time=00:00:03.28 bitrate=
0.5kbits/
frame= 124 fps= 62 q=24.0 size= 0kB time=00:00:04.69 bitrate=
0.4kbits/
frame= 166 fps= 66 q=24.0 size= 1536kB time=00:00:06.08
bitrate=2069.8kbits/
frame= 204 fps= 67 q=24.0 size= 3840kB time=00:00:07.48
bitrate=4201.3kbits/
frame= 242 fps= 69 q=26.0 size= 5632kB time=00:00:08.89
bitrate=5186.5kbits/
frame= 284 fps= 70 q=25.0 size= 7424kB time=00:00:10.28
bitrate=5914.7kbits/
frame= 325 fps= 72 q=24.0 size= 9472kB time=00:00:11.69
bitrate=6637.5kbits/
frame= 367 fps= 73 q=26.0 size= 11264kB time=00:00:13.09
bitrate=7044.7kbits/
frame= 407 fps= 73 q=28.0 size= 13056kB time=00:00:14.14
bitrate=7562.0kbits/
frame= 448 fps= 74 q=29.0 size= 15360kB time=00:00:15.44
bitrate=8146.9kbits/
frame= 491 fps= 75 q=26.0 size= 17664kB time=00:00:16.91
bitrate=8553.7kbits/
frame= 532 fps= 75 q=24.0 size= 19712kB time=00:00:18.30
bitrate=8822.2kbits/
frame= 574 fps= 76 q=24.0 size= 21504kB time=00:00:19.62
bitrate=8975.7kbits/
frame= 615 fps= 76 q=24.0 size= 23040kB time=00:00:21.03
bitrate=8973.1kbits/
frame= 656 fps= 76 q=27.0 size= 25088kB time=00:00:22.44
bitrate=9157.7kbits/
frame= 695 fps= 76 q=24.0 size= 27136kB time=00:00:23.82
bitrate=9328.8kbits/
frame= 736 fps= 77 q=25.0 size= 29184kB time=00:00:25.23
bitrate=9473.1kbits/
frame= 776 fps= 77 q=24.0 size= 30976kB time=00:00:26.64
bitrate=9523.5kbits/
frame= 813 fps= 77 q=24.0 size= 33024kB time=00:00:27.86
bitrate=9710.0kbits/
frame= 854 fps= 77 q=24.0 size= 34816kB time=00:00:28.97
bitrate=9844.9kbits/
frame= 896 fps= 77 q=24.0 size= 36352kB time=00:00:30.40
bitrate=9796.0kbits/
frame= 936 fps= 77 q=24.0 size= 37632kB time=00:00:31.78
bitrate=9698.5kbits/
[mp4 @ 000000000282e7c0] Starting second pass: moving the moov atom to
the begin
ning of the file
frame= 960 fps= 62 q=-1.0 Lsize= 39818kB time=00:00:32.04
bitrate=10179.8kbit
s/s speed=2.07x
video:39018kB audio:763kB subtitle:0kB other streams:0kB global
headers:0kB muxi
ng overhead: 0.093123%
[libx264 @ 00000000006c0140] frame I:11 Avg QP:16.42 size:119041
[libx264 @ 00000000006c0140] frame P:486 Avg QP:20.49 size: 62131
[libx264 @ 00000000006c0140] frame B:463 Avg QP:22.45 size: 18246
[libx264 @ 00000000006c0140] consecutive B-frames: 3.5% 96.5%
[libx264 @ 00000000006c0140] mb I I16..4: 26.0% 64.5% 9.5%
[libx264 @ 00000000006c0140] mb P I16..4: 4.2% 16.2% 1.6% P16..4:
37.2% 16.7
% 8.1% 0.0% 0.0% skip:16.0%
[libx264 @ 00000000006c0140] mb B I16..4: 2.7% 7.4% 0.3% B16..8:
17.8% 5.6
% 0.4% direct:20.5% skip:45.4% L0:40.2% L1:47.0% BI:12.8%
[libx264 @ 00000000006c0140] 8x8 transform intra:72.3% inter:69.6%
[libx264 @ 00000000006c0140] coded y,uvDC,uvAC intra: 54.4% 80.0%
47.2% inter: 2
4.8% 38.9% 7.1%
[libx264 @ 00000000006c0140] i16 v,h,dc,p: 34% 26% 12% 28%
[libx264 @ 00000000006c0140] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 19%
25% 4% 5%
6% 5% 6% 5%
[libx264 @ 00000000006c0140] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 22%
10% 5% 9%
8% 9% 6% 7%
[libx264 @ 00000000006c0140] i8c dc,h,v,p: 51% 21% 20% 8%
[libx264 @ 00000000006c0140] Weighted P-Frames: Y:6.8% UV:2.5%
[libx264 @ 00000000006c0140] ref P L0: 79.5% 20.5%
[libx264 @ 00000000006c0140] kb/s:9978.35
[aac @ 00000000006c69c0] Qavg: 3776.600
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8043>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list