[FFmpeg-trac] #6417(avformat:new): Select option in tee muxer issue

FFmpeg trac at avcodec.org
Wed May 24 12:56:57 EEST 2017


#6417: Select option in tee muxer issue
-------------------------------------+----------------------------------
             Reporter:  desteban     |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  avformat     |                  Version:  2.8.11
             Keywords:  tee, select  |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+----------------------------------
 Hi,

 I am using the last version available for Ubuntu 16.04


 {{{
 ffmpeg version 2.8.11-0ubuntu0.16.04.1 Copyright (c) 2000-2017 the FFmpeg
 developers
   built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
   configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-
 suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu
 --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl
 --enable-shared --disable-stripping --disable-decoder=libopenjpeg
 --disable-decoder=libschroedinger --enable-avresample --enable-avisynth
 --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray
 --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite
 --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-
 libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-
 libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-
 libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr
 --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame
 --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
 --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal
 --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883
 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv
   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
   libavresample   2.  1.  0 /  2.  1.  0
   libswscale      3.  1.101 /  3.  1.101
   libswresample   1.  2.101 /  1.  2.101
   libpostproc    53.  3.100 / 53.  3.100
 }}}


 As explained here:
 https://trac.ffmpeg.org/wiki/Creating%20multiple%20outputs#Teepseudo-muxer
 I am trying to do the example where the video stream is split and scaled
 to two different sized outputs, and the audio is encoded only once but
 used by both outputs.


 {{{
 ffmpeg -i input -filter_complex \
 "[0:v]split=2[s0][s1]; \
  [s0]scale=1280:-2[v0]; \
  [s1]scale=640:-2[v1]" \
 -map "[v0]" -map "[v1]" -map 0:a -c:v libx264 -c:a aac -f tee \
 "[select=\'v:0,a\']local0.mkv| \
  [select=\'v:0,a\':f=flv]rtmp://server0/app/instance/playpath| \
  [select=\'v:1,a\']local1.mkv| \
  [select=\'v:1,a\':f=flv]rtmp://server1/app/instance/playpath"
 }}}


 The issue is related with the ''select''.

 Reading this: https://www.ffmpeg.org/ffmpeg-formats.html#tee-1


 {{{
 select
 Select the streams that should be mapped to the slave output, specified by
 a stream specifier. If not specified, this defaults to all the input
 streams. You may use multiple stream specifiers separated by commas (,)
 e.g.: a:0,v
 }}}


 It is supposed that ''You may use multiple stream specifiers separated by
 commas (,)'' but it does not working (is ignoring streams specified after
 comma)

 So using this unofficial repo:

 sudo add-apt-repository ppa:jonathonf/ffmpeg-3


 I have updated ffmpeg to this version:


 {{{
 ffmpeg version 3.3-1~16.04.york1 Copyright (c) 2000-2017 the FFmpeg
 developers
   built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
   configuration: --prefix=/usr --extra-version='1~16.04.york1'
 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu
 --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping
 --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa
 --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
 --enable-libcdio --enable-libflite --enable-libfontconfig --enable-
 libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-
 libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus
 --enable-libpulse --enable-librubberband --enable-libshine --enable-
 libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-
 libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-
 libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-
 libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl
 --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint
 --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
   libavutil      55. 58.100 / 55. 58.100
   libavcodec     57. 89.100 / 57. 89.100
   libavformat    57. 71.100 / 57. 71.100
   libavdevice    57.  6.100 / 57.  6.100
   libavfilter     6. 82.100 /  6. 82.100
   libavresample   3.  5.  0 /  3.  5.  0
   libswscale      4.  6.100 /  4.  6.100
   libswresample   2.  7.100 /  2.  7.100
   libpostproc    54.  5.100 / 54.  5.100
 }}}


 Now ''select'' works well but I would prefer to use the official version
 for Ubuntu 16.04.

 Did you know about this issue?
 Are you planning to fix for Ubuntu 16.04?
 Are there other approaches to achieve the goal of the example?

 Thanks!

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


More information about the FFmpeg-trac mailing list