Welcome to Binary Revolution Forums
![]() |
|
| Guest Message © 2012 DevFuse | |
i am always having to look this up. now at least i'll have it here:
option by option:
-f x11grab = take video from X...ffmpeg must have been compiled with enable-x11grab included; your distro or version may or may not have this enabled!
-vc = Video Codec...usually you will have ogg theora, xvid, [ff]mpeg (the default), and x264 available
-s = size. see the ffmpeg man page for details; vga is something like 800x600 and there are many other sizes available. know that it starts from the top left corner counts pixels from there.
-r = frame rate. lower frame rate gives smaller file size but looks a little less smooth
-b = bitrate. higher bitrate looks better but makes for a larger file size
-g = GOP size...300 provides a pretty nice looking image without increasing file size too much; it's got one intra frame every...i dunno....300/24 = 12.5 seconds or so.
-i = input...in this case it's :0.0 meaning your main screen. or display. or whatever it's called.
As you can imagine, there are a LOT more options available to you via man ffmpeg. Probably the most notable would be the offset, so if you wanted the capture area to not start at the very top left, you could tell it to, say, go down 10 pixels and over 10 pixels and THEN capture vga-size images, or xga-size images, or whatever.
ffmpeg -f x11grab -vc theora -s vga -r 24 -b 1200 -g 300 -i :0.0 ~/Videos/screenCapture1.ogv
option by option:
-f x11grab = take video from X...ffmpeg must have been compiled with enable-x11grab included; your distro or version may or may not have this enabled!
-vc = Video Codec...usually you will have ogg theora, xvid, [ff]mpeg (the default), and x264 available
-s = size. see the ffmpeg man page for details; vga is something like 800x600 and there are many other sizes available. know that it starts from the top left corner counts pixels from there.
-r = frame rate. lower frame rate gives smaller file size but looks a little less smooth
-b = bitrate. higher bitrate looks better but makes for a larger file size
-g = GOP size...300 provides a pretty nice looking image without increasing file size too much; it's got one intra frame every...i dunno....300/24 = 12.5 seconds or so.
-i = input...in this case it's :0.0 meaning your main screen. or display. or whatever it's called.
As you can imagine, there are a LOT more options available to you via man ffmpeg. Probably the most notable would be the offset, so if you wanted the capture area to not start at the very top left, you could tell it to, say, go down 10 pixels and over 10 pixels and THEN capture vga-size images, or xga-size images, or whatever.
3 Comments On This Entry
Page 1 of 1
petr999
09 January 2009 - 04:12 AM
Great to get in contact here.
I mean this to say:
===
$ ffmpeg -vcodec libxvid -b 1200 -g 300 -vd x11:0,0 -s 1024x768 screenCapture1.xvid
FFmpeg version SVN-r14424, Copyright © 2000-2008 Fabrice Bellard, et al.
configuration: --cc=cc --prefix=/usr/local --disable-debug --enable-memalign-hack --enable-shared --enable-postproc --extra-cflags=-I/usr/local/include/vorbis -I/usr/local/include --extra-ldflags=-L/usr/local/lib -la52 --extra-libs=-pthread --enable-gpl --enable-pthreads --enable-swscale --mandir=/usr/local/man --enable-liba52 --enable-liba52bin --enable-libfaac --enable-libfaad --enable-libfaadbin --disable-libamr-nb --disable-libamr-wb --disable-mmx --enable-libgsm --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid
libavutil version: 49.7.0
libavcodec version: 51.61.0
libavformat version: 52.18.0
libavdevice version: 52.0.0
built on Jan 9 2009 12:11:23, gcc: 4.2.1 20070719 [FreeBSD]
ffmpeg: unrecognized option '-vd'
===
There is no really '-vd' described at http://ffmpeg.mplaye...ffmpeg-doc.html
Is this your mistake? :)
I mean this to say:
===
$ ffmpeg -vcodec libxvid -b 1200 -g 300 -vd x11:0,0 -s 1024x768 screenCapture1.xvid
FFmpeg version SVN-r14424, Copyright © 2000-2008 Fabrice Bellard, et al.
configuration: --cc=cc --prefix=/usr/local --disable-debug --enable-memalign-hack --enable-shared --enable-postproc --extra-cflags=-I/usr/local/include/vorbis -I/usr/local/include --extra-ldflags=-L/usr/local/lib -la52 --extra-libs=-pthread --enable-gpl --enable-pthreads --enable-swscale --mandir=/usr/local/man --enable-liba52 --enable-liba52bin --enable-libfaac --enable-libfaad --enable-libfaadbin --disable-libamr-nb --disable-libamr-wb --disable-mmx --enable-libgsm --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid
libavutil version: 49.7.0
libavcodec version: 51.61.0
libavformat version: 52.18.0
libavdevice version: 52.0.0
built on Jan 9 2009 12:11:23, gcc: 4.2.1 20070719 [FreeBSD]
ffmpeg: unrecognized option '-vd'
===
There is no really '-vd' described at http://ffmpeg.mplaye...ffmpeg-doc.html
Is this your mistake? :)
qubodup
06 April 2010 - 07:34 AM
Hi there, thanks for the command, but unfortunately
gives me a nearly empty ogv file. Using an .avi filename does work though. Perhaps my ffmpeg doesn't support theora. :|
Do you have ideas how to record a video, but in a max-performance, least-speedy way, so I could encode it later but enjoy a faster framerate?
If you reply, please press the "reply" button at the bottom right of this so I get notified :)
ffmpeg -f x11grab -vc theora -s vga -r 24 -b 1200 -g 300 -i :0.0 ./screenCapture1.ogv
gives me a nearly empty ogv file. Using an .avi filename does work though. Perhaps my ffmpeg doesn't support theora. :|
Do you have ideas how to record a video, but in a max-performance, least-speedy way, so I could encode it later but enjoy a faster framerate?
If you reply, please press the "reply" button at the bottom right of this so I get notified :)
Page 1 of 1
Sign In »
Register Now!
Help


3 Comments









