[笔记]WAV2MP3之单通道的问题

最近发现新版32位的libav不支持单通道wav转mp3,原因不详,于是用lame库做一个转码的。

以前一直用lame_encode_buffer_interleaved将wav数据转为mp3数据,但是仅仅适合双通道的情况,我一直以为mp3不支持单通道(实际上是可以的,2019年32位的ffmpeg就可以做到),直到我看到一篇文章提到lame_encode_buffer_interleaved适合混音的,lame_encode_buffer则是分别处理左右声道,那么单通道吗,不就是将右声道或左声道干掉就完事了吗?一试便成功:

if (_wav_hd.channels == 1)
{
			write = lame_encode_buffer(lame, pcm_buffer, NULL, read, mp3_buffer, MP3_SIZE);
}
else
{
            write = lame_encode_buffer_interleaved(lame, pcm_buffer, read, mp3_buffer, MP3_SIZE);
}

特记录下来,免得以后再犯此低级错误。

需要基础知识:lame库转码的一般常识(自行搜索,网上很多)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值