这是我的代码,用于在运行Raspbian Buster的Raspberry Pi 4上录制视频:

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)'

有没有办法列出所有受支持的编解码器及其标签?

最佳答案

这是所有fourcc编解码器的链接。

http://www.fourcc.org/codecs.php

某些编解码器在那里不存在,但就您而言,这不是错误,而只是一个后备,因此您的代码无论如何都在运行,并且在输出中您将获得mp4文件。

如果您不喜欢它的外观,请使用它

fourcc = cv2.VideoWriter_fourcc(*'mp4v')

要么
fourcc = 0x00000021

07-26 09:37