FFmpegで動画から音声を抽出する方法【無劣化・初心者向け完全ガイド】

動画ファイルから音声だけを取り出したい。しかも音質を劣化させずに保存したい。そんなときに役立つのが、プロも愛用する無料ツール「FFmpeg」です。
「でもFFmpegってコマンドプロンプトを使うんでしょ?難しそう…」と感じる方もいるかもしれません。しかし、基本的なコマンドは意外とシンプルで、一度覚えれば数秒で音声を抽出できるようになります。
本記事では、Windows・Mac・Linuxで利用できるFFmpegを使い、動画から音声を抽出する主要な方法をわかりやすく解説します。無劣化での音声抽出はもちろん、ビットレートの指定や特定区間の切り出し、さらにGUIツールを使った代替方法まで幅広く紹介。この記事を読めば、「FFmpeg 音声 抽出」に関する疑問をスムーズに解消できます。
目次
1、FFmpegの導入と準備
2、FFmpegで動画から音声を抽出する方法
- @.音声抽出に必要なオプション
- A.最もシンプルな音声抽出(再エンコードあり)
- B.無劣化で音声を抽出する(コーデックコピー)
- C.ビットレートやサンプリングレートを指定して抽出する方法
- D.動画の一部だけを音声ファイルとして取り出す方法
- E.ライブストリーミング動画(m3u8)から音声を抽出する
3、FFmpegの代替として、より簡単に音声を抽出する方法
4、よくある質問(FAQ)
5、まとめ
1、FFmpegの導入と準備
1. FFmpegの導入と準備
まずはFFmpegをインストールし、コマンドラインから利用できる状態にしましょう。
@.公式サイトからダウンロード
FFmpeg公式サイトにアクセスし、お使いのOSに対応したファイルをダウンロードします。Windowsの場合は「Windows Builds」から「ffmpeg-release-full.7z」などを入手し、任意のフォルダに解凍してください。
A.環境変数(Path)を設定する(Windowsの場合)
解凍したフォルダ内の「bin」フォルダをシステム環境変数「Path」に追加すると、どのフォルダからでも ffmpeg コマンドを実行できるようになります。
設定方法が分からない場合は、次の「動画ファイルが保存されているフォルダから直接コマンドプロンプトを起動する方法」を利用すると簡単です。
B.簡単な起動方法(環境変数の設定不要)
- ❶.動画ファイルが保存されているフォルダを開きます。
- ❷.エクスプローラーのアドレスバーに `cmd` と入力し、Enterキーを押します。
- ❸.そのフォルダを作業ディレクトリとしたコマンドプロンプトが起動します。
- ❹.`ffmpeg`(またはFFmpegのフルパス)を入力し、正常に動作することを確認します。
これで準備完了です。以下で紹介するコマンドは、特に記載がない限り、動画ファイルが保存されているフォルダ内で実行することを前提としています。
2、FFmpegで動画から音声を抽出する方法
@.音声抽出に必要なオプション
実際のコマンド紹介に入る前に、FFmpegで音声抽出する際によく使うオプションを整理しておきます。
- -i:入力ファイルを指定
- -vn:映像を出力しない(video none)
- -acodec :音声コーデックを指定(-acodec も使用可能ですが、現在は -c:a が推奨)
- -b:a:音声ビットレートを指定(-ab は旧式のため非推奨)
- -ac:チャンネル数を指定(2=ステレオ)
- -vol:音量変更(例えば、-vol 256)
- -ar:サンプリングレートを指定(例: 44100)
- -t:出力する長さを指定(時:分:秒)
- -fs:出力のサイズ制限
- -ss:処理の開始位置を指定(時:分:秒)
- -sseof:最後から数えてオフセット[-end of file]
- -y:同名ファイルがあれば上書き許可
A.最もシンプルな音声抽出(再エンコードあり)
FFmpegで動画から音声をMP3として取り出す、最も基本的なコマンドです。
- ffmpeg -i input.mp4 -vn output.mp3
-i input.mp4:入力ファイルを指定します。MP4以外にもMOV、AVI、MKV、FLVなど、ほぼすべての動画形式に対応しています。
-vn:映像を出力しません。
output.mp3:出力ファイル名です。拡張子によって出力形式が決まります。MP3以外にも、AAC、WAV、FLAC、M4A、OGGなど、自由に指定できます。
この方法では、内部的に音声が再エンコードされるため、わずかに音質が劣化する点に注意してください。完全無劣化を求める場合は、次項の方法を参照してください。
B.無劣化で音声を抽出する(コーデックコピー)
音質を一切変えず、元の音声ストリームをそのまま抜き出すには、-c:a copy を使用します。
手順1:元動画の音声コーデックを確認する
- ffmpeg -i input.mp4
実行すると、出力結果の中ほどに次のような音声ストリーム情報が表示されます。
- Stream #0:1(eng): Audio: aac (LC), 44100 Hz, stereo, fltp, 130 kb/s
この例では、音声コーデックが AAC であることがわかります。
手順2:コーデックをコピーして音声を抽出する
- ffmpeg -i input.mp4 -vn -c:a copy output.aac
-c:a copy(-acodec copy):音声コーデックを変換せず、そのままコピーします(再エンコードなし)。
出力ファイルの拡張子は、元の音声コーデックに対応したものを指定する必要があります。例えば、AACなら .aac または .m4a、MP3なら .mp3 を使用します。元の音声がAACであるにもかかわらず、出力ファイルを .mp3 と指定するとエラーになるため注意してください。
以上で、FFmpegを使った無劣化の音声抽出は完了です。再エンコードを行わないため、音質の劣化は発生せず、処理も高速に完了します。
C.ビットレートやサンプリングレートを指定して抽出する方法
音質を調整したい場合や、ファイルサイズを抑えたい場合に使用する方法です。
例:MP3(256kbps)、サンプリングレート44.1kHz、ステレオで出力
- ffmpeg -i input.mp4 -vn -c:a libmp3lame -b:a 256k -ar 44100 -ac 2 output.mp3
| オプション | 意味 |
| -c:a libmp3lame | MP3エンコーダを明示的に指定(高音質で安定) |
| -b:a 256k | 音声ビットレートを256kbpsに設定 |
| -ar 44100 | サンプリングレートを44.1kHzに設定 |
| -ac 2 | チャンネル数を2(ステレオ)に設定 |
ビットレートの目安として、128kbpsは標準音質、256kbpsは高音質(CD相当のクオリティ)とされています。ただし、元の音源が低音質の場合、320kbpsなどに上げても音質が改善するわけではありません。
また、サンプリングレートを変更すると再エンコードが発生するため、わずかな音質劣化が生じる可能性があります。この点には注意が必要です。
D.動画の一部だけを音声ファイルとして取り出す方法
-ss(開始位置)と -t(長さ)を組み合わせることで、必要な区間だけを正確に音声として切り出せます。
- ffmpeg -i input.mp4 -ss 00:00:20 -t 00:01:30 -vn -c:a copy output.aac
-ss 00:00:20:20秒の位置から処理を開始します。
-t 00:01:30:開始位置から1分30秒分を出力します。
この例では、20秒から1分50秒までの音声が抽出されます。
E.ライブストリーミング動画(m3u8)から音声を抽出する
YouTubeなどのライブ配信で使用されるHLS形式(.m3u8)のURLから、直接音声を保存することも可能です。
- ffmpeg -i "https://example.com/stream.m3u8" -vn -c:a copy output.aac
URLはダブルクォーテーション(")で囲んで指定します。
- YouTubeなど、利用規約上ダウンロードが禁止されているプラットフォームのコンテンツについては、私的利用であっても実行しないでください。
- また、実際の配信ではm3u8のURLが動的に変化する場合が多く、そのようなケースではyt-dlpなどの専用ツールを併用する方が現実的です。
- 🔗 【6選】m3u8変換サイト〜オンラインでm3u8(.ts)をmp4に変換!
ご注意
3、FFmpegの代替として、より簡単に音声を抽出する方法
「コマンドライン操作は難しい」「もっと直感的に使いたい」という方には、GUIベースのツールがおすすめです。ここでは、初心者でも扱いやすい高機能ソフト「VideoProc Converter AI」を紹介します。
VideoProc Converter AIとFFmpegの比較表
両者の違いを明確にするため、以下の比較表をご覧ください。
| 項目 | FFmpeg | VideoProc Converter AI |
| 操作性 | コマンドライン操作(CUI) | フルGUI(ドラッグ&ドロップ対応) |
| コスト | 無料(オープンソース) | 有料(無料体験版あり) |
| 無劣化抽出 | -c:a copy による無劣化抽出が可能 | 「自動コピー」モードで無劣化抽出に対応 |
| パラメータ制御 | 非常に柔軟で詳細な制御が可能 | 主要なビットレート・サンプルレートをGUIで簡単調整 |
| 処理速度 | 高速(環境によりCPU処理中心) | GPUアクセラレーション対応で高速処理が可能 |
| AIによる音質向上 | ❌ | ノイズ除去・音声強調などAI処理に対応 |
| その他機能 | 変換・編集・ストリーミングなど幅広く対応 | 変換・編集・ダウンロード・録画など統合機能 |
| 学習コスト | 高い(コマンド習得が必要) | 低い(直感的操作で使用可能) |
VideoProc Converter AIのAI音質向上機能
VideoProc Converter AIの大きな特徴の一つが、AIを活用した音質向上機能です。単純に動画から音声を抽出するだけでなく、以下のような処理を同時に行うことができます。
- • ノイズ除去:背景のホワイトノイズや風切り音などをAIが自動で低減します。
- • 音声の明瞭化:会話やインタビュー音声のこもりを改善し、聞き取りやすくします。
- • 音量の正規化:小さすぎる音声を適切な音量に自動調整します。
元の音声品質が低い場合でも、AIフィルターを適用することで、FFmpeg単体では難しい高品質な音声出力が可能になります。
- このような方におすすめ:
- • 古いビデオテープから取り込んだ動画の音声をクリアにしたい方
- • オンライン会議の録画から発言部分を聞き取りやすく抽出したい方
- • FFmpegのコマンド習得に時間をかけず、高音質を重視したい方
ただし、操作がシンプルな分、FFmpegのように細かなパラメータを自由に調整する用途には向いていません。目的やスキルレベルに応じて使い分けることが重要です。
VideoProc Converter AIでの音声抽出・AI補正手順
- 1VideoProc Converter AIを起動し、メイン画面で「動画」をクリックします。
- 2「+動画」をクリックして、対象の動画ファイルを追加します。
- 3画面下部の「出力」タブから「音楽」または「よく使われる」を選択し、「MP3」などの音声形式を選びます。
- 4右下の「RUN(変換)」をクリックして抽出を開始します。
- 抽出後は、AI音質向上機能を活用して、風切り音やノイズの除去、またはボーカルと伴奏の分離などの編集が可能です。
- 5ホーム画面で「音声AI」をクリックします。
- 6「+メディア追加」をクリックして編集するファイルを読み込みます。
- 7左側またはメニューから目的の機能を選択します。
- • ノイズ除去:音声ノイズ除去をオンにし、自動または手動で調整します。
• ボーカル抽出:ボーカルリムーバーを選択し、「声のみ抽出」または「伴奏のみ」を選びます。 - 8右下の「開始」をクリックして保存します。
4、よくある質問(FAQ)
Q1. FFmpegで音声を抽出すると、必ず音質は劣化しますか?
いいえ、必ずしも劣化するわけではありません。
-c:a copy を使用して音声コーデックをそのままコピーすれば、再エンコードなしで無劣化のまま抽出できます。一方で再エンコードを行う場合は多少の音質劣化が発生しますが、256kbps以上の高ビットレートを指定すれば、実用上は十分高品質を維持できます。
音質を重視する場合は、まず「2-3. 無劣化で音声を抽出する方法」を試すことをおすすめします。
Q2. 抽出した音声は、どの形式で保存するのがおすすめですか?
目的に応じて以下の形式が一般的です。
• 汎用性重視:MP3 ➡ ほぼすべてのデバイスで再生可能(128〜256kbpsが一般的)
• 無劣化・編集用途:WAV ➡ 非圧縮のため音質劣化なし。ただしファイルサイズは大きめ
• 高音質かつ軽量:AAC ➡ MP3より効率が高く、256kbps程度で高音質を実現
• 可逆圧縮保存:FLAC ➡ 無劣化かつWAVより容量を約50%削減可能
また、対応形式の一覧は ffmpeg -formats コマンドで確認できます。
Windowsでは ffmpeg -formats | findstr "Audio" を使用すると音声関連のみを絞り込めます。
Q3. フォルダ内の複数動画をまとめて音声抽出できますか?
はい、可能です。Windowsのコマンドプロンプトでは以下のバッチ処理で一括変換できます。
for %i in (*.mp4) do ffmpeg -i "%i" -vn -c:a copy "%~ni.aac"
%i が各MP4ファイルに置き換わり、拡張子を除いたファイル名で出力されます。
複数の形式をまとめて対象にしたい場合は、(*.mp4 *.mov *.mkv) のようにスペース区切りで追加してください。
PowerShellの場合は、%i を $i に置き換え、Get-ChildItem と組み合わせた記法になります。
Q4. 多言語映画など、複数の音声トラックがある場合、特定の音声だけ抽出できますか?
はい、可能です。
まず ffmpeg -i input.mp4 でストリーム情報を確認し、抽出したい音声トラック番号を特定します。
例えば、2番目の音声トラックを抽出する場合は以下のように指定します。
ffmpeg -i input.mp4 -map 0:a:1 -vn -c:a copy output_jp.aac
-map 0:a:1 の 1 は2番目の音声トラックを意味します(インデックスは0から開始)。
この方法は、多言語音声の切り分けに広く利用されます。
Q5. FFmpegのコマンドがエラーで失敗します。原因と対処法は?
よくある原因と対処法は以下の通りです。
• パスにスペースが含まれる場合:ファイルパス全体をダブルクォーテーション(" ")で囲む必要があります。
• コーデックと拡張子の不一致:-c:a copy 使用時は、出力コンテナが音声コーデックに対応している必要があります。例:AAC音声を .mp3 に直接出力することはできません(.m4a や .aac を使用)。
• アクセス権限の問題:出力フォルダの書き込み権限を確認してください。
• ffmpegが認識されない場合:PATH環境変数が正しく設定されていない可能性があります。または、ffmpegのフルパスを指定して実行してください。
5、まとめ
FFmpegによる音声抽出は、コマンド操作に慣れれば「無料・高機能・無劣化」という大きなメリットを持つ方法です。本記事で紹介した基本コマンドをそのまま活用することで、すぐに目的の作業を実行できます。
さらに、用途によってはGUIツールであるVideoProc Converter AIを併用することで、AIによる音質補正も含め、より直感的かつ効率的に音声抽出を行うことができます。
この記事を書いた人:スズキ
2014年よりDigiartyの編集者として活動。動画・画像編集やAI高画質化など、メディア処理分野を中心にソフトウェアレビューや関連記事を執筆しています。
- メールアドレスが公開されることはありません。 * が付いている欄は必須項目です。