-
Notifications
You must be signed in to change notification settings - Fork 209
device_config
zanxiaofei edited this page May 26, 2017
·
11 revisions
音频和视频编码时有两种选择:软件编码和硬件编码。软编的效果更好但会占用更多的资源,硬编的效果差一些但占用的资源较少。由于Android设备和ROM的多样性,并非每一台设备都直接支持硬编。
针对Android机型丰富、ROM较多的情况,为提升金山云SDK用户在推流时使用硬编的成功率和覆盖率,金山云对500多个Android设备进行测试后,收集形成硬编白名单,白名单中包含了所有经过验证支持硬编的机型和对应的Android系统版本。
为了方便客户使用,金山云将白名单移至服务端并且在推流SDK中提供接口来支持白名单服务。
用户可通过白名单获取到当前机型是否支持硬编,借此来提升硬编的成功率和覆盖率。
当前只提供了硬编h264的支持情况,后续我们会进一步丰富白名单内容
如果您的设备不在表中,您可以联系并告知我们,和我们一起丰富白名单内容
-
init
DeviceInfoTools的初始化,建议在Application初始化的时候调用,接口会发起服务端请求(参考请求规则)
public class DemoApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
//初始化本地存储,若本地无信息或者信息已经过期,会向服务器发起请求
DeviceInfoTools.getInstance().init(this);
}
}
-
getDeviceInfo
获取设置信息,若服务器请求未返回,请求失败,服务器白名单中没有设备,都会返回默认值,参考请求规则
DeviceInfo deviceInfo = DeviceInfoTools.getInstance().getDeviceInfo();
if (mDeviceInfo != null) {
if (mDeviceInfo.encode_h264 == DeviceInfo.ENCODE_HW_SUPPORT) {
//支持硬编,建议使用硬编
Toast.makeText(this, "该设备支持h264硬编,建议您使用硬编", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(this, "该设备可能不在硬编白名单中\n或者不支持硬编\n或者服务器还未返回" +
"\n如果支持硬编,欢迎一起更新白名单", Toast.LENGTH_SHORT).show();
}
}
如果您的设备不在表中,您可以联系并告知我们,我们会在1~2个工作日内将您的信息加入白名单中。
您需要提供如下信息用与录入白名单
- 手机品牌:例如小米、华为
- 手机型号:需要Build.MODEL的准确值
- 手机系统版本:需要Build.VERSION.RELEASE的准确值
- 是否支持h264硬编:支持或者不支持
您可以直接下载硬编白名单扩展表并填充您的信息提供给我们