FFmpegは、動画や音声を編集するためのフリーソフトです。
CUIなので、コマンドによって動画・音声を編集することができます。
本記事では、Windows 11へのFFmpegのインストール方法をご紹介します。
実施環境
■ハードウェア環境
項目 | 情報 |
---|---|
OS | Windows 11 Home 64bit |
CPU | AMD Ryzen 9 5900HX |
メモリ | 16.0 GB LPDDR4X-4266 |
ストレージ | SSD:512 GB NVMe HFM512GD3JX013N |
スペックの詳細はこちらの記事に書いています。
■ソフトウェア環境
項目 | 備考 |
---|---|
FFmpeg | 公式サイトからダウンロード |
FFmpegの導入方法
導入の流れは、以下のようになります。
- Step 1FFmpegのダウンロード
- Step 2環境変数の設定(Pathを通す)
- Step 3インストールできたかの確認
導入については、主にこちらの記事を参考にさせていただきました。
FFmpegのダウンロード
1. FFmpegの公式サイトにアクセスして、「Download」をクリックする。
2. 青色のWindowsマークを選んで、「Windows builds by BtbN」をクリックする[1]。
3. 「ffmpeg-master-latest-win64-gpl-shared.zip」をクリックして、ダウンロードする。
4. ダウンロードしたzipファイルを展開する。
5. Cドライブ直下に「ffmpeg」フォルダを作成し、その中に展開したフォルダの中身を移動させる。
これでFFmpegのダウンロードとファイルの配置は終了です。
環境変数の設定(Pathを通す)
次に、実行ファイル(exeファイル)を配置した場所の環境変数の設定を行う[2]。
1. まずWindowsキーを押して「環境変数」と入力し、「システム環境変数の編集」を開く。
2. 「システムのプロパティ」にある「環境編集(N)」をクリック。
3. 「〇〇のユーザー環境変数(U)」にある項目のうち「Path」を選択して、「編集」をクリック[3]。
4. 下のような画面が表示される。
4. FFmpegの実行ファイルが置かれているフォルダを探して、パスをコピーする。今回の場合、パスは「C:\ffmpeg\bin」となる。
5. 下のウィンドウの「新規」を押し、コピーしたパスを貼り付けて「OK」を押す。
以上で、環境変数の設定は終了です。
インストールできたかの確認
最後に、FFmpegがきちんとインストールできているかを確認する。
1. Windowsキーを押して「cmd」と入力し、「コマンドプロンプト」を開く。
2. コマンドプロンプトが開けたら、FFmpegのバージョンを確認するコマンドを実行する。
ffmpeg -version
ffmpeg version N-110014-ga6e9d01f88-20230315 Copyright (c) 2000-2023 the FFmpeg developers
3. 上のように表示されてたらOK。ちなみにコマンドプロンプトを終了するコマンドはexit
。
以上で、FFmpegのインストールは完了です。
まとめ
今回は、FFmpegをWindows 11にインストールする方法をご紹介しました。
次の記事では、FFmpegを用いて「動画の結合・変換・圧縮」を行う方法をご紹介しています。
もしお時間があったら、覗いてみてください。
注釈
[1] FFmpegのバージョンについて
私は何も考えずにインストールしてしまったのですが、FFmpegはバージョンによって違いがあるそうです。
以下の記事がとても詳しく、分かりやすく解説されていました。
個人的に気になっていた「gpl」「lgpl」に関しては、
GPL、LGPL というのは、このようなソフトウェアを利用する際のライセンスの種類で、他にも MPL、BSD、MIT など、さまざまなものがあります。
FFmpegのインストールはどのバージョンを選べばいい? | もいすちゃんぶろぐ
という説明がありました。なるほど、ライセンスの種類のことだったんですね。
ここで、わわわIT用語辞典「GPL【ライセンス】」によると、GPLは「GNU General Public License」の略で、
1.自己責任で好きに使え
GPL【ライセンス】とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
2.著作権の表示は消すな
3.複製・改変・再配布・販売等は自由にやれ
4.再配布する物もGPLライセンスにしろ
というような内容だそうです。こういったライセンスの考え方を「コピーレフト」というらしいです。
また、わわわIT用語辞典「LGPL【ライセンス】」によると、LGPLは「GNU Lesser General Public License」の略で、「GPLライセンスの縛りが少しゆるくなったライセンス形態」のことだそうです。
ちなみに「Lesser」とは、「より小さい、より少ない」という意味で、little の比較級です(参考:大学受験予備校apsアカデミー)。レッサーパンダの「レッサー」は「lesser」と書きますが、英語圏では「red panda」と呼ばれることの方が多いそうです(参考:日刊英語ライフ)。
話を戻すと、上記のGPLの説明には「4.再配布する物もGPLライセンスにしろ」がありましたが、LGPLでは、LGPLライセンスが適用されたモジュールをライブラリとして呼び出すだけの場合は、それを利用するソフトウェアはLGPLライセンスを適用する必要はない、ということのようです。
<本文に戻る>
[2] 環境変数の設定(Pathを通す)とは?
FFmpegの実行ファイルを配置した場所のPathを通す、という操作を行いましたが、そもそも「Pathを通す」とはどういうことなのでしょうか。
以下の記事で、とても分かりやすく解説されていました。
「PATH を通す」とは
特定のプログラムを「プログラム名だけで実行できるようにする」こと。
もっと言うと、プログラム名だけで実行できるようにするために、PATH という環境変数(設定の一種)に「このプログラムも名前だけで実行できるようにしてください」という値を追加すること。
「PATH を通す」の意味をできるだけわかりやすく説明する試み – Qiita
たとえば今回の場合は、コマンドプロンプトでFFmpegのバージョンを確認する際に「ffmpeg -version」というコマンドを使用しましたが、Pathが通っていない場合は「FFmpegのバージョン確認が上手くいかないとき」にもあるように、「ffmpeg」というコマンド名が認識されず、エラーが出てしまいます。
実はこれは「ffmpeg.exe」という実行ファイルに対してバージョンを確認しているため、「ffmpeg.exe」の置かれている場所が分からないと、コマンドを実行することができません。
そこで、本来であれば「C:\ffmpeg\bin\ffmpeg.exe」というフルパスを指定して、コマンドを実行すればよいのですが、毎回この長いパスを入力するのは面倒です。
そのため、環境変数のPathに実行ファイルが置かれている場所を登録することで、実行ファイルのプログラム名「ffmpeg.exe」だけでコマンドを実行できるようにします。これが環境変数の設定(Pathを通す)を行う目的です。
ちなみに、上のFFmpegのバージョン確認のコマンドでは「ffmpeg.exe -version」ではなく「ffmpeg -version」だけで実行できていますが、これはPATHEXTという環境変数に「.EXE」が登録されており、コマンド名の拡張子が省略されている場合はそれを補完してファイルを探してくれるため「ffmpeg」だけでも実行できた、ということらしいです。
コマンドプロンプトでpathextを調べると、次のようになりました。
C:\>echo %pathext%
.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
これらの拡張子は、省略しても補ってくれるみたいです。
<本文に戻る>
[3] ユーザー環境変数とシステム環境変数の違い
環境変数には「ユーザー環境変数」と「システム環境変数」の2種類があり、その両方に「Path」があります。
それらの違いについて、こちらの記事で分かりやすく説明されていました。
システム環境変数とユーザー環境変数の違い | mktia’s note
- システム環境変数:同じ PC 内で共有されている環境変数
- ユーザー環境変数:ログインしているユーザーの環境に適用される環境変数
つまり、設定した環境変数が適用される範囲が違うみたいです。また、どちらに設定すればよいかについては、次の通りです。
(ソフトウェアによるが)ユーザーのみに適用するのであれば,ユーザー環境変数に設定しておけば良さそうです.
また,どちらにも記述がある場合は原則としてユーザー環境変数が適用されます.(Path 以外)
システム環境変数とユーザー環境変数の違い | mktia’s note
基本的には、ユーザー環境変数への追加で問題なさそうです。
ただし、基本的にユーザー環境変数が優先して適用される中で、Pathだけはシステム環境変数が優先して呼び出されるみたいです。なので、ユーザー環境変数にPathを追加したのに上手くいかないという場合は、この点を踏まえて見直すのがよさそうです。
<本文に戻る>