FFmpeg セットアップ — Win 11 WSL(Ubuntu) 対応


最近 Sora2 関連などFFmepgを利用するツールをちょくちょく作るようになりました。配布にあたり今更ながらwingetが一番楽だったのでメモしておきます。Python 向けの注意点含みます。


1. FFpeg

FFmpeg は動画・音声の変換や結合、サムネイル抽出などを行うツールです。 Sora2 ツールでは、生成した動画フレームを mp4 に変換する後処理で使用します。


2. Windows 11 側でのインストール

Windows 11 には winget(Windows Package Manager)が標準搭載されています。 Linux の apt と同様に CLI でソフトを導入できます。

インストール確認

winget --version

出力例:

v1.7.11261

もし認識されない場合は、Microsoft Store で 「App Installer」 を更新してください。

App Installer マイクロソフトサイト

https://learn.microsoft.com/ja-jp/windows/msix/app-installer/install-update-app-installer

FFmpeg のインストール

winget install ffmpeg

インストール後、次のコマンドで確認:

ffmpeg -version

出力例:

ffmpeg version 6.1.1-full_build-www.gyan.dev Copyright ...

ffmepgの更新・アンインストール(Win11)

# 更新
winget upgrade ffmpeg

# アンインストール
winget uninstall ffmpeg

インストール先

通常は以下のパスに配置されます:

C:Program Filesffmpegbin

3. WSL (Ubuntu) 側でのインストール

WSL 上では Linux 版 FFmpeg を利用します。 Windows 版を流用する必要も、再ビルドする必要もありません。

標準リポジトリからインストール

sudo apt update
sudo apt install ffmpeg

確認:

ffmpeg -version

出力例:

ffmpeg version 6.0-2ubuntu1 Copyright ...
built with gcc 13.2.0 (Ubuntu 13.2.0-4ubuntu2)

最新版を使いたい場合(static build)

wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
tar -xJf ffmpeg-release-amd64-static.tar.xz
sudo mv ffmpeg-*-amd64-static/ffmpeg /usr/local/bin/
sudo mv ffmpeg-*-amd64-static/ffprobe /usr/local/bin/

これで最新版を /usr/local/bin/ffmpeg に配置できます。


4. 実行環境ごとの使い分け

項目 Windows 11 WSL (Ubuntu)
管理方法 winget / chocolatey apt / static build
バイナリ形式 .exe (PE) ELF (Linux)
パス例 C:Program Filesffmpegbinffmpeg.exe /usr/bin/ffmpeg
利用用途 Windows ネイティブ CLI, PyInstaller バイナリ WSL 上の Python / CLI
相互利用 非推奨(/mnt 経由は遅い) 各環境内で完結させる

5. Python からの確認

import shutil
print(shutil.which("ffmpeg"))

出力例:

/usr/bin/ffmpeg

または Windows では:

C:Program Filesffmpegbinffmpeg.exe

この確認ができれば、subprocess.run() から正常に利用できます。


6. PyInstaller 配布時の方針

PyInstaller バイナリには FFmpeg を同梱しない方が安全です。 実行時に PATH 検出を行い、見つからない場合は明示的にエラーを表示します。

例(CLI エラーメッセージ):

FFmpeg が見つかりません。
Ubuntu 環境では次のコマンドでインストールしてください:
  sudo apt install ffmpeg
Windows では:
  winget install ffmpeg

7. トラブルシューティング

症状 原因 対処
E: Unable to locate package ffmepg タイプミス(ffmpeg のスペル誤り) sudo apt install ffmpeg に修正
ffmpeg: command not found PATH に通っていない which ffmpeg で場所を確認
Windows で ffmpeg が動かない PATH 未設定 winget インストールで自動登録される
WSL から Windows ffmpeg.exe を呼ぶ パス構文不一致 各 OS 環境のバイナリを使用

参考情報