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

标签 python opencv video raspberry-pi codec

这是我在运行 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

关于python - 使用 python、opencv 列出 Raspberry Pi 4 上所有支持的编解码器/fourcc 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57983110/

相关文章:

python - 验证代码和文档匹配

video - 如何使用 ffmpeg 每 15 秒将 10 秒的无声音频(没有图像或视频或黑色视频的空音频)插入视频重复?

java - 使用 Kivy (Python) 在 Android 上录制视频

python - tkinter 中的变量替换

python - 删除 DataFrame 中的多个空白

OpenCV 中的 Python 线程问题

linux - 我如何远程处理(低延迟)Raspicam 输出?

video - 使用 FFmpeg 在特定时间将视频叠加到另一个视频上

python - 跨多个日期列进行插值

opencv - 训练分类器以仅检测睫毛/ Nose 功能dlib和opencv?