使用
ffmpeg
从视频中提取音频保存
1. 将视频中的音频提取出来
ffmpeg -i {file_path} -f wav -ar 16000 {file_name}
file_path: 视频的文件路径
file_name: 文件名称
-ar: 设置音频采样频率。对于输出流,它默认设置为相应输入流的频率。对于输入流,此选项仅对音频抓取设备和原始解复用器有意义,并映射到相应的解复用器选项
-i: 输入文件网址
-f: 强制输入或输出文件格式。通常会自动检测输入文件的格式,并根据输出文件的文件扩展名猜测格式,因此在大多数情况下不需要此选项。
2. 将音频按照时间段切片
ffmpeg -i {file_path} -vn -acodec copy -ss {start_time} -to {end_time} -c copy {file_name}
file_path: 视频的文件路径
start_time: 开始时间
end_time: 结束时间
file_name: 文件名称
-vn: 作为输入选项,阻止文件的所有视频流被过滤或自动选择或映射到任何输出
-acodec: 设置音频编解码器。这是 的别名-codec:a
-ss: 当用作输入选项(before -i)时,在这个输入文件中寻找 位置。请注意,在大多数格式中,无法精确查找,因此ffmpeg将查找到position之前最近的查找点
-to: 停止在位置写入输出或读取输入, -to 和 -t 是互斥的,-t 有优先权
3. 将音频压缩
ffmpeg -i {file_path} -b:a 64k -acodec mp3 -ar 44100 -ac 1 {file_name}
file_path: 视频的文件路径
file_name: 文件名称
-ac: 设置音频通道数。对于输出流,它默认设置为输入音频通道的数量。对于输入流,此选项仅对音频抓取设备和原始解复用器有意义,并映射到相应的解复用器选项。
-ar:设置音频采样频率。对于输出流,它默认设置为相应输入流的频率。对于输入流,此选项仅对音频抓取设备和原始解复用器有意义,并映射到相应的解复用器选项
4.提升音频的声音
ffmpeg -i {file_path} -filter:a "volume=5dB" {file_name}
5.查看音频分贝
ffmpeg -i {file_path} -filter_complex volumedetect -c:v copy -f null /dev/null
Q.E.D.