> Hello, > > i am trying to transcode a live UDP stream into 4 rtmp output stream using > a single ffmpeg process but my command line display this error : "At least > one output file must be specified". > > The command i am using is : > > ffmpeg -i udp://224.0.0.1:1234 \ > -vf > "crop=iw-5:ih-5:5:5,yadif,split=2[out0][out1];[out0]scale=1280:720,split=2[src0][src1];[out1]scale=848:480,split=2[src2][src3]" > \ > -map "[src0]" -aspect 16:9 -r 25 -vb 2500k -vcodec libx264 -vprofile > baseline -g 50 -acodec libfdk_aac -ac 2 -ar 48000 -ab 128k -async 1 -f flv > rtmp://192.168.1.1/live/test_2500 \ > -map "[src1]" -aspect 16:9 -r 25 -vb 1500k -vcodec libx264 -vprofile > baseline -g 50 -acodec libfdk_aac -ac 2 -ar 48000 -ab 128k -async 1 -f flv > rtmp://192.168.1.1/live/test_1500 \ > -map "[src2]" -aspect 16:9 -r 25 -vb 700k -vcodec libx264 -vprofile > baseline -g 50 -acodec libfdk_aac -ac 2 -ar 48000 -ab 128k -async 1 -f flv > rtmp://192.168.1.1/live/test_800 \ > -map "[src3]" -aspect 16:9 -r 25 -vb 250k -vcodec libx264 -vprofile > baseline -g 50 -acodec libfdk_aac -ac 1 -ar 48000 -ab 48k -async 1 -f flv > rtmp://192.168.1.1/live/test_300 > > Basically, i am trying to use video filters to crop & deinterlace the > input only once, then split in 2, scale into 2 different resolution and > again split each resolution in 2 and finally use -map option to encode > each filter output. > > My FFmpeg version is compiled today from git sources : > > ffmpeg version git-2014-07-21-4927c0a Copyright (c) 2000-2014 the FFmpeg > developers > built on Jul 21 2014 15:44:04 with gcc 4.7 (Debian 4.7.2-5) > configuration: --enable-x11grab --enable-gpl --enable-libfaac > --enable-libfdk-aac --enable-libopus --enable-libmp3lame > --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp > --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 > --enable-nonfree --enable-version3 --enable-avresample > libavutil 52. 92.101 / 52. 92.101 > libavcodec 55. 69.100 / 55. 69.100 > libavformat 55. 48.101 / 55. 48.101 > libavdevice 55. 13.102 / 55. 13.102 > libavfilter 4. 11.102 / 4. 11.102 > libavresample 1. 3. 0 / 1. 3. 0 > libswscale 2. 6.100 / 2. 6.100 > libswresample 0. 19.100 / 0. 19.100 > libpostproc 52. 3.100 / 52. 3.100 > > Does someone see which could be the reason it does not work ? > > Thank you for help. > > > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-user >
My command is now working, but i have only video in my outputs. Can someone give me a tips on how also inject audio in outputs ? My "working" command line is currently (splited in several lines for easier reading) : ffmpeg -i "udp://224.0.0.1:1234?overrun_nonfatal=0&fifo_size=1000000" -filter_complex "crop=iw-5:ih-5:5:5,yadif,split=2[out0][out1]; [out0]scale=1280:720,split=2[src0][src1]; [out1]scale=848:480,split=2[src2][src3]" -map "[src0]" -aspect 16:9 -r 25 -vb 2500k -vcodec libx264 -vprofile baseline -g 50 -acodec libfdk_aac -ac 2 -ar 48000 -ab 128k -async 1 -f flv rtmp://192.168.1.1/live/test_2500 -map "[src1]" -aspect 16:9 -r 25 -vb 1500k -vcodec libx264 -vprofile baseline -g 50 -acodec libfdk_aac -ac 2 -ar 48000 -ab 128k -async 1 -f flv rtmp://192.168.1.1/live/test2_1500 -map "[src2]" -aspect 16:9 -r 25 -vb 700k -vcodec libx264 -vprofile baseline -g 50 -acodec libfdk_aac -ac 2 -ar 48000 -ab 128k -async 1 -f flv rtmp://192.168.1.1/live/test2_800 -map "[src3]" -aspect 16:9 -r 25 -vb 250k -vcodec libx264 -vprofile baseline -g 50 -acodec libfdk_aac -ac 1 -ar 48000 -ab 48k -async 1 -f flv rtmp://192.168.1.1/live/test2_300 _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user