7.ffmpeg常用参数

2023-06-14  本文已影响0人  LucXion
一、音视频转码、转封装

ffmpeg [第一个输入文件对应的解析参数] -i 第一个输入文件名 [第二个输入文件对应的解析参数 ] -i 第二个输入文件名 [如果有第三个文件输入] [-i] [如果有第三个文件] [第一个输出文件对应的参数] [第一个输出文件名] [第二个输出文件对应的参数] [第二个输出文件名] [第三个输出文件对应的参数] [第三个输出文件名]

/**
ffmpeg 不需要指定 -o 输出
-i i.mp4 :指定输入的文件
a.mp4:输出文件a.mp4,并使用默认编码
-vcodec mpeg4 b.mp4: 输出文件b.mp4,并制定视频流使用 mpeg4 编码

输出完成后,可查询a.mp4、b.mp4的视频流格式信息来验证
 $ ffprobe -i a.mp4 -show_streams
encoder         : Lavf60.3.100 (编码器)
a.mp4 的 Streams 信息:codec_name=H.264
b.mp4 的 Streams 信息:codec_name=mpeg4

也可以只转封装不转码,但如果视频的音频流不是 wav格式,那么这种只转封装不转码的方式会,会造成信息的缺失
ffmpeg -i i.mp4 -acodec copy a_audio.wav 
正确的转码:pcm_s16le 是一种无损音频编码格式。-ar 选项指定音频采样率,44100 表示 44.1 kHz
ffmpeg -i i.mp4 -acodec pcm_s16le -ar 44100 ai.wav
*/
ffmpeg -i i.mp4 a.mp4 -vcodec mpeg4 b.mp4
二、查看帮助信息
ffmpeg --help
// 输出全部帮助信息
ffmpeg -h full

// type=name 的方式查看帮助信息
// 只输出 flv格式封装相关的格式信息
ffmpeg -h muxer=flv
// 只查看编码的对应信息
ffmpeg -h encoder=libx264
// 查找 name  $ ffmpeg --help   输出信息中的 Print help / information / capabilities: -muxers , 然后 ffmpeg -muxers 就可以看到所有支持的封装格式
//  确认机器上当前安装的 FFmpeg 中是否涵盖了 nvidia 的 H.264 编码器。
ffmpeg -encoders|grep H.264

三、FFmpeg 公共基础参数

-ss 放在 -i 参数左侧,快,但是定位通常不准确,但如果我们把 -ss 的时间点位设置为关键帧对应的点位,那定位就是准确的。

 $ ffmpeg -f lavfi -i testsrc=s=176x144 -metadata title="This Is A Test" -t 2 out.mp4
四、视频操作部分
五、音频操作部分
上一篇 下一篇

猜你喜欢

热点阅读