![](/img/trans.png)
[英]How to Set width of Layout according to the picture size pragmatically in android?
[英]How to pragmatically set a videoCodec to LinphoneCore in Android?
我目前正在開發VoIP Android 應用程序,對於 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中調用此方法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.