最简单的从网络摄像头抓取视频:如何

最简单的从网络摄像头抓取视频:如何

在 Raspbery Pi 的 Raspbian(基于 Debian Wheezy)上,我尝试通过 ffmpeg/avconv 从 Logitech C910 网络摄像头进行最简单的视频抓取并将其转换为视频文件。

我说:

$ avconv -t 5 -f video4linux2 -s 320x240 -r 30 -i /dev/video0 -vcodec mpeg1video out.avi

但得到

avconv version 0.8.6-6:0.8.6-1+rpi1, Copyright (c) 2000-2013 the Libav developers
  built on Mar 31 2013 13:58:10 with gcc 4.6.3
[video4linux2 @ 0x1371840] Cannot find a proper format for codec_id 0, pix_fmt -1.
/dev/video0: Input/output error

line video4linux2 建议,问题出在输入编解码器上,而不是输出上?

可能是我没有安装某些包?

怎么了?看来,这个解决方案应该很简单。谢谢。

答案1

我在 logitech C310 和 raspbian 上看到了这个问题。经过一番探索,我找到了一些有关所需像素格式的帮助。

$ sudo apt-get install v4l-utils
...
$ sudo v4l2-ctl --list-formats
    ioctl: VIDIOC_ENUM_FMT
    Index       : 0
    Type        : Video Capture
    Pixel Format: 'YUYV'
    Name        : YUV 4:2:2 (YUYV)

    Index       : 1
    Type        : Video Capture
    Pixel Format: 'MJPG' (compressed)
    Name        : MJPEG

在 ffmpeg 命令行中添加“-pix_fmt yuyv422”即可使其再次运行。

相关内容