Python OpenCV 動画のファイル形式を変更する方法

まくまく
まくまく
OpenCVで動画のファイル形式を変更してみようと思います。

mp4からaviへ変換

#ライブラリのインポート
import cv2

#VideoCaptureオブジェクトを取得
cap = cv2.VideoCapture('movie.mp4')

#動画のプロパティを取得
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
fps = cap.get(cv2.CAP_PROP_FPS)

#書き出し設定
fourcc = cv2.VideoWriter_fourcc('M','J','P','G')
writer = cv2.VideoWriter('mp4_to_avi.avi', fourcc, fps, (width, height))

while True:
    ret, frame = cap.read()
    writer.write(frame)
    if not ret:
        break

writer.release()
cap.release()

拡張子mp4の動画ファイルを読み込んでavi形式に変更して書き出しを実施しました。

aviからmp4へ変換

#ライブラリのインポート
import cv2

#VideoCaptureオブジェクトを取得
cap = cv2.VideoCapture('copy_avi.avi')

#動画のプロパティを取得
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
fps = cap.get(cv2.CAP_PROP_FPS)

#書き出し設定
fourcc = cv2.VideoWriter_fourcc('m','p','4','v')
writer = cv2.VideoWriter('avi_to_mp4.mp4', fourcc, fps, (width, height))

while True:
    ret, frame = cap.read()
    writer.write(frame)
    if not ret:
        break

writer.release()
cap.release()

反対に、拡張子aviの動画ファイルを読み込んでmp4形式に変更するにはこちらです。

最後の「release」を書き忘れると、処理が終わらなくなるので注意して下さい。

タイトルとURLをコピーしました