2

大约五年来,我在 shell 脚本中使用 ffmpeg 从我的 linux'd-up Macbook 的 iSight 中抓取一帧:

ffmpeg -f video4linux2 -s 640x480 -r 15 -i /dev/video0 -an -vframes 1 -vcodec mjpeg -y -sameq -ss 1.5 snapshot.jpg

我刚刚将我的 Ubuntu 发行版从 Lucid 升级到了 Natty(ffmpeg 版本 0.6.2-4:0.6.2-1ubuntu1)。现在,该语法打开了 iSight,但无限期挂起。

[output snipped, ending with:]
frame=    0 fps=  0 q=0.0 Lsize=      -0kB time=10000000000.00 bitrate=  -0.0kbits/s    
video:0kB audio:0kB global headers:0kB muxing overhead -inf%

如果没有“-ss”标志,它似乎成功地抓取了第一帧并立即退出——输出的唯一区别是:

frame=    1 fps=  0 q=0.0 Lsize=      -0kB time=0.07 bitrate=  -2.6kbits/s    
video:16kB audio:0kB global headers:0kB muxing overhead -100.132730%

但是,“-ss 1.5”对于将帧捕获延迟 1.5 秒是必要的,以使相机有足够的时间来调整曝光。

-itsoffset 标志似乎很有希望,但似乎并没有改变 ffmpeg 的行为(即不挂起,但没有延迟)。

有任何想法吗?

4

0 回答 0