|Version 1 (modified by burek, 11 months ago) (diff)|
On Windows, we can use vfwcap input device to capture live input (such as web camera).
First, we'll try to list the supported capture devices, connected to our machine:
ffmpeg -y -f vfwcap -i list
That will give us the list like this:
... libavutil 50.36. 0 / 50.36. 0 libavcore 0.16. 1 / 0.16. 1 libavcodec 52.108. 0 / 52.108. 0 libavformat 52.93. 0 / 52.93. 0 libavdevice 52. 2. 3 / 52. 2. 3 libavfilter 1.74. 0 / 1.74. 0 libswscale 0.12. 0 / 0.12. 0 [vfwcap @ 01c6d150] Driver 0 [vfwcap @ 01c6d150] Microsoft WDM Image Capture (Win32) [vfwcap @ 01c6d150] Version: 5.1.2600.5512 list: Input/output error
Now, we can try to grab something from our camera, with something like this:
ffmpeg -y -f vfwcap -r 25 -i 0 out.mp4
Where "-i 0" is the index (zero based) in the list of present capture devices ("Driver 0").
On Linux, we can use video4linux2 input device to capture live input (such as web camera), like this:
ffmpeg -f video4linux2 -r 25 -s 640x480 -i /dev/video0 out.avi
If you need to set some specific parameters of your camera, you can do that using v4l2-ctl tool.
You can find it in ubuntu/debian package named v4l-utils.
Most probably you'll want to know what frame sizes / frame rates your camera supports and you can do that using: v4l2-ctl --list-formats-ext
Also, you might want to correct brightness, zoom, focus, etc. with:
v4l2-ctl -c <option>=<value>