I'm preparing a script to take a feed coming in over SDI and encode it into multiple video and audio streams, all for distribution to different stream paths using the tee muxer.
I'm sending quite a few different mixes of the streams to an RTMP server which means that my tee muxer is taking quite a large argument. My command line is shown below. ffmpeg -threads 0 -f decklink -i 'UltraStudio Mini Recorder@11' -loglevel debug \ -filter_complex "[0:v]split=2[VID1][VID2];[0:a]channelsplit=channel_layout=stereo[AL][AR]" -map '[AR]' -map '[AL]' -map '[VID1]' -map '[VID2]' -flags +global_header -c:v libx264 -profile:v high -preset veryfast -pix_fmt yuv420p -r 25 -s:v:0 640x360 -s:v:1 426x240 -b:v:0 484k -b:v:1 215k -bufsize 1500k -coder 1 -g 125 -keyint_min 25 -c:a aac -b:a 64k -ar 44100 -async 1 -rtmp_flashver "FMLE/3.0(compatible;FMSc/1.0)" -rtmp_live live -f tee "[select=\'a:0,v:0\':f=flv]'${entrypoint}${streampath1}${datavid11}'| \ [select=\'a:1,v:0\':f=flv]'${entrypoint}${streampath2}${datavid11}'| \ [select=\'a:0,v:1\':f=flv]'${entrypoint}${streampath1}${datavid12}'| \ [select=\'a:1,v:1\':f=flv]'${entrypoint}${streampath2}${datavid12}'| \ [select=\'a:0\':f=flv]'${entrypoint}${streampath1}${dataaud11}'| \ [select=\'a:1\':f=flv]'${entrypoint}${streampath2}${dataaud11}'" All of the output streams up until the last one (with a:1) connect to the server and begin streaming. The issue comes when ffmpeg tries to connect to the final stream. The stream path is cut off for some reason. This results in ffmpeg trying to connect to a stream path that is incomplete and therefore failing. [tcp @ 0x7fa0dc414180] Failed to resolve hostname p.epXXXXXX.i.ak: nodename nor servname provided, or not known [rtmp @ 0x7fa0dc414100] Cannot open connection tcp://p.epXXXXX.i.ak:1935 [tee @ 0x7fa0de801800] Slave '[select='a:1':f=flv]rtmp://XXXXXXX:xxxx...@p.epxxxxxx.i.ak': error opening: Input/output error [tee @ 0x7fa0de801800] Slave muxer #5 failed, aborting. I have confirmed that removing characters within the inverted commas ("") after the tee statement allows more of the stream path to be processed by ffmpeg and inversely adding characters within the "" results in less of the stream path being processed by ffmpeg. The characters can be related to any of the commands within the "" and don't need to specifically be any part of the stream paths. To me this looks as if the tee muxer has an undocumented, maximum character input limit for the argument that it takes within the inverted commas. Would any devs or users be able to confirm this based on experience/a deeper knowledge of the code? -- Kind regards, Luke Harrison _______________________________________________ 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".