I want to know how to capture webcam video and dump the raw as well as an encoded version using ffmpeg. I want only the video stream. I'm on Windows xp.
3 Answers
From here, you can see a list of DirectShow devices with
ffmpeg -list_devices true -f dshow -i dummy
If you have a built-in webcam on a laptop, it should be called something like `"Integrated Camera", and you can capture from it using the following (obviously, substitute the name of your webcam device, and note that the quotes are required):
ffmpeg -f dshow -i video="Integrated Camera" -c copy raw.avi \
-c:v libx264 -preset veryfast -crf 25 encoded.mp4
You may be better off using huffyuv instead of raw video - it'll halve your filesize, but be completely lossless. Use -c:v huffyuv
instead of -c copy
.
-
Just used this to get headshots of someone who stole a number of PCs. Thank you, as this will surely result in an arrest at this point.– BeemsJan 18, 2018 at 21:31
Looks like you can do that using VLC, i.e.
vlc --dshow-vdev="Monitor Webcam" --dshow-size=640x480 -V dummy
--intf=dummy --dummy-quiet --video-filter=scene --no-audio
--scene-path=D:\temp --scene-format=jpeg --scene-prefix=snap
--scene-replace --run-time=1 --scene-ratio=24 "dshow://" vlc://quit
With mplayer/mencoder binary for windows.
Show output from web:
"C:\Program Files (x86)\MPlayer for Windows\mplayer.exe" -tv driver=dshow:device=0:adevice=0:audioid=1:input=2 tv://
Write output:
mencoder.exe -tv driver=dshow:device=0:adevice=0:audioid=1:input=2 tv:// -oac copy -ovc copy -o t.avi