[FFmpeg-user] desktop streaming
lou at lrcd.com
Wed Feb 19 19:24:53 CET 2014
On Wed, 19 Feb 2014 17:07:58 +0100
YuGiOhJCJ Mailing-List <yugiohjcj-mailinglist at laposte.net> wrote:
> On Wed, 19 Feb 2014 18:15:43 +0700
> nugroho <nugroho.redbuff at gmail.com> wrote:
> > Hi, I have ffmpeg installed in debian linux. I also have a flash
> > streaming server located at http://a.b.c.d/app/stream.
> > Now, I would like to stream my desktop include the sound to the
> > streaming server. So what kind of ffmpeg syntax should be? Is it like
> > this one bellow?
> > _ffmpeg -video_size 1024x768 -framerate 25 -f x11grab -i :0.0+100,200 -f
> > flv rtmp://a.b.c.d/app/__stream_
> > thanks for help!
> You have all the instructions you need here:
> In order to stream, I use the following command:
> ffmpeg -y -f alsa -i default -f x11grab -r 10 -s 640x480 -async 1 -i :0.0 -strict -2 -c:a aac -c:v libx264 -pix_fmt yuv420p -preset ultrafast -s 640x480 -threads 0 -ar 44100 -b:a 64k -b:v 64k -bufsize 64k -f flv "rtmp://live-fra.twitch.tv/app/`cat ~/twitch.key`"
* Is "-async 1" required?
* "-c:a libmp3lame" can be used instead of "-c:a aac -strict -2" if you
prefer its output.
* "-threads 0" is default for libx264, so you can omit that if you like.
* 64k for video is low (for almost all content at 640x480), but you
mentioned this already.
* You might be able to use a slower -preset depending on your hardware.
* "-framerate" should be used instead of "-r" for x11grab input.
* I believe Twitch recommends a Group of Pictures interval of 2 seconds,
so in your example that would be an output option of "-g 20".
* -bufsize for gaming is probably 1-2 seconds (I'm guessing here), so in
your example that would be maxrate * 1-2 = 64k-128k.
* -maxrate can be ~80% of your upload data rate speed - audio bitrate,
or if you have a fast upload data rate it can be the minimum download
data rate speed that you want your viewers to have without additional
More information about the ffmpeg-user