gpt4 book ai didi

android - 如何实用地将 videoCodec 设置为 Android 中的 LinphoneCore?

转载 作者:行者123 更新时间:2023-11-29 00:03:48 24 4
gpt4 key购买 nike

我目前正在开发一个Android VoIP 应用程序,为了支持 VoIP,我正在使用一个开源库 Linphone

目前正在进行语音通话,但没有进行视频通话。分析了一会儿,我知道应用加载时默认情况下,LinphoneCore 库使用的是 H264 视频编解码器。

但是 VOIP Asterik 服务器配置了 VP8 视频编解码器。我无法更改在服务器中配置的视频编解码器。因此,由于编解码器不匹配,视频数据无法传输。

那么,如何在应用加载后将视频编解码器从我的应用手动设置为 VP8 到 LinphoneCore?

最佳答案

要将 videoCodec 设置为 LinphoneCore,您可以做的是,一旦您的 LinphoneCore 准备就绪,您只需检索它支持的 VideoCodec Payload,然后设置一个特定的有效载荷并禁用其他代码,如下面的代码所示。

private void enableVp8Codec () {
LinphoneCore lc = LinphoneManager.getLcIfManagerNotDestroyedOrNull();
if (lc != null) {
PayloadType[] lPayLoadArr = lc.getVideoCodecs();
for (final PayloadType pt : lPayLoadArr) {
try {
if (pt.getMime().equals("VP8")) {
lc.enablePayloadType(pt, true);
} else {
lc.enablePayloadType(pt, false);
}
} catch (LinphoneCoreException e) {
Log.e("tag",e.getMessage());
}
}
}
}

您可以在 Activity 的 onResume 中调用此方法

关于android - 如何实用地将 videoCodec 设置为 Android 中的 LinphoneCore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42130077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com