I've found that when producing dash, fragmented MP4 output, if the moov
atom (init segment) has an edit list in it, browsers are not good about
honoring it during playback. Ideally I can output the dash segments without
writing an edit list. I was hoping I can use the -use_editlist argument and
set it to 0, but that option seems to only be read in by the mov format,
not when using dash.

Modifying the code and forcing -use_editlist to 0 seems to give me what I
want.

1. Is this discouraged (i.e. does it cause problems for certain videos)?
2. Is there a way I can achieve the same thing via the command-line?

I've pasted my command output below (I'm using ffmpeg 2.8).

~/code/messingaround/jl/local> ~/code/ffmpeg/ffmpeg -y -threads 8 -i jl.mov
-t 10 -sn -map 0:0 -map 0:1 -c:v libx264 -force_key_frames
'expr:gte(t,n_forced*5)' -pix_fmt yuv420p -c:a libfdk_aac -ar 44100 -ab
128000 -ac 2 -profile:v:0 high -preset:v:0 superfast -crf:v:0 23
-maxrate:v:0 2000k -bufsize:v:0 2000k -f dash -use_editlist 0
-min_seg_duration 5000000 -use_timeline 0 file.tmp
ffmpeg version n2.8.14-1-g26755a8c6f Copyright (c) 2000-2018 the FFmpeg
developers
  built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
  configuration: --prefix=/usr/local --enable-gpl --enable-nonfree
--enable-libfdk-aac --enable-libfreetype --enable-libmp3lame
--enable-libx264 --enable-openssl
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'jl.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 0
    compatible_brands: qt
    creation_time   : 2017-10-30 16:39:23
  Duration: 00:01:36.90, start: 0.183333, bitrate: 12632 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
640x1136, 12435 kb/s, 33.17 fps, 60 tbr, 60k tbn, 120k tbc (default)
    Metadata:
      creation_time   : 2017-10-30 16:39:23
      handler_name    : Core Media Data Handler
      encoder         : H.264
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz,
stereo, fltp, 168 kb/s (default)
    Metadata:
      creation_time   : 2017-10-30 16:39:23
      handler_name    : Core Media Data Handler
[libx264 @ 0x7f8a06803800] using cpu capabilities: MMX2 SSE2Fast SSSE3
SSE4.2 AVX FMA3 AVX2 LZCNT BMI2
[libx264 @ 0x7f8a06803800] profile High, level 3.2
[libx264 @ 0x7f8a06803800] 264 - core 148 r2748 97eaef2 - H.264/MPEG-4 AVC
codec - Copyleft 2003-2016 - http://www.videolan.org/x264.html - options:
cabac=1 ref=1 deblock=1:0:0 analyse=0x3:0x3 me=dia subme=1 psy=1
psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=1
cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 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=1 keyint=250 keyint_min=25
scenecut=40 intra_refresh=0 rc_lookahead=0 rc=crf mbtree=0 crf=23.0
qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=2000 vbv_bufsize=2000
crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 pb_ratio=1.30 aq=1:1.00
Output #0, dash, to 'file.tmp':
  Metadata:
    major_brand     : qt
    minor_version   : 0
    compatible_brands: qt
    encoder         : Lavf56.40.101
    Stream #0:0(und): Video: h264 (libx264) ([33][0][0][0] / 0x0021),
yuv420p, 640x1136, q=-1--1, max. 2000 kb/s, 60 fps, 15360 tbn, 60 tbc
(default)
    Metadata:
      creation_time   : 2017-10-30 16:39:23
      handler_name    : Core Media Data Handler
      encoder         : Lavc56.60.100 libx264
    Stream #0:1(und): Audio: aac (libfdk_aac) ([64][0][0][0] / 0x0040),
44100 Hz, stereo, s16, 128 kb/s (default)
    Metadata:
      creation_time   : 2017-10-30 16:39:23
      handler_name    : Core Media Data Handler
      encoder         : Lavc56.60.100 libfdk_aac
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
  Stream #0:1 -> #0:1 (aac (native) -> aac (libfdk_aac))
Press [q] to stop, [?] for help
frame=  600 fps=521 q=-1.0 Lsize=N/A time=00:00:10.01 bitrate=N/A dup=308
drop=0
video:1407kB audio:148kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown
[libx264 @ 0x7f8a06803800] frame I:5     Avg QP:10.99  size: 24254
[libx264 @ 0x7f8a06803800] frame P:205   Avg QP:18.58  size:  5533
[libx264 @ 0x7f8a06803800] frame B:390   Avg QP:18.05  size:   473
[libx264 @ 0x7f8a06803800] consecutive B-frames:  1.5% 24.0% 34.5% 40.0%
[libx264 @ 0x7f8a06803800] mb I  I16..4: 65.3% 16.1% 18.6%
[libx264 @ 0x7f8a06803800] mb P  I16..4: 10.4%  3.0%  0.4%  P16..4: 25.6%
0.0%  0.0%  0.0%  0.0%    skip:60.6%
[libx264 @ 0x7f8a06803800] mb B  I16..4:  0.4%  0.1%  0.0%  B16..8:  4.4%
0.0%  0.0%  direct: 2.2%  skip:92.9%  L0:21.9% L1:74.6% BI: 3.4%
[libx264 @ 0x7f8a06803800] 8x8 transform intra:20.2% inter:38.4%
[libx264 @ 0x7f8a06803800] coded y,uvDC,uvAC intra: 15.7% 16.3% 7.6% inter:
4.0% 4.9% 0.8%
[libx264 @ 0x7f8a06803800] i16 v,h,dc,p: 86%  9%  4%  1%
[libx264 @ 0x7f8a06803800] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 22% 19% 22%  7%
6%  6%  6%  5%  7%
[libx264 @ 0x7f8a06803800] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 34% 22% 15%  6%
5%  4%  5%  4%  5%
[libx264 @ 0x7f8a06803800] i8c dc,h,v,p: 79% 10%  9%  3%
[libx264 @ 0x7f8a06803800] Weighted P-Frames: Y:20.5% UV:19.5%
[libx264 @ 0x7f8a06803800] kb/s:1152.05
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to