python 動画ファイル形式と解像度変換

opencv は 1 つだけで十分です。opencv は非常に強力です。
予防:

  1. source_path と sink_path を変更する必要があります。
  2. このバージョンは、mov サフィックスから avi サフィックスへの変換をサポートしており、実際の状況に応じてソース コードを変更する必要があります。
# 目标
# 1. 拷贝视频文件并修改后缀
# 2. 修改图片的分辨率
# 3. 批量完成

import os
import cv2
from pathlib import Path


source_path = r".\mov_video"
sink_path = r".\data\videos"

if not os.path.exists(source_path) or not os.path.exists(sink_path):
    print('Path not exit!')
    exit()

videos_list = os.listdir(source_path)

for video in videos_list:
    video_path = os.path.join(source_path, video)
    if Path(video_path).suffix in ['.MOV', '.mov']:
        # 修改后缀名
        dis_video_name = video
        dis_video_name = dis_video_name.replace(str(dis_video_name).split('.')[-1], 'avi')
        dis_path = os.path.join(sink_path, dis_video_name)

        # 进行转换
        cap = cv2.VideoCapture(video_path)
        success, _ = cap.read()
        # 重新合成的视频在原文件夹,如果需要分开,可以修改file_n
        video_writer = cv2.VideoWriter(dis_path, cv2.VideoWriter_fourcc(*'XVID'), 25, (1280, 720))
        while success:
            success, vid1 = cap.read()
            try:
                vid = cv2.resize(vid1, (1280, 720), interpolation=cv2.INTER_LINEAR)  # 希望的分辨率大小可以在这里改
                video_writer.write(vid)
            except:
                break
                

その他は無視できますが、参照リンクを読む必要があります:
OpenCV uses VideoWriter to create video (Python version) : この記事は非常によく書かれており、クラスとパラメーターが非常に明確に説明されています.
python+opencv ビデオ解像度のバッチ変更:この記事ではそれについて説明します実際のアプリケーションは、
Python を使用してビデオをコピーすることです。ファイルを読み取るようにビデオ ファイルをコピーします。

おすすめ

転載: blog.csdn.net/weixin_42442319/article/details/125716706
おすすめ