ffmpegを使用したビデオ内の無音検出

1 オリジナルビデオ情報

ffmpeg -i コマンドを使用して基本的なビデオ情報を表示する

ffmpeg version 6.1-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      58. 29.100 / 58. 29.100
  libavcodec     60. 31.102 / 60. 31.102
  libavformat    60. 16.100 / 60. 16.100
  libavdevice    60.  3.100 / 60.  3.100
  libavfilter     9. 12.100 /  9. 12.100
  libswscale      7.  5.100 /  7.  5.100
  libswresample   4. 12.100 /  4. 12.100
  libpostproc    57.  3.100 / 57.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf60.16.100
  Duration: 00:07:49.52, start: 0.000000, bitrate: 20142 kb/s
  Stream #0:0[0x1](eng): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p10le(tv, bt709, progressive), 1920x2160, 20007 kb/s, 25 fps, 25 tbr, 12800 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.31.102 libx264
      timecode        : 00:32:38:24
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
  Stream #0:2[0x3](eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      handler_name    : TimeCodeHandler
      timecode        : 00:32:38:24
At least one output file must be specified

 

2 ビデオの無音検出に ffmpeg を使用する

ffmpeg -i input.mp4 -af silencedetect=noise=-30dB:d=0.5 -vn -sn -dn -f null /dev/null

  • -af: Silencedetect の機能は、オーディオの最大音量、平均音量、音量ヒストグラムを取得することです。サポートしているのは次の 4 つの形式のみですAV_SAMPLE_FMT_S16 : 、  AV_SAMPLE_FMT_S32 、  AV_SAMPLE_FMT_FLT 、  AV_SAMPLE_FMT_DBL - そうでない場合は、もちろん FFmpeg が自動的に変換できます。

  • ミュートとみなされる音量は noise パラメータによって決定され、デフォルトは -60dB または です0.001。無音とみなされる継続時間は duration パラメータによって決定され、デフォルトは 2 秒です。パラメータが mono 「なし」の場合、 0 各チャネルが個別に検出され、デフォルトでは検出のためにチャネルがマージされることを意味します。

  • 複合検出: たとえば、2 秒間の連続した無音 (または低音) がミュートとみなされる場合、一方のチャンネルが基準を満たし、もう一方のチャンネルがこの期間中に基準を満たさない場合、ミュートとはみなされません。

  • -vn、 -sn そして -dn FFmpeg に非オーディオ ストリームを無視するように指示します。分析中の不要な操作を回避し、分析を高速化できます。

/dev/null 注: Windows で使用する場合は、次のように置き換える 必要があります NUL
。 マルチチャンネル オーディオの場合、検出される各チャンネルを個別に指定できます。

ffmpeg -i input.mp3 -af "silencedetect=mono=1" -vn -sn -dn -f null /dev/null

3. テスト結果の表示

ffmpeg version 6.1-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      58. 29.100 / 58. 29.100
  libavcodec     60. 31.102 / 60. 31.102
  libavformat    60. 16.100 / 60. 16.100
  libavdevice    60.  3.100 / 60.  3.100
  libavfilter     9. 12.100 /  9. 12.100
  libswscale      7.  5.100 /  7.  5.100
  libswresample   4. 12.100 /  4. 12.100
  libpostproc    57.  3.100 / 57.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf60.16.100
  Duration: 00:07:49.52, start: 0.000000, bitrate: 20142 kb/s
  Stream #0:0[0x1](eng): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p10le(tv, bt709, progressive), 1920x2160, 20007 kb/s, 25 fps, 25 tbr, 12800 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.31.102 libx264
      timecode        : 00:32:38:24
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
  Stream #0:2[0x3](eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      handler_name    : TimeCodeHandler
      timecode        : 00:32:38:24
Stream mapping:
  Stream #0:1 -> #0:0 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, null, to 'nul':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf60.16.100
  Stream #0:0(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.31.102 pcm_s16le
