OpenCV无法读取ffmpeg视频

时间:2017-06-08 03:22:35

标签: opencv video ffmpeg

使用ffmpeg后,我无法在OpenCV(python和c ++)中读取视频帧。

具体来说,我遇到了以下问题:

1)无法使用VideoCapture打开视频文件。

2)能够使用VideoCapture打开视频文件,但是读取零帧和/或接收大小为0x0像素的帧。

我正在粘贴下面的解决方案,希望这会有助于其他人。

在Mac OS X Sierra 10.12.5,ffmpeg 3.2.4,Python 2.7.13,g ++ 4.2.1

上遇到了这些问题

1 个答案:

答案 0 :(得分:2)

1)OpenCV无法读取与ffmpeg一样多的视频格式。因此,通常可以在VLC中播放视频,但不能在OpenCV的VideoCapture中打开它们。因此,通常需要使用ffmpeg等工具进行转换(请参阅下一点)。一种对我有用的格式是h.264。

2)OpenCV似乎需要YUV420,而ffmpeg默认使用YUV444。因此,以下命令解决了我的问题:

ffmpeg -i input.avi -c:v libx264 -vf format=yuv420p output.mp4