使用python、opencv列出Raspberry Pi 4上所有支持的编解码器/fourcc标签

hrysbysz  于 2022-11-15  发布在  Python
关注(0)|答案(2)|浏览(197)

这是我在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)'

是否有方法列出所有支持的编解码器及其标签?

t2a7ltrp

t2a7ltrp1#

这并不是这个问题的确切答案,但最终帮助我的是cv2.getBuildInformation(),它显示了特定的opencv版本支持哪些视频格式。

tzcvj98z

tzcvj98z2#

这里是所有fourcc编解码器的链接。
http://www.fourcc.org/codecs.php
有些编解码器不存在,但在您的情况下,这不是一个错误,它只是一个回退,所以您的代码仍然运行,并在输出中您将获得您的mp4文件。
如果你不喜欢它的样子就用这个

fourcc = cv2.VideoWriter_fourcc(*'mp4v')

fourcc = 0x00000021

相关问题