[silencedetect @ 000001ee5a9cb5c0] silence_start: 0   0x
[silencedetect @ 000001ee5a9cb5c0] silence_end: 13.238 | silence_duration: 13.238
[silencedetect @ 000001ee5a9cb5c0] silence_start: 17.0503
[silencedetect @ 000001ee5a9cb5c0] silence_end: 17.5835 | silence_duration: 0.53325
[silencedetect @ 000001ee5a9cb5c0] silence_start: 30.0168
[silencedetect @ 000001ee5a9cb5c0] silence_end: 30.5313 | silence_duration: 0.514437
[silencedetect @ 000001ee5a9cb5c0] silence_start: 35.2619
[silencedetect @ 000001ee5a9cb5c0] silence_end: 35.9293 | silence_duration: 0.667375
[silencedetect @ 000001ee5a9cb5c0] silence_start: 50.3024
[silencedetect @ 000001ee5a9cb5c0] silence_end: 50.909 | silence_duration: 0.606563
[silencedetect @ 000001ee5a9cb5c0] silence_start: 56.8453
[silencedetect @ 000001ee5a9cb5c0] silence_end: 57.9748 | silence_duration: 1.12958
[silencedetect @ 000001ee5a9cb5c0] silence_start: 76.3573
[silencedetect @ 000001ee5a9cb5c0] silence_end: 76.8851 | silence_duration: 0.527792
[silencedetect @ 000001ee5a9cb5c0] silence_start: 83.8969
[silencedetect @ 000001ee5a9cb5c0] silence_end: 84.6447 | silence_duration: 0.747771
[silencedetect @ 000001ee5a9cb5c0] silence_start: 97.7624
[silencedetect @ 000001ee5a9cb5c0] silence_end: 98.294 | silence_duration: 0.531604
[silencedetect @ 000001ee5a9cb5c0] silence_start: 99.3107
[silencedetect @ 000001ee5a9cb5c0] silence_end: 99.8335 | silence_duration: 0.522792
[silencedetect @ 000001ee5a9cb5c0] silence_start: 108.826
[silencedetect @ 000001ee5a9cb5c0] silence_end: 109.517 | silence_duration: 0.690979
[silencedetect @ 000001ee5a9cb5c0] silence_start: 126.216
[silencedetect @ 000001ee5a9cb5c0] silence_end: 126.837 | silence_duration: 0.621333
[silencedetect @ 000001ee5a9cb5c0] silence_start: 126.837
[silencedetect @ 000001ee5a9cb5c0] silence_end: 127.59 | silence_duration: 0.752958
[silencedetect @ 000001ee5a9cb5c0] silence_start: 172.294
[silencedetect @ 000001ee5a9cb5c0] silence_end: 172.929 | silence_duration: 0.634542
[silencedetect @ 000001ee5a9cb5c0] silence_start: 198.802
[silencedetect @ 000001ee5a9cb5c0] silence_end: 199.375 | silence_duration: 0.572875
[silencedetect @ 000001ee5a9cb5c0] silence_start: 203.289
[silencedetect @ 000001ee5a9cb5c0] silence_end: 203.968 | silence_duration: 0.678875
[silencedetect @ 000001ee5a9cb5c0] silence_start: 229.058
[silencedetect @ 000001ee5a9cb5c0] silence_end: 229.595 | silence_duration: 0.537167
[silencedetect @ 000001ee5a9cb5c0] silence_start: 230.641
[silencedetect @ 000001ee5a9cb5c0] silence_end: 231.178 | silence_duration: 0.536604
[silencedetect @ 000001ee5a9cb5c0] silence_start: 240.758
[silencedetect @ 000001ee5a9cb5c0] silence_end: 241.555 | silence_duration: 0.796854
[silencedetect @ 000001ee5a9cb5c0] silence_start: 314.606
[silencedetect @ 000001ee5a9cb5c0] silence_end: 315.126 | silence_duration: 0.519979
[silencedetect @ 000001ee5a9cb5c0] silence_start: 356.308
[silencedetect @ 000001ee5a9cb5c0] silence_end: 356.832 | silence_duration: 0.524271
[silencedetect @ 000001ee5a9cb5c0] silence_start: 358.494
[silencedetect @ 000001ee5a9cb5c0] silence_end: 359.071 | silence_duration: 0.576917
[silencedetect @ 000001ee5a9cb5c0] silence_start: 374.441
[silencedetect @ 000001ee5a9cb5c0] silence_end: 375.158 | silence_duration: 0.717313
[silencedetect @ 000001ee5a9cb5c0] silence_start: 375.999
[silencedetect @ 000001ee5a9cb5c0] silence_end: 376.772 | silence_duration: 0.772271
[silencedetect @ 000001ee5a9cb5c0] silence_start: 389.417
[silencedetect @ 000001ee5a9cb5c0] silence_end: 389.947 | silence_duration: 0.529458
[silencedetect @ 000001ee5a9cb5c0] silence_start: 419.457
[silencedetect @ 000001ee5a9cb5c0] silence_end: 420.038 | silence_duration: 0.581125
[silencedetect @ 000001ee5a9cb5c0] silence_start: 447.481
[silencedetect @ 000001ee5a9cb5c0] silence_end: 447.991 | silence_duration: 0.510146
[silencedetect @ 000001ee5a9cb5c0] silence_start: 454.29
[out#0/null @ 000001ee590392c0] video:0kB audio:88020kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
size=N/A time=00:07:49.41 bitrate=N/A speed= 957x
[silencedetect @ 000001ee5a9cb5c0] silence_end: 469.44 | silence_duration: 15.1504

 

 4 FFmpeg の概要

FFmpeg プロジェクトは、2000 年に Fabrice Bellard によって設立されました。これまでのところ、FFmpeg プロジェクトの開発者は、VLC、MPV、dav1d、x264 などのマルチメディア オープン ソース プロジェクトと依然として広範な重複を持っています。Ffmpeg (FastForward Mpeg) は、GPL に準拠したオープン ソース ソフトウェアで、オーディオとビデオの処理に非常に優れたパフォーマンスを発揮し、既存のビデオとオーディオのほぼすべての形式のエンコード、デコード、トランスコード、ミキシング、フィルタリング、再生をカバーしています。最も人気のあるビデオおよび画像処理ソフトウェアとして、さまざまな業界のさまざまな企業で広く使用されています。また、クロスプラットフォーム ソフトウェアでもあり、Linux、Windows、Mac OSX、その他のプラットフォームと完全に互換性があります。実際、これはオーディオおよびビデオ処理ツールの三銃士として知られる 3 つの主要なコンポーネントで構成されています。

  • Ffmpeg: コマンドラインで構成され、マルチメディア形式の変換に使用されます。
  • Ffplay: ffmpeg オープン ソース コード ライブラリをベースにしたマルチメディア プレーヤー
  • Ffprobe: ffmpeg に基づくマルチメディア ストリーム アナライザー

Ffmpeg は、FFmpeg ツール セットの中核となるツールであり、さまざまなエンコーダー、デコーダー、パッケージ化形式、およびフィルター関数をサポートします。FFmpeg フレームワークの基本コンポーネントには、AVFormat、AVCodec、AVFilter、AVDevice、AVUtil およびその他のモジュール ライブラリが含まれており、その構造図は次のとおりです。

  •  AVFormat – FFmpeg パッケージ化モジュール

AVFormat は、MP4、FLV、KV、TS およびその他のファイル カプセル化形式、RTMP、RTSP、MMS、HLS およびその他のネットワーク プロトコル カプセル化形式などのカプセル化とカプセル化解除を含む、マルチメディア分野の現在のメディア カプセル化形式のほとんどを実装します。FFmpeg が特定のメディア カプセル化形式をサポートするかどうかは、コンパイル時にこの形式のカプセル化ライブラリが含まれるかどうかによって決まります。実際のニーズに応じて、メディア カプセル化形式を拡張したり、独自にカスタマイズしたカプセル化形式を追加したりできます。つまり、独自のカプセル化処理モジュールを AVFormat に追加できます。

  • AVCodec – FFmpeg のコーデック モジュール

AVCodec は、マルチメディア分野で現在一般的に使用されているコーデック形式のほとんどを実装し、エンコードとデコードの両方をサポートします。AVCodec は、MPEG4、AAC、MJPEG などの組み込みメディア コーデック形式のサポートに加えて、x264 エンコーダの使用が必要な H.264 (AVC) エンコーディング、H.265 (HEVC) エンコーディングなどのサードパーティ コーデックもサポートしています。 ) エンコードの場合は、x264 エンコーダを使用する必要があります。MP3 (mp3lame) エンコードの場合は、libmp3lame エンコーダを使用する必要があります。独自のエンコード形式またはハードウェア コーデックを追加する場合は、対応するコーデック モジュールを AVCodec に追加する必要があります。

  • AVFilter – FFmpeg 用のフィルター モジュール

