VideoWriter not writing anything

Aperta
#1,194 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
50/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
opencv, python

Direzione di ricerca

Inizia eseguendo il main.py fornito con video.mp4 nell’ambiente Python e OpenCV indicato, quindi esamina l’output.mp4 generato e la configurazione di VideoWriter. Confrontalo con l’out.mp4 convertito con ffmpeg che funziona; il lavoro è completato quando lo script stesso produce un output.mp4 riproducibile senza richiedere un passaggio di conversione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Description

cv2.VideoWriter is creating a file but not writing anything in the video

Environment

Ubuntu 25.04
Python 3.13.3
Open CV 4.13.0

How to recreate

Create main.py with the file content.
Create a video file named video.mp4
mkdir .venv
python -m venv .venv
. .venv/bin/activate
pip install opencv-contrib-python
python main.py
And I get the following output with a corrupted output.mp4 file:

OpenCV Version:
4.13.0
codec
1983148141
shape
(1576, 770)
fps
24.0

However, if I run
ffmpeg -i output.mp4 out.mp4
out.mp4 works

File

import cv2
import time

video = cv2.VideoCapture("video.mp4")

fps = video.get(cv2.CAP_PROP_FPS)
shape = (int(video.get(cv2.CAP_PROP_FRAME_WIDTH)), int(video.get(cv2.CAP_PROP_FRAME_HEIGHT)))
fourcc = cv2.VideoWriter_fourcc(*"mp4v")
writer = cv2.VideoWriter("output.mp4", fourcc, fps, shape)

print("OpenCV Version:")
print(cv2.__version__)
print("codec")
print(fourcc)
print("shape")
print(shape)
print("fps")
print(fps)

time.sleep(1.0)

while True:
    ret, frame = video.read()

    if not ret or frame is None:
        break

    if frame.ndim == 2:
        frame = cv2.cvtColor(frame, cv2.COLOR_GRAY2BGR)

    writer.write(frame)


video.release()
writer.release()

Lingua principale
Python
Stelle
5.4k
Fork
1k
Merge medio
22h 17m
PR unite (30g)
3

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di opencv/opencv-python

Tutte le issue di opencv/opencv-python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.