java 音频变调_开源播放器 ijkplayer (二) :ijkplayer倍速变调问题解决方案

在使用IjkPlayer进行倍速播放时遇到音调升高问题。通过跟踪代码,发现在IjkPlayer 0.7.9版本后支持soundtouch机制。通过设置`soundtouch`选项并调整C代码,可以解决变调问题。在0.8.1版本中,只需设置`soundtouch`为1即可实现变速变调,设置为0则变速不变调。
摘要由CSDN通过智能技术生成

之前使用IjkPlayer做播放器的使用的时候,在做倍速播放的时候,发现播放的声音音调明显变高了。问题的详情参见

在解决问题之前首先对倍速的代码做一次追踪

a. Android应用中Java层面调用的代码:

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

public void setSpeed(floatspeed) {

_setPropertyFloat(FFP_PROP_FLOAT_PLAYBACK_RATE, speed);

}public float getSpeed(floatspeed) {return_getPropertyFloat(FFP_PROP_FLOAT_PLAYBACK_RATE, .0f);

}

倍速代码

b.找到C库里面对应的方法:_setPropertyFloat (ijkplayer_jni.c)

8f900a89c6347c561fdf2122f13be562.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值