使用FFMPEG转码,转单声道,转标准WAV,转PCM
2023-12-13 12:24:47
本文为使用FFMPEG命令行的方式处理音频,来获取想要得到的音频文件。
零、使用命令行查看编码封装信息
格式:ffprobe.exe -show_format inputfile
例子:ffprobe.exe -show_format .\stereo_44_16bit.wav
运行结果为下图:
如图可知,其采样率、声道数、位深、码率等信息。
一、双声道转单声道
格式: ffmpeg.exe -i inputfile -ac 1 outputfile
例子: ffmpeg.exe -i .\stereo_44_16bit.wav -ac 1 mono_44_16bit.wav
结果可以通过【零】节介绍的命令行查看,确定是否成功转为单声道。
二、使用ffmpeg得到的wav存在问题
我们使用文本工具,以十六进制的方式打开wav文件(FFMPEG输出),会发现其文件头并不是标准的44个字节,而是还包含其他内容,这对于处理44个字节的wav程序很不友好。我们需要将其去掉。如图:wav文件的头部大于44个字节。
三、使用ffmpeg得到标准WAV(44个字节的头部)
格式:ffmpeg.exe -i inputfile -map_metadata -1 -fflags +bitexact outputfile -y
例子:ffmpeg.exe -i .\mono_44_16bit.wav -map_metadata -1 -fflags +bitexact new.wav -y
处理后的头部信息如图:符合预期。
四、音频转PCM
格式: ffmpeg.exe -i inputfile -f s16le -acodec pcm_s16le outputfile
例子: ffmpeg.exe -i .\new.wav -f s16le -acodec pcm_s16le out.pcm
我们将new.wav转成pcm,其结果如下图,通过对比可知仅仅是将wav的头部44个字节去掉,结果正确。
结束。
命令行中的参数含义,需稳步另行查阅。
文章来源:https://blog.csdn.net/bendan50/article/details/134716212
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!