The ffmpeg is cross-platform and very powerful software to handle video/audio or to stream it. On Linux ffmpeg can capture X11 screen with a command below:
ffmpeg -f x11grab -r 25 -s cif -i :0.0 out.mpeg
But is it possible to grab Windows Desktop with ffmpeg?
This will help for capturing the working screen on windows :
ffmpeg windows static version 4.2.2, screen recording with audio
to check your microphone
next copy your audio="YOUR MICROPHONE OR STEREO MIX", mine is "Microphone (Realtek High Definition Audio)".
This can be done without using
x11grab/xcbgrab/gdigrab
with help of the below commands inlinux
.To record a video,
To record a frame,
*this code is tried successfully on windows XP Sp3 and ffmpeg (last version 28/12/2012 for windows) -ffmpeg.exe must be copied in c:\windows\system32 directory for being accessed from anywhere from your PC) ScreenCapture can be downloaded for free (google). Install it (msi file). Its registered automatically from the (ScreenCapture.ax file). It's sent with an IscrenCapture.h file also.
-capture screen video and audio (adjust the device audio you have-mine is RealTek AC97 Audio) I cannot install params of UscreenCapture in registry (tried even on IscrenCapture.h file ).It always provide the full scren capture only. There is an error in registry location,in parameters types (dwords are specified by the author but reg_binary is installed)... then i used the crop() ffmpeg function to capture any region on the screen.the command line is :
xwidth
,xheight
are the width & height of the region want to capture.xleft
,xtop
the coord of the top left point of the rectangle capture.to capture video only can use
NB: x11grab dont work on windows (it's specifically for Linux/X11) can use wscript.shell to code the line command silently. i used the format video output as flv because i have the best rendering and small capacity.I dont success with mp4.
you can know your media devices with ffmpeg:
-you can record any sound from your pc with this command line (adapt the device you have):
http://nerdlogger.com/2011/11/03/stream-your-windows-desktop-using-ffmpeg/
explains how to do it.
basically, install uscreencapture dshow filter, then ffmpeg -f dshow -i video="UScreenCapture" out.mp4
Use the built-in GDI screengrabber (no install needed) like this :
This will capture ALL your displays as one big contiguous display.
If you want to limit to a region, and show the area being grabbed:
To grab the contents of the window named "Calculator":
I found that framerate 10 suits screen capture well (you can change it).
I have encoded to both files and streaming outputs and it works quite well.