Python OpenCV2 cv2.cv_fourcc no funciona con VideoWriter

Como indica el título, cuando ejecuto la función cv2.videowriter, obtengo el objeto ‘módulo’ que no tiene atributo CV_FOURCC.

Código:

# Creates a video file from webcam stream import cv2 Create test window cv2.namedWindow("cam_out", cv2.CV_WINDOW_AUTOSIZE) # Create vid cap object vid = cv2.VideoCapture(1) # Create video writer object vidwrite = cv2.VideoWriter(['testvideo', cv2.CV_FOURCC('M','J','P','G'), 25, (640,480),True]) 

Un poco tarde para la fiesta, pero si alguien lo necesita para las versiones más nuevas de opencv2, el comando es:

 cv2.VideoWriter_fourcc(c1, c2, c3, c4) 

Cambie cv2.CV_FOURCC('M','J','P','G') a cv2.cv.CV_FOURCC('M','J','P','G') .

Para OpenCV 3 haz esto:

cv2.VideoWriter_fourcc(*'MJPG')

crédito @SiffgyF

Con OpenCV 3:

 # Create video writer object vidwrite = cv2.VideoWriter('testvideo.avi', cv2.VideoWriter_fourcc(*'XVID'), 25, (640,480),True) 

puede encontrar el ejemplo en “opencv_install_dir \ sources \ doc \ py_tutorials \ py_gui \ py_video_display \ py_video_display.markdown”

ps: No puedo encontrar ninguna descripción con ‘cv2.VideoWriter_fourcc (…)’ en la documentación oficial.

Por experiencia, si está en OSX, esto es lo que me funcionó cuando escribí en archivos mp4:

fourcc = cv2.VideoWriter_fourcc(*'MP4V')

Yo uso este código:

 fourcc = cv2.CV_FOURCC(*'XVID')