Pythonでmp4動画を分割 その2

前回の記事の方法では、分割時に動画の画質が変わってしまっていたので、今回は画質を変えないまま変更する方法を紹介したいと思う。

MP4動画を分割するpythonのコード

import subprocess
import os

def split_video_ffmpeg(input_file, segment_length=900):
    # 入力ファイルのベース名と拡張子を分ける
    basename, ext = os.path.splitext(input_file)
    
    # FFmpegコマンドの構築
    output_pattern = f"{basename}_part%03d{ext}"
    command = [
        'ffmpeg', '-i', input_file,
        '-c', 'copy',  # コピーコーデックを使用して再エンコードしない
        '-map', '0',   # 全てのストリームを選択
        '-segment_time', str(segment_length),  # 分割する時間を指定(秒単位)
        '-f', 'segment',  # 分割を行うフォーマット
        '-reset_timestamps', '1',  # 各セグメントのタイムスタンプをリセット
        output_pattern  # 出力ファイル名のパターン
    ]
    
    # コマンドを実行
    subprocess.run(command, check=True)

input_file = "your_video.mp4"
split_video_ffmpeg(input_file)

input_file = “your_video.mp4” の部分をあなたの分割したいファイルに変更すればOK。

このコードはFFmpegを利用するので、まずFFmpegをインストールしてほしい。

FFmpegをインストールする方法

使用しているオペレーティングシステムによって、FFmpegのインストール方法が異なる。以下に、Windows、macOS、Linuxのそれぞれの方法を説明する。

WindowsでのFFmpegインストール方法

FFmpegのダウンロード

  • FFmpegの公式サイトにアクセスし、Windows用のビルドをダウンロードする。
  • 「Get packages & executable files」で「Windows builds from gyan.dev」をクリック。
  • 「FFmpeg Release Builds」で「ffmpeg-release-essentials.zip」などのファイルをダウンロード。

ファイルの解凍

  • ダウンロードしたZIPファイルを右クリックし、「すべて展開」またはお好きな解凍ツールで解凍。
  • 解凍後、ffmpeg.exeが含まれるフォルダを確認。

パスの設定

  • 解凍したフォルダに移動し、そのフォルダのパス(例:C:\path\to\ffmpeg\bin)をコピー。
  • 「スタートメニュー」を右クリックし、「システム」を選択。
  • 「システムの詳細設定」→「環境変数」をクリック。
  • 「システム環境変数」の中の「Path」を選択して「編集」をクリックし、「新規」をクリックして先ほどコピーしたパスを貼り付ける。
  • すべてのダイアログを「OK」で閉じる。

インストール確認

  • コマンドプロンプトを開き、ffmpeg -versionを入力。
  • 正しくインストールされていれば、FFmpegのバージョン情報が表示される。

macOSでのFFmpegインストール方法

Homebrewのインストール

Homebrewがインストールされていない場合、ターミナルを開いて以下のコマンドを実行。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

FFmpegのインストール

Homebrewがインストールされたら、以下のコマンドをターミナルに入力してFFmpegをインストール。

brew install ffmpeg

インストール確認

ffmpeg -versionを入力し、FFmpegのバージョン情報が表示されれば、インストールは成功。

LinuxでのFFmpegインストール方法

パッケージマネージャを使用したインストール

UbuntuやDebianベースのディストリビューションの場合、ターミナルで以下のコマンドを実行。

sudo apt update
sudo apt install ffmpeg

Fedoraの場合:

sudo dnf install ffmpeg

Arch Linuxの場合:

sudo pacman -S ffmpeg

インストール確認

ターミナルでffmpeg -versionを入力し、FFmpegのバージョン情報が表示されればインストールは成功。

という感じ。分割するならこっちのほうがスマートだったな、、、

コメント

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