ffmpeg 常用命令

139 阅读2分钟

查看 pcm 位深 大小参数

# linux or mac

ffmpeg -formats | grep PCM

# win

ffmpeg -formats | findstr PCM

播放 pcm 文件

ffplay ar 44100 -ac 2 -f s16le

mac 系统查看 麦克风参数, 可以在 mac 系统报告, 里面 audio 里面查看。

查看录音时可以传入的参数

ffmpeg -hide_banner  -h demuxer=avfoundation

抽取 pcm 文件

ffmpeg -i 卜卦-梅梅犬.m4a -ar 44100 -ac 2 -f s16le bg.pcm

mac ffmpeg 录制声音

必须先指定 录音设备

-i: 1 或者 -i:0 1 或者 0 代表录音设备,查看是哪个设备,使用如下命令:

ffmpeg -f avfoundation -list_devices true -i dummy

然后 指定 采样频率 采样大小 声道 -ar 44100 指定采样大小 我的 mbp 2018 的麦克风的默认 采样是 48000 ffmpeg 不允许使用这样的采样频率,因为太大了, -f s16le 指定每个样本的大小 -channel_layout mono 指定升到布局 暂时不知道如何查看声道布局 如果指定 -channel_layout stereo 播放时不传入,则听到奇怪的录音

录制 pcm

ffmpeg -hide_banner -f avfoundation -i :1  -ar 44100 -f s16le -channel_layout mono test_record_intermial.pcm

播放 pcm

ffplay -ar 44100 -f s16le -ch_layout mono test_record_intermial.pcm

如果录音的文件后缀为 wav 则播放时 无需指定参数直接可以播放

查看支持的声道布局

ffplay -layouts            # 显示所有支持的声道布局

精确控制声道

# 使用具体的声道布局掩码
ffplay -ch_layout 0x63 input.wav  # 4.0布局

44100_s16le_2 转换成 48000_f32le_1

ffmpeg -ar 44100 -ac 2 -f s16le -i 44100_s16le_2.pcm -ar 48000 -ac 1 -f f32le 48000_f32le_1.pcm

vscode 解决 qt include 路径,红色波浪线问题,不能自动提示, 要么使用 quick fix。

要么手动配置:

image.png