保存视频在 opencv2 中不起作用-python

Saving videos doesnt work in opencv2-python

我正在尝试 运行 这个用于保存视频的示例代码:

cap = cv2.VideoCapture('input.mp4')

fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))

while(cap.isOpened()):
    ret, frame = cap.read()
    if ret==True:
        out.write(frame)
        cv2.imshow('frame',frame)
    else:
        break

cap.release()
out.release()
cv2.destroyAllWindows()

显示视频没有问题,但是'output.avi'只是一个100kb的文件,无法用任何视频播放器打开。 我尝试从 *'XVID' 更改编解码器。我尝试了至少 100 种来自 http://www.fourcc.org/codecs.php 的不同编解码器类型,结果相同。不幸的是,我 运行 没有想法。 我该如何解决这个问题?

提前致谢。

对于 OpenCV 2.4.X,您需要更改 cv2.VideoWriter_fourcc(*'XVID')

函数 cv2.cv.FOURCC(*'XVID') .