Задать вопрос

Почему при записи видео через opencv файл выходит испорченным?

Задача состоит в том, чтобы по вызову метода callback можно было включать и выключать запись видео через opencv
def callback():
    if not config.IS_REC:
        print("[INFO] Запись начата")
        config.IS_REC = True

        cap = cv2.VideoCapture(0)
        height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
        width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))

        fourcc = cv2.VideoWriter_fourcc(*'mp4v')
        config.OUTPUT = cv2.VideoWriter(f'videos/g.mp4', fourcc, 30, (width, height), isColor=True)
    else:
        print(f"[INFO] Запись закончена. Файл сохранился в папку videos")
        config.IS_REC = False

        config.OUTPUT.release()
        config.OUTPUT = None


В коде ошибок по идее нет и всё работает, только файл в результате оказывается испорченным. Пробовал менять расширение файла и fourcc, но не помогло. В чём проблема? Пересмотрел сотни статей и видеороликов, но так и не понял в чём дело. Буду благодарен за помощь
  • Вопрос задан
  • 64 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы