[FFmpeg-trac] #8416(undetermined:new): disposition option ignored when muxing hls from a web url and srt subtitle file together in an mkv container

FFmpeg trac at avcodec.org
Sat Dec 7 02:20:40 EET 2019


#8416: disposition option ignored when muxing hls from a web url and srt subtitle
file together in an mkv container
-------------------------------------+-------------------------------------
             Reporter:  bgx90        |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:  4.2
  undetermined                       |
             Keywords:  disposition  |               Blocked By:
  default subtitle subtitles         |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:
 I am downloading a hls video and muxing it together with a local srt
 subtitle file into an mkv container. I have tried using the -disposition
 option to prevent the subtitles from being flagged as default subtitles,
 but the the -disposition option is ignored.

 How to reproduce:
 This command results in an mkv with the subtitles flagged as default
 despite using the -disposition option to set the default flag as false
 {{{
 % ffmpeg -i 'http://some_video_site/somevideo.m3u8' -i
 local_subtitles_file.srt  -vcodec copy -acodec copy -scodec srt
 -disposition:s -default -metadata:s:s:0 language=eng output.mkv
 }}}

 However, I can change the subtitle stream's default flag to false by
 running the following command on the output.mkv file produced by the
 command above.
 {{{
 % ffmpeg -i output.mkv -codec copy -disposition:s -default
 no_default_subtitles.mkv
 }}}
 The resulting file no_default_subtitles.mkv will play without the
 subtitles being displayed by default. ffprobe confirms that the subtitles
 are not default.

 Interestingly, I have also found that if I first download the video to an
 mkv container and then mux that mkv file with the subtitle file into a new
 mkv file with the following commands, the subtitles are not marked as
 default even though the -disposition option is not used.
 {{{
 % ffmpeg -i 'http://some_video_site/somevideo.m3u8' -c copy
 some_local_video_file.mkv
 % ffmpeg -i some_local_video_file.mkv -i some_local_subtitles.srt -vcodec
 copy -acodec copy -scodec srt -metadata:s:s:0 language=eng
 no_default_subtitles.mkv
 }}}
 It is odd to me that the above command results in an mkv in which the
 subtitles are not flagged as default, but the command that downloads the
 video and adds the subtitles does not even though that command explicitly
 sets the default flag to false.

 ffmpeg version info:
 {{{
 ffmpeg version 4.2.1-2 Copyright (c) 2000-2019 the FFmpeg developers
 built with gcc 9 (Debian 9.2.1-15)
 configuration: --prefix=/usr --extra-version=2 --toolchain=hardened
 --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu
 --arch=amd64 --enable-gpl --disable-stripping --enable-avresample
 --disable-filter=resample --enable-avisynth --enable-gnutls --enable-
 ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b
 --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite
 --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-
 libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-
 libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus
 --enable-libpulse --enable-librsvg --enable-librubberband --enable-
 libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-
 libssh --enable-libtheora --enable-libtwolame --enable-libvidstab
 --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq
 --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl
 --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883
 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
 libavutil      56. 31.100 / 56. 31.100
 libavcodec     58. 54.100 / 58. 54.100
 libavformat    58. 29.100 / 58. 29.100
 libavdevice    58.  8.100 / 58.  8.100
 libavfilter     7. 57.100 /  7. 57.100
 libavresample   4.  0.  0 /  4.  0.  0
 libswscale      5.  5.100 /  5.  5.100
 libswresample   3.  5.100 /  3.  5.100
 libpostproc    55.  5.100 / 55.  5.100
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8416>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list