只用OPUS codeC在Linphone会的Andr​​oid力 [英] Force using just OPUS codec in Linphone Android

查看:1014
本文介绍了只用OPUS codeC在Linphone会的Andr​​oid力的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我如何可以强制在Linphone中只使用作品codeC?
是否有LinphoneManager.java设置,或其他地方(如在LinphoneCore)更改codeC设置?

我发现这个code在LinphoneManager.java:

  enableDisableAudio codeC(Speex语音,32000,1,FALSE);
enableDisableAudio codeC(Speex语音,16000,1,FALSE);
enableDisableAudio codeC(Speex语音,8000,1,TRUE);
enableDisableAudio codeC(iLBC的,8000,1,FALSE);
enableDisableAudio codeC(G722,8000,1,FALSE);
enableDisableAudio codeC(G729,8000,1,FALSE);
enableDisableAudio codeC(AMR,8000,1,FALSE);
enableDisableAudio codeC(AMR-WB,16000,1,FALSE);
enableDisableAudio codeC(丝,8000,1,TRUE);

我可以只删除code和只是把这个:

  enableDisableAudio codeC(OPUS,8000,1,TRUE);


解决方案

您可以使用这样的功能:

 私人无效enableJustOneAudio codeC(字符串codecName){
    对于(PayloadType PT:LinphoneManager.getLc()getAudio codeCS()){
        尝试{
            如果(pt.getMime()。等于(codecName)){
                。LinphoneManager.getLc()enablePayloadType(PT​​,真);
            }其他{
                。LinphoneManager.getLc()enablePayloadType(PT​​,FALSE);
            }
        }赶上(LinphoneCoreException前){
            Log.w(例如,无法修改codeC状态+ p​​t.getMime());
        }
    }
}

和则:

  enableJustOneAudio codeC(OPUS)

您还可以启用linphonerc文件OPUS:

  [audio_ codec_0]哑剧= OPUS
率= 8000
启用= 1

但你必须明确禁用其他codeCS。

How can I force to use just Opus Codec in linphone ? Is there a setting in LinphoneManager.java, or somewhere else (like in LinphoneCore) to change codec setting ?

I found this code in LinphoneManager.java :

enableDisableAudioCodec("speex", 32000, 1, false);
enableDisableAudioCodec("speex", 16000, 1, false);
enableDisableAudioCodec("speex", 8000, 1, true);
enableDisableAudioCodec("iLBC", 8000, 1, false);
enableDisableAudioCodec("G722", 8000, 1, false);
enableDisableAudioCodec("G729", 8000, 1, false);
enableDisableAudioCodec("AMR", 8000, 1, false);
enableDisableAudioCodec("AMR-WB", 16000, 1, false);
enableDisableAudioCodec("SILK", 8000, 1, true);

can I Just delete that code and just put this :

enableDisableAudioCodec("OPUS", 8000, 1, true);

解决方案

You can use a function like this:

private void enableJustOneAudioCodec(String codecName) {
    for (PayloadType pt : LinphoneManager.getLc().getAudioCodecs()) {
        try {
            if (pt.getMime().equals(codecName)) {
                LinphoneManager.getLc().enablePayloadType(pt, true);
            } else {
                LinphoneManager.getLc().enablePayloadType(pt, false);
            }
        } catch (LinphoneCoreException ex) {
            Log.w(ex,"Unable to modify status for codec " + pt.getMime());
        }
    }
}

And then:

enableJustOneAudioCodec("OPUS")

You can also enable OPUS in linphonerc file:

[audio_codec_0]

mime=OPUS
rate=8000
enabled=1

but you must explicitly disable the other codecs.

这篇关于只用OPUS codeC在Linphone会的Andr​​oid力的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