OpenCV无法读取ffmpeg视频
在使用ffmpeg之后,我无法在OpenCV(python和c++)中读取视频帧 具体来说,我有以下问题: 1) 无法使用OpenCV无法读取ffmpeg视频,opencv,video,ffmpeg,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上遇到的。OpenCV无法读取ffmpeg那样多的视频格式。因此,通
VideoCapture
打开视频文件
2) 能够使用VideoCapture
打开视频文件,但读取零帧和/或接收大小为0x0像素的帧
我将我的解决方案粘贴在下面,希望这能帮助其他人
这些问题是在Mac OS X Sierra 10.12.5、ffmpeg 3.2.4、Python 2.7.13、g++4.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
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