音频文件ffmpeg和ffplay命令行使用笔记

将pcm转化为aac

ffmpeg -f s16le -ar 44100 -ac 2 -i output.pcm -c:a aac -b:a 66k -strict -2 output_new.aac

-f s16le:表示输入音频文件的格式为 s16le (即 16 位带符号的线性 PCM 格式),也可以使用 -f u16le 表示 16 位无符号的线性 PCM 格式,或者 -f f32le 表示 32 位浮点数格式。需要注意的是,输入文件的音频格式应该与 FFmpeg 命令中指定的格式相匹配;
-ar 44100:表示输入音频文件的采样率为 44100Hz(即每秒钟采样 44100 次),也可以根据需要设置其他采样率;
-ac 2:表示输入音频文件的声道数为 2(即双声道),也可以根据需要设置其他声道数;
-i output.pcm:表示输入的 PCM 格式的音频文件,该文件符合前面所指定的格式(s16le、44100Hz、2 声道);
-c:a aac:表示输出音频文件的编码格式为 AAC,也可以使用其他音频编码格式,如 MP3 等。需要注意的是,输出编码格式需要 FFmpeg 命令所处的环境支持,否则可能需要安装相应的编解码库;
-b:a 66k:表示输出音频文件的比特率为 66 kbps,也可以根据需要设置其他比特率;
-strict -2:表示严格控制输出文件的格式,需要和输出编码格式一起使用。由于 FFmpeg 的某些旧版本默认不支持某些音频编码格式,因此需要通过该命令取消严格控制,否则可能会导致编码失败;
output_new.aac:表示输出的 AAC 格式的音频文件的文件名和存储路径。
需要注意的是,上述命令中的参数 -ar、-ac 和 -b:a 都是可选的,如果不指定,默认值为输入文件的采样率和声道数以及编码器的默认比特率。在实际使用中应根据需要进行适当设置。此外,如果需要将 PCM 格式的音频文件转换为其他格式,如 WAV、MP3 等,可以修改相应的参数和编码器。

将pcm转化为g711a

ffmpeg -f s16le -ar 44100 -ac 2 -i input.pcm -codec:a pcm_alaw -f alaw output.g711a

-f s16le:指定输入文件的音频数据格式为 s16le,即为每个采样点使用 2 个字节表示的带符号线性 PCM 格式。也可以使用 -f u16le 指定无符号 PCM 格式,或者 -f f32le 指定 32 位浮点 PCM 格式。需要注意的是,如果输入的音频数据格式不是 s16le(或 u16le、f32le),则需要根据实际情况进行指定。
-ar 44100:指定输入文件的采样率为 44100Hz,即每秒钟采样 44100 次;
-ac 2:指定输入文件为双声道(即有左右两个声道),也可以使用 -ac 1 指定单声道;
-i input.pcm:指定输入文件路径及文件名;
-codec:a pcm_alaw:指定输出音频流的编码器为 a-law 格式的 PCM 编码器,也可以使用 u-law 格式的 PCM 编码器,对应命令为 -codec:a pcm_mulaw;
-f alaw:指定输出文件的音频封装格式为 alaw,一种常用于电话系统的音频编码格式;
output.g711a:指定输出文件路径及文件名。
需要注意的是,本命令中没有进行任何音频压缩,输出的音频文件是无损的 G.711a 格式音频文件,文件大小可能会比较大。如果需要进行音频压缩,可以使用其他音频编码器并设定相应的音频比特率进行转换。另外,为了保证音频转换质量,建议在转换文件之前先检查输入文件的采样位深度、采样率、声道数等信息是否正确,并尽量避免输入文件中包含非音频数据。

用ffplay播放g711a音频

ffplay -f alaw -ar 44100 -ac 2 -acodec pcm_alaw -b:a 66k output.g711a

ffplay:FFmpeg 自带的音视频播放器命令;
-f alaw:指定输入音频文件采用的音频编码格式为 alaw,即 a-law 格式;
-ar 44100:指定输入音频文件的采样率为 44100Hz,即每秒钟采样 44100 次;
-ac 2:指定输入音频文件为双声道(即有左右两个声道),也可以使用 -ac 1 指定单声道;
-acodec pcm_alaw:指定音频解码器,将 G.711a 格式的音频文件解码为 PCM 格式的音频文件,以供后续播放器播放。需要注意的是,pcm_alaw 表示使用 a-law 格式的 PCM 编码器,也可以使用 u-law 格式的 PCM 编码器,对应命令为 -acodec pcm_mulaw;
-b:a 66k:指定播放器读取文件时输入的音频比特率为 66 kbps,也可以根据需要设置其他音频比特率;
output.g711a:指定要播放的 G.711a 格式音频文件路径及文件名。
需要注意的是,如果播放器不能正确播放 G.711a 格式的音频文件,可能是由于播放器不支持该格式所造成。此外,如果播放时出现了已知的噪音问题,可能是由于输入、输出音频格式不匹配或音频文件本身的问题引起的。可以尝试修改输入、输出文件的参数以得到更好的播放效果。

你可能感兴趣的:(ffmpeg,笔记,音视频)