Запись видео с помощью OpenCV + Python + Mac

Я все время получаю ошибку утверждения, когда пытаюсь записывать кадры в видео. Я получаю следующую ошибку:

Traceback (most recent call last):
  File "VideoMixer.py", line 23, in <module>
    cv.WriteFrame(writer, cv.LoadImage(fileName))
cv.error: dst.data == dst0.data

Вот мой сценарий:

import cv
import sys

files = sys.argv[1:]

for f in files:
    capture = cv.CaptureFromFile(f)
    height = cv.GetCaptureProperty(capture, cv.CV_CAP_PROP_FRAME_WIDTH)
    width = cv.GetCaptureProperty(capture, cv.CV_CAP_PROP_FRAME_HEIGHT)
    fps = cv.GetCaptureProperty(capture, cv.CV_CAP_PROP_FPS)
    fourcc = cv.GetCaptureProperty(capture, cv.CV_CAP_PROP_FOURCC)
    print fourcc
    writer = cv.CreateVideoWriter('ok.mov', int(fourcc),fps,(int(width),int(height)),1)
    print writer
    for i in range(30):
        frame = cv.QueryFrame(capture)
        print frame
        if frame:
            cv.WriteFrame(writer, frame)

Сохранение кадров в виде изображений работает нормально, поэтому я знаю, что с захватом все в порядке. Я неправильно создаю писателя? Команда print fourcc выводит 0.0, но я пробовал использовать много значений FOUR_CC.

Спасибо!

7
задан rgbrgb 24 March 2011 в 23:04
поделиться