如何更改 Linphone 中的默认音频编解码器列表
How to change the list of default audio codecs in Linphone
我想将编解码器 G729 设置为默认启用。我在 Whosebug 上搜索并找到了许多已弃用的解决方案,但现在,它们不再有效。
我写了一些临时的(糟糕的)代码,每次启动应用程序时都会设置一个标志。但我想要一个正常的解决方案。
要使用 G729 编解码器,您需要:
- 使用 G729 支持编译 linphone,检查构建文件以获得适当的构建标志
- 通过调用 enablePayloadType
更改编解码器列表
- 通过将其设置为第一个来将其设置为首选
解决办法,强制开启:
try {
PayloadType ptG729 = LinphoneManager.getLc().findPayloadType("G729");
LinphoneManager.getLc().enablePayloadType(ptG729, true);
} catch (LinphoneCoreException e) {
Log.e(e,"Unable to modify status for codec " + "G729");
}
此代码可以添加到 LinphoneActivity.java
例如,在第一个应用程序启动时调用
protected void onCreate(Bundle savedInstanceState) {
...
if (LinphonePreferences.instance().getAccountCount() > 0) {
LinphonePreferences.instance().firstLaunchSuccessful();
} else {
startActivityForResult(new Intent().setClass(this, SetupActivity.class), FIRST_LOGIN_ACTIVITY);
//Forced ON G729
//<<<<<<<<<<<<<<<
}
...
}
修改文件:linphonerc
[audio_codec_0]
mime=G729
rate=8000
enabled=1
在iPhone或模拟器上删除您的APP,构建并运行。
您会发现编解码器 G729 已启用。
我想将编解码器 G729 设置为默认启用。我在 Whosebug 上搜索并找到了许多已弃用的解决方案,但现在,它们不再有效。
我写了一些临时的(糟糕的)代码,每次启动应用程序时都会设置一个标志。但我想要一个正常的解决方案。
要使用 G729 编解码器,您需要:
- 使用 G729 支持编译 linphone,检查构建文件以获得适当的构建标志
- 通过调用 enablePayloadType 更改编解码器列表
- 通过将其设置为第一个来将其设置为首选
解决办法,强制开启:
try {
PayloadType ptG729 = LinphoneManager.getLc().findPayloadType("G729");
LinphoneManager.getLc().enablePayloadType(ptG729, true);
} catch (LinphoneCoreException e) {
Log.e(e,"Unable to modify status for codec " + "G729");
}
此代码可以添加到 LinphoneActivity.java 例如,在第一个应用程序启动时调用
protected void onCreate(Bundle savedInstanceState) {
...
if (LinphonePreferences.instance().getAccountCount() > 0) {
LinphonePreferences.instance().firstLaunchSuccessful();
} else {
startActivityForResult(new Intent().setClass(this, SetupActivity.class), FIRST_LOGIN_ACTIVITY);
//Forced ON G729
//<<<<<<<<<<<<<<<
}
...
}
修改文件:linphonerc
[audio_codec_0]
mime=G729
rate=8000
enabled=1
在iPhone或模拟器上删除您的APP,构建并运行。 您会发现编解码器 G729 已启用。