what is the codec for mp4 videos in python OpenCV

Suhail Ahmed Khan picture Suhail Ahmed Khan · May 7, 2015 · Viewed 49.8k times · Source
fourcc = cv2.cv.CV_FOURCC(*'XVID')

The above line is used for avi video. In the same fashion, which codec do we use for mp4 videos in Ubuntu?

Answer

Gonzalo Garcia picture Gonzalo Garcia · Apr 9, 2019

You can also use mp4v

fourcc = cv2.cv.CV_FOURCC(*'mp4v')

where the videowriter should look like this:

out = cv2.VideoWriter('output.mp4',fourcc, 15, size)

But there are more codecs available for mp4. You can see the list of them by setting fourcc = -1, it will show a list like this:

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
....

All of them supports mp4 but h264 is supported by Web browsers if you want to serve the video into the web.