AVFilter ライブラリは、オーディオ、ビデオ、字幕などの一般的なフィルター処理フレームワークを提供します。AVFilter では、フィルター フレームに複数の入力と複数の出力を含めることができます。

  • swresample – FFmpeg の音声変換計算モジュール

swresample モジュールは、高レベルのオーディオ リサンプリング API を提供します。たとえば、オーディオ サンプリングの操作、オーディオ チャネル レイアウトの変換、レイアウトの調整が可能になります。

  • swscale – FFmpeg のビデオ画像変換計算モジュール

swscale モジュールは、高レベルの画像変換 API を提供します。たとえば、画像のスケーリングとピクセル形式の変換が可能になります。これは、画像を 1080p から 720p または 480p にスケーリングしたり、画像データを YUV420p から YUYV に変換したり、YUV 変換したりする場合によく見られます。 . RGB およびその他の画像形式の変換。

5 FFmpeg 共通パラメータ

5.1 機能セットのリスト

  • -formats: サポートされているファイル形式をリストします。
  • -コーデック: サポートされているコーデックをリストします。
  • -decoders: サポートされているデコーダーをリストします。
  • -encoders: サポートされているエンコーダーをリストします。
  • -protocols: サポートされているプロトコルをリストします。
  • -bsfs: サポートされているビットストリーム フィルターをリストします。
  • -filters: サポートされているフィルターをリストします。
  • - pix_fmts: サポートされている画像サンプリング形式をリストします。
  • -sample_fmts: サポートされているサウンド サンプル形式をリストします。

