6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ffmpegで動画ファイルから音声ファイルを抽出する方法

Last updated at Posted at 2021-08-20

ffmpeg便利ですよね。ただ毎度使い方を忘れるので備忘録として残します。

ffmpeg導入されていない方は、macの場合brewで一発で入ります。

brew install ffmpeg

入力の動画ファイルの情報を確認

$ ffmpeg -i input.mp4

ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
  built with Apple clang version 12.0.5 (clang-1205.0.22.9)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.4_2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-avresample --enable-videotoolbox
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: isommp41mp42
    creation_time   : 2021-07-08T07:51:40.000000Z
  Duration: 00:00:25.91, start: 0.000000, bitrate: 2099 kb/s
  Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1920x1080, 1964 kb/s, 29.97 fps, 30 tbr, 90k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2021-07-08T07:51:40.000000Z
      handler_name    : Core Media Video
      vendor_id       : [0][0][0][0]
      encoder         : h.264
  Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 43 kb/s (default)
    Metadata:
      creation_time   : 2021-07-08T07:51:40.000000Z
      handler_name    : Core Media Audio
      vendor_id       : [0][0][0][0]

ここから Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 43 kb/s (default) というaudioの部分に着目すると下記の情報が得られます。

  • 48000 Hz: サンプリング周波数が48 kHz
  • mono: モノラル
  • fltp: 内部フォーマットが Single-precision floating point(単精度浮動小数点 32bit)
  • 43 kb/s: ビットレート(音声ビットレート=サンプリングレート×ビット深度)

いざ動画ファイルから音声ファイルを抽出

ffmpeg -i input.mp4 -ac 1 -ar 48000 output.wav
  • -ac 1: 入力音声がモノラルだったので、チャンネル数は1を指定。当たり前かもですがステレオの時は代わりに2を指定します。
  • -ar 48000: 入力音声のサンプリング周波数が48kHzだったのでそのまま指定。

以上です。簡単ですね! 困ったら ffmpeg -h でオプション確認してみてください!

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?