我目前在python中使用opencv来编写带压缩的视频。以下是代码中出错的部分内容。
fourcc=cv2.VideoWriter_fourcc(*'X264')
video = cv2.VideoWriter(outfiles[c],fourcc, fps, (width,height))
错误是
OpenCV:FFMPEG:标签0x34363258 /' X264'编解码器ID 28和表单不支持 在< mp4 / MP4(MPEG-4 Part 14)' OpenCV:FFMPEG:回退使用标签0x00000021 /'!???' 处理文件test_videos / solidYellowLeft.mp4 OpenCV:FFMPEG:标签0x34363258 /' X264'编解码器ID 28和表单不支持 在< mp4 / MP4(MPEG-4 Part 14)' OpenCV:FFMPEG:回退使用标签0x00000021 /'!???'
我已经为较新版本的H264编码下载了openh264-1.6.0-win64msvc.dll文件。我尝试过不同的类型,H264,X264,XVID,VIDX,不使用MJPG,因为它会生成一个大文件。将VideoWriter中的第5个选项设置为False(使其成为单个通道)也不起作用。如果您对如何解决此问题或尝试其他方法有建议,那将有很大帮助。如果您需要更多信息,请告诉我。
答案 0 :(得分:0)
如果有人遇到此错误,我会使用删除错误的后备标记解决此问题。
fourcc=0x00000021
答案 1 :(得分:0)
假设outfiles[c]
包含"out.mp4"
之类的文件名,以下代码在具有NVidia GPU的Ubuntu 16.04计算机上为我工作。
fourcc = cv.VideoWriter_fourcc(*"mp4v")
video = cv2.VideoWriter(outfiles[c],fourcc, fps, (width,height))
为jspiers欢呼,以回答here。