fourcc = cv2.cv.CV_FOURCC(*'XVID')
以上行用于avi视频。以同样的方式,我们在Ubuntu中使用哪种编解码器用于mp4视频?
编解码器是H.264。
其中一个应该适合你:
fourcc = cv2.cv.CV_FOURCC(*'H264')
#or
#fourcc = cv2.cv.CV_FOURCC(*'X264')
但是,我应该警告你,你可能需要安装ffmpeg
和x264
库,因为你在Ubuntu中,尝试在终端中执行以下命令:
sudo apt-get install ffmpeg x264 libx264-dev
另外,请查看OpenCV教程中的this link,了解有关适用于您的平台的FourCC代码类型的更多详细信息。
在上面的链接中,它说X264
是你应该使用的FourCC代码,但是在它们之间切换直到你让它工作。
你也可以使用mp4v
fourcc = cv2.cv.CV_FOURCC(*'mp4v')
录像带应该是这样的:
out = cv2.VideoWriter('output.mp4',fourcc, 15, size)
但是有更多的编解码器可用于mp4。您可以通过设置fourcc = -1
查看它们的列表,它将显示如下列表:
OpenCV: FFMPEG: format mp4 / MP4 (MPEG-4 Part 14)
fourcc tag 0x7634706d/'mp4v' codec_id 000C
fourcc tag 0x31637661/'avc1' codec_id 001B
fourcc tag 0x33637661/'avc3' codec_id 001B
fourcc tag 0x31766568/'hev1' codec_id 00AD
fourcc tag 0x31637668/'hvc1' codec_id 00AD
fourcc tag 0x7634706d/'mp4v' codec_id 0002
fourcc tag 0x7634706d/'mp4v' codec_id 0001
fourcc tag 0x7634706d/'mp4v' codec_id 0007
fourcc tag 0x7634706d/'mp4v' codec_id 003D
....
所有这些都支持mp4,但如果您想将视频提供给网络,则Web浏览器支持h264
。
这是一个老问题。但是,如果有人在最近使用无法获取已保存视频的编解码器时遇到问题。他们可以使用0X00000021
作为OpenCV 3及更高版本的编解码器值。