FFmpeg-メインコマンド櫛

免責事項:この記事は従って、ブロガーオリジナル記事です。CC BY-SA 4.0再現著作権の契約を、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/goldfish3/article/details/96428556

A:FFmpegのコマンドカテゴリ:

ここに画像を挿入説明

2:ffmpegのオーディオおよびビデオ処理プロセス

ここに画像を挿入説明
デマルチプレクサは:符号化データを得るために、別々のオーディオおよびビデオストリーム、オーディオとビデオをデカプセル化します。
マクサー:カプセル化、オーディオおよびビデオデータは、1つのストリームで一緒にエンコードされました。
デコーダ:デコード。

3:基本情報の照会コマンド

ここに画像を挿入説明

4:コマンド

1:録画ビデオ:

# -f:指定从使用mac的avfoundation采集数据。
# -i:就是input,输入流,后面的1是设备编号,表示屏幕(录屏)
i处理输入流)。
# -r:指定帧率,一般来说25帧就比较流畅,15帧就勉强够用了。
# out.yuv:采集后的数据保存成yuv格式,这是一种原始格式的数据,比较大。
ffmpeg -f avfoundation -i 1 -r 30 out.yuv

ビデオを再生します:

# -s 指定分辨率
# -pix_fmt 指定原始视频格式
ffplay -s 2560*1600 -pix_fmt uyvy422

オーディオをキャプチャ

# 冒号之前代表视频设备,冒号之后就代表音频设备
ffmpeg -f avfoundation -i :1 out.wav

オーディオを再生します

# 这里由于是有格式的音频数据,直接播放就可以了。
ffplay out.wav

2:分解と多重化

置換(カプセル化)するためのマルチメディア・データ・フォーマット
分離-本質的に別々のオーディオおよびビデオデータ。
多重化-オーディオおよびビデオデータを再シール。
オーディオおよびビデオフォーマットを変換します

# -vcodec 视频解复用
# -acodec 音频解复用 
# copy 表示不更改变解复用后的编码格式,完全copy 
ffmpeg -i test.mp4 -vcodec copy -acodec copy out.flv

ビデオストリームを抽出します

# -an 表示不要音频流
ffmpeg -i test.mp4 -an -vcodec copy out.h264

オーディオストリームを抽出

ffmpeg -i test.mp4 -acodec copy -vn out.h264

3:生データを処理します

生のビデオ・データの抽出

# -c:v 对视频进行解码,使用的编解码器是 rawvideo
# -pix_fmt 每一帧图像编码为 yuv 4:2:0
ffmpeg -i input.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv

元の映像データを再生
述べた上で、少し:

オーディオ、元のデータを抽出します

# -ar 即 audio read,音频采样率为44100
# -ac 即 audio channel,声道,ac2表示双声道
# -f 抽取出的音频pcm数据的格式,s16le s表示有符号,16位,le-little end 表示小头。
ffmpeg -i out.mp4 -vn -ar 44100 ac 2 -f s16le out.pcm

元のオーディオデータを再生します

ffplay -ar 44100 -ac 2 -f s16le out.pcm

4:フィルタコマンド

# -vf 指定滤镜
# crop,一个滤镜的名字,=后面是参数,in_w 表示宽度减少200,in_h表示高度减少200
# -c:v 指定使用的编解码器,前面有说过
# -c:a copy 不对音频做处理
ffmpeg -i test.mov -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4

5:ffmpegのトリミングとマージコマンド

カッティング:

# -ss 裁剪的时间点
# -t 裁剪的时长,以秒为单位 
ffmpeg -i in.mp4 -ss 00:00:00 -t 10 out.ts

マージ:

# -f concat 表示要对后面的文件进行拼接
# -i 指定输入文件,inputs.txt 中是一个文件列表,指定了要拼接的视频
# out.flv 输出
ffmpeg -f concat -i inputs.txt out.flv

その中でも、ファイル形式はinputs.txtです

file '1.mp4'
file '2.mp4'

プラスコピーは、現在のエンコーディングを使用して、デコード処理が速く、実行されません。

ffmpeg -f concat -i files.txt -c copy output.mp4

6:写真とビデオシステム変換コマンド

画像へのビデオ

# -r 1 表示一秒钟转一张图片
# -f 指定转出文件格式,这里为image2
# image-%3d.jpeg 表示图片名,%3d表示图片编号由3个数字组成。
ffmpeg -i in.flv -r 1 -f image2 image-%3.jpeg

写真はビデオを回し

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

7:ライブプッシュ/プルの流れ

ライブストリーミング

#-c 音视频编解码,-a是音频编解码 -v是视频编解码
#-f 指定格式  
#-re 表示帧率和真正的帧率保持同步
ffmpeg -re -i out.mp4 -c copy -f flv rtmp://server/live/streamName

ライブストリームをプル

ffmpeg -i rtmp://server/live.streamName -c copy dump.flv

おすすめ

転載: blog.csdn.net/goldfish3/article/details/96428556