| 6 | | For windows you should probably use the "dshow" input source, like this: |
| 7 | | {{{ |
| 8 | | ffmpeg -f dshow -r 25 -s 640x480 -i video="USB2.0_Camera":audio="Microphone (USB Audio Device)" output.avi |
| 9 | | }}} |
| 10 | | |
| 11 | | To list all available devices, you can type: |
| 12 | | {{{ |
| 13 | | ffmpeg -f dshow -list_devices true -i dummy |
| 14 | | }}} |
| 15 | | |
| 16 | | To list all the options that one device supports, you can type: |
| 17 | | {{{ |
| 18 | | ffmpeg -f dshow -list_options true -i video=<video device> |
| 19 | | }}} |
| 20 | | |
| 21 | | ffmpeg can also take dshow (DirectShow) as input by creating an avisynth file (.avs file) that itself gets input from a graphedit file, which graphedit file exposes a pin of your capture source or any filter really, ex ("yo.avs"): |
| 22 | | |
| 23 | | DirectShowSource("push2.GRF", fps=35, audio=False, framecount=1000000) |
| 24 | | |
| 25 | | Also this note that "The input string is in the format video=<video device name>:audio=<audio device name>. It is possible to have two separate inputs (like -f dshow -i audio=foo -f dshow -i video=bar) but my limited tests had shown a better synchronism when both were used in the same input." |
| | 6 | For windows you should probably use the "dshow" (DirectShow) FFmpeg input source. See DirectShow. |