5.2 一般的な入力オプション

  • -i filename: 入力ファイル名を指定します。
  • -f fmt: 機能セット リスト内の名前を使用してファイル形式を強制的に設定します (デフォルトは拡張子に基づいて選択されます)。
  • -ss hh:mm:ss[.xxx]: 入力ファイルの開始時点を設定し、起動後、この時点にジャンプしてデータの読み込みを開始します。

入力の場合、次のオプションは通常自動的に認識されますが、強制することもできます。

  • -c codec: 機能セット リスト内の名前を使用して、デコーダーを指定します。
  • -acodec コーデック: 機能セット リスト内の名前を使用して、サウンド デコーダーを指定します。
  • -vcodec コーデック: 機能セット リスト内の名前を使用して、ビデオのコーデックを指定します。
  • -b:v ビットレート: ビデオ ストリームのビットレートを整数、単位 bps で設定します。
  • -r fps: ビデオ ストリームのフレーム レートを整数、単位 fps で設定します。
  • -s WxH: ビデオ画面サイズを設定します。これは、画面ズーム フィルターを取り付けることによっても実現できます。
  • -pix_fmt 形式: ビデオ ストリームの画像形式 (RGB または YUV など) を設定します。
  • -ar サンプル レート: オーディオ ストリームのサンプリング レートを整数、単位 Hz で設定します。
  • -ab ビットレート: オーディオ ストリームのビットレートを整数、単位 bps で設定します。
  • -ac チャネル: オーディオ ストリームのチャネル数を設定します。

5.3 一般的な出力オプション

  • -f fmt: 機能セット リスト内の名前を使用してファイル形式を強制的に設定します (デフォルトは拡張子に基づいて選択されます)。
  • -c codec: エンコーダを指定し、機能セット リスト内の名前を使用します (エンコーダは、エンコードまたはデコードがないことを示すために「コピー」に設定されています)。
  • -acodec コーデック: サウンド コーデックを指定します。機能セット リスト内の名前を使用する必要があります (コーデックはエンコードとデコードがないことを示すために「コピー」に設定されています)。
  • -vcodec コーデック: ビデオのエンコーダを指定します。機能セット リスト内の名前を使用する必要があります (コーデックは、エンコードまたはデコードが実行されないことを示す「コピー」に設定されています)。
  • -r fps: ビデオ エンコーダのフレーム レートを整数で設定します。単位は fps です。
  • -pix_fmt format: ビデオ エンコーダーで使用される画像フォーマット (RGB や YUV など) を設定します。
  • -ar サンプル レート: オーディオ エンコーダーのサンプリング レートを整数、単位 Hz で設定します。
  • -b ビットレート: オーディオおよびビデオ エンコーダーによって出力されるビット レートを整数、単位 bps で設定します。
  • -ab bitrate: オーディオ エンコーダ出力のビット レートを整数、単位 bps で設定します。
  • -ac チャネル: オーディオ エンコーダのチャネル数を設定します。
  • -an オーディオ ストリームを無視します。
  • -vn ビデオ ストリームを無視します。
  • -t hh:mm:ss[.xxx]: 出力ファイルの時間長を設定します。
  • -to hh:mm:ss[.xxx]: 出力ファイルの時間長が設定されていない場合、終了時点を設定できます。

5.4 ffmpeg ストリームの識別

FFMPEG の一部のオプションは特定のメディア ストリームに対して機能しますが、この場合はオプションの後にストリーム識別子を追加する必要があります。ストリーム識別子には次の形式が許可されます。

  • ストリームのシーケンス番号。たとえば、「:1」は 2 番目のストリームを表します。
  • ストリームタイプ。たとえば、「:a」はオーディオ ストリームを表し、ストリーム タイプはストリーム番号と組み合わせることができます。たとえば、「:a:1」は 2 番目のオーディオ ストリームを表します。
  • プログラム。プログラム番号とストリーム番号を組み合わせることができます。
  • ストリームID。ストリームIDは内部の識別番号である。

2 番目のオーディオ ストリームをコピーするように設定する場合は、-codec:a:1 copy を指定する必要があります。

5.5 ffmpeg オーディオ オプション

  • -aframes: 出力オプションの Frame:a と同等で、出力するオーディオ フレームの数を指定するために使用されます。
  • -aq: q:a に相当します。古いバージョンは qscale:a で、オーディオ品質の設定に使用されます。
  • -atag: tag:a と同等で、オーディオ ストリームのタグを設定するために使用されます。
  • -af: filter:a と同等で、サウンド後処理フィルター チェーンの設定に使用されます。そのパラメーターはサウンド後処理チェーンを説明する文字列です。

5.6 ffmpeg ビデオ オプション

  • -vframes: 出力オプションの Frame:v と同等で、出力ビデオ フレームの数を指定するために使用されます。
  • -アスペクト: 4:3、16:9、1.3333、1.7777 などのアスペクト比を設定します。
  • -bits_per_raw_sample: ピクセルあたりのビット数を設定します。
  • -vstats: ビデオ統計を生成します。
  • -vf: filter:v と同等で、画像の後処理フィルター チェーンを設定するために使用されます。そのパラメーターは、画像の後処理チェーンを説明する文字列です。
  • -vtag: tag:v と同等で、ビデオ ストリームのタグを設定するために使用されます。
  • -force_fps: ビデオ フレーム レートを強制的に設定します。
  • -force_key_frames: キー フレームの挿入を明示的に制御します。パラメータは文字列で、タイムスタンプまたは「expr:」というプレフィックスが付いた式を指定できます。「-force_key_frames 0:05:00」、「-force_key_frames expr:gte(t,n_forced*5)」など

5.7 ffmpeg フィルタ オプション

-filter_simple は単純なフィルターを追加します

-filter_complex FILTER 複雑なフィルターを追加します

5.8 ffmpeg 詳細オプション

  • -re: 入力データを設定されたレートで処理する必要があります。このレートは入力ファイルのフレーム レートです。
  • -map: 出力ファイルのストリームマッピング関係を指定します。たとえば、「-map 1:0 -map 1:1」では、2 番目の入力ファイルの 1 番目と 2 番目のストリームを出力ファイルに書き込む必要があります。-map オプションがない場合、ffmpeg はデフォルトのマッピング関係を使用します。

5.9 ffprobeパラメータ

簡単に言えば、ffprobe はマルチメディア ストリーム分析ツールです。マルチメディア ストリームから情報を収集し、人間と機械が読み取り可能な形式で出力します。これを使用して、マルチメディア ストリームのコンテナ タイプ、および各マルチメディア ストリームの形式とタイプを検出できます。スタンドアロン アプリケーションとして使用することも、テキスト フィルターと組み合わせてより複雑な処理を実行することもできます。

  • -f format は特定のフォーマットを強制します
  • -60進時間単位形式 HOURS:MM:SS.MICROSECONDS
  • - かなりフォーマットの美化
  • -print_format フォーマット形式 (オプションの値:default、compact、csv、 flat、ini、json、xml)
  • -of format -print_format エイリアス
  • -select_streams stream_specifier は、指定されたストリームを選択します
  • -sections セクションの構造と情報を出力します。
  • -show_data パケットデータを表示
  • -show_data_hash パケットデータのハッシュ値を表示します
  • -show_error ファイルの検出/検出エラーを表示します。
  • -show_format 形式またはコンテナー情報を表示します
  • -show_frames フレーム情報を表示します
  • -show_format_entry エントリ フォーマット/コンテナ情報に基づいて指定されたエントリを表示します
  • -show_packets パケット情報を表示します
  • -show_programs 番組情報を表示します
  • -show_streams ストリーム情報を表示します
  • -show_chapters 章情報を表示します
  • -count_frames は、各ストリームのフレーム数をカウントします。
  • -count_packets は、各フロー内のパケット数をカウントします。
  • -show_program_version ffprobe バージョンを表示
  • -show_library_versions ライブラリのバージョンを表示します
  • -show_versions プログラムとライブラリのバージョンを表示します
  • -show_pixel_formats ピクセル形式を表示します
  • -show_private_data プライベート データを表示します
  • -private show_private_data と同じ
  • -bitexact bitexact 出力を強制します
  • -read_intervals read_intervals 読み取り間隔を設定します
  • -default 汎用キャッチオール オプション

5.10 ffplayerパラメータ

  • -x はビデオ表示ウィンドウの幅を強制します
  • -y は、ビデオ表示ウィンドウの高さを強制的に設定します。
  • -S はビデオ表示の幅と高さを設定します。
  • -fs は全画面表示を強制します
  • -an は音声をブロックします
  • -vn ブロックビデオ
  • -Sn は字幕をブロックします
  • -ss 設定された秒数に基づいて位置を指定してドラッグします。
  • -t 再生ビデオ/オーディオの長さを設定します
  • -Bytes は位置決めとドラッグ戦略を設定します。0 はドラッグ不可能を意味し、1 はドラッグ可能を意味し、-1 は自動を意味します。
  • -Nodisp はグラフィック表示ウィンドウを閉じます。
  • -f は、設定された形式を解析に使用するように強制します。
  • -window_title は表示ウィンドウのタイトルを設定します。
  • -af オーディオフィルターを設定します
  • -コーデックは、デコードに設定されたコーデックの使用を強制します。
  • -autorotate はビデオを自動的に回転します
  • -ast は再生されるオーディオ ストリームを設定します
  • -vst は、再生されるビデオ ストリームを設定します。
  • -sst は再生される字幕ストリームを設定します
  • -統計出力マルチメディア再生ステータス
  • -非標準マルチメディア互換性の高速最適化
  • -sync オーディオとビデオの同期設定は、オーディオとビデオ、ビデオ時間参照、または外部拡張時間参照に基づいて参照するように設定できます。
  • -autoexit マルチメディア再生後に ffplay を自動的に終了します。デフォルトでは、ffplay は再生完了後にプレーヤーを終了しません。
  • -exitonkeydown キー押下イベントが発生したときに ffplay を終了します
  • -exitonmousedown マウス ボタン イベントが発生したときに ffplay を終了します
  • -loopはマルチメディアファイルのループ再生回数を設定します。
  • -framedrop CPU リソースの使用率が高すぎる場合にフレームを自動的にドロップします
  • -infbuf は、無制限のプレーヤー バッファーを設定します。このオプションは、リアルタイム ストリーミング メディアの再生シナリオでよく使用されます。
  • -vfビデオフィルター設定
  • -acodec は、設定されたオーディオ コーデックの使用を強制します。
  • -vcodec は、設定されたビデオ コーデックの使用を強制します。
  • -scodec は、設定された字幕デコーダの使用を強制します

おすすめ

転載: blog.csdn.net/lsb2002/article/details/135485520