開発-ffmpegオーディオとビデオの命令(2)

YUVデータ抽出

ffmpeg -i input.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv

-i入力ファイル
NOオーディオ-an
-c:V等しい-vcodec
-pix_fmtピクセルフォーマット

PCMデータ抽出

ffmpeg -i out.flv -vn -ar 44100 -ac 2 -f s16le out.pcm

-i入力ファイル
ビデオNO -vn
-Arオーディオサンプルレートは、読み出し
チャネル数カウント-acオーディオを
16 LEは少し端ヘッドストレージとして表現16のそれぞれで表される数値を表す数値-fデータフォーマットs16leの代表

gensees-iMac:study gensee$ ffmpeg -i out.flv -vn -ar 44100 -ac 2 -f s16le out.pcm
ffmpeg version N-94063-g86f04b918c Copyright (c) 2000-2019 the FFmpeg developers
  built with Apple LLVM version 8.1.0 (clang-802.0.38)
  configuration: --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags=
  libavutil      56. 29.100 / 56. 29.100
  libavcodec     58. 53.100 / 58. 53.100
  libavformat    58. 27.103 / 58. 27.103
  libavdevice    58.  7.100 / 58.  7.100
  libavfilter     7. 55.100 /  7. 55.100
  libswscale      5.  4.101 /  5.  4.101
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
Input #0, flv, from 'out.flv':
  Metadata:
    encoder         : Lavf58.27.103
  Duration: 00:00:08.13, start: 0.000000, bitrate: 470 kb/s
    Stream #0:0: Video: h264 (High 4:2:2), yuv422p(progressive), 1920x1080, 30 fps, 30 tbr, 1k tbn, 60 tbc
    Stream #0:1: Audio: aac (HE-AACv2), 44100 Hz, stereo, fltp, 32 kb/s
Stream mapping:
  Stream #0:1 -> #0:0 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, s16le, to 'out.pcm':
  Metadata:
    encoder         : Lavf58.27.103
    Stream #0:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
    Metadata:
      encoder         : Lavc58.53.100 pcm_s16le
size=    1288kB time=00:00:08.13 bitrate=1296.4kbits/s speed= 203x    
video:0kB audio:1288kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
gensees-iMac:study gensee$ 

オーディオを再生します

ffplay -ar 44100 -ac 2 -f s16le out.pcm
gensees-iMac:study gensee$ ffplay -ar 44100 -ac 2 -f s16le out.pcm
ffplay version N-94063-g86f04b918c Copyright (c) 2003-2019 the FFmpeg developers
  built with Apple LLVM version 8.1.0 (clang-802.0.38)
  configuration: --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags=
  libavutil      56. 29.100 / 56. 29.100
  libavcodec     58. 53.100 / 58. 53.100
  libavformat    58. 27.103 / 58. 27.103
  libavdevice    58.  7.100 / 58.  7.100
  libavfilter     7. 55.100 /  7. 55.100
  libswscale      5.  4.101 /  5.  4.101
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
[s16le @ 0x7fc51b876c00] Estimating duration from bitrate, this may be inaccurate
Input #0, s16le, from 'out.pcm':
  Duration: 00:00:07.48, bitrate: 1411 kb/s
    Stream #0:0: Audio: pcm_s16le, 44100 Hz, 2 channels, s16, 1411 kb/s
   5.88 M-A:  0.000 fd=   0 aq=  182KB vq=    0KB sq=    0B f=0/0   
gensees-iMac:study gensee$ 

フィルタ

カット - 幅と高さを変更するには

ffmpeg -i out.flv -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4

-i入力ファイル
-vfビデオフィルタここで選択された作物のフィルタ
ビデオを表すIN_H幅と高さin_w

ウォーターマークを追加

ffmpeg -i out.mp4 -vf "movie=timg.jpeg,scale=70x30[watermask];[in][watermask] overlay=30:10 [out]" water.mp4

ソース指定された映画のロゴ
スケールサイズ指定されたロゴ
オーバーレイ指定されたロゴの配置は、
ここに画像を挿入説明
ビデオの左上隅に、ここでの透かしのワンピースを貼り付け

gensees-iMac:study gensee$ ffmpeg -i out.mp4 -vf "movie=timg.jpeg,scale=70x30[watermask];[in][watermask] overlay=30:10 [out]" water.mp4

あなたが左上隅を見ることができますwater.mp4 ffplayプレイを使用した後、透かしがあります
ここに画像を挿入説明

透かしを削除します

ffplay -i water.mp4 -vf delogo=x=30:y=10:w=70:h=30:show=1 out.flv

delogoフィルタの説明:

  • X、Y:透かしの左上の座標
  • 幅と透かしの高さ:H、W
  • ショー:Hは、デバッグを容易にするために、矩形枠を確認wはオプションのパラメータは、緑色を見ることができ、X、Y 1です。正しい、このパラメータを除去することができます。
  • delogoフィルタを使用するには、コンパイルffmpgeは-enable-GPLオプションを追加する必要があります。それとも、使用するときにプロンプトが表示されます
    ここに画像を挿入説明
    ウォーターマークの位置のための左上隅を

オーディオとビデオのトリミング

ffmpeg -i out.flv -ss 00:00:00 -t 10 out.ts

第2の開始時間開始-SS
-t時間カットの大きさは、ここで10Sをトリミング

オーディオとビデオマージ

ffmpeg -f concat -i inputs.txt out.flv

CONCATはステッチ表す
INPUT.TXTのファイルのリストである、「ファイル名」形式を読み取る
2つのTSファイル1.tsの2.tsがある場合は
、コンテンツはINPUT.TXTです

file '1.ts'
file '2.ts'

動画の絵Huzhuan

画像へのビデオ

ffmpeg -i out.flv -r 1 -f image2 image-%3d.jpeg

-r第2のフレームレート毎に1つのフレーム
-fフォーマットは、フォーマット手段

ターミナルの後には、画像を得るのですか
ここに画像を挿入説明

写真はビデオを回し

ffmpeg -i image-%3d.jpeg imageOut.mp4

MP4のに描画最後の10
を得た後ffplayプレイを使用してビデオ

おすすめ

転載: blog.csdn.net/shengpeng3344/article/details/93479636