这是我在Raspberry Pi 4上录制运行Raspbian Buster的视频的代码:
fourcc = cv2.VideoWriter_fourcc(*'MJPG')
writer = cv2.VideoWriter(tempVideo.path, fourcc, framerate, resolution, True)
writer.write(frame)
然而,无论我尝试什么编解码器,我总是得到错误,如:
OpenCV: FFMPEG: tag 0x47504a4d/'MJPG' is not supported with codec id 7 and format 'mp4 / MP4 (MPEG-4 Part 14)'
OpenCV: FFMPEG: fallback to use tag 0x7634706d/'mp4v'
设置fourcc = 1
也没有帮助。下面是我看到的:
OpenCV: FFMPEG: tag 0xffffffff/'????' is not found (format 'mp4 / MP4 (MPEG-4 Part 14)'
是否有方法列出所有支持的编解码器及其标签?
2条答案
按热度按时间t2a7ltrp1#
这并不是这个问题的确切答案,但最终帮助我的是
cv2.getBuildInformation()
,它显示了特定的opencv版本支持哪些视频格式。tzcvj98z2#
这里是所有fourcc编解码器的链接。
http://www.fourcc.org/codecs.php
有些编解码器不存在,但在您的情况下,这不是一个错误,它只是一个回退,所以您的代码仍然运行,并在输出中您将获得您的mp4文件。
如果你不喜欢它的样子就用这个
或