Pro:Idiom在三星Tizen 3.0系统上无法解密UDP视频求助
问题解决:Tizen 3.0下UDP播放Pro:Idiom视频解密失败及Forensic Data获取
一、解密失败的可能原因及修复建议
DRM初始化时机错误
Tizen AVPlay的Pro:Idiom实现要求setDrm需在open之后、prepare之前调用,调整代码顺序如下:try{ webapis.avplay.open("udp://238.255.4.3:5000"); var drmParam = new Object(); drmParam.ForensicData = "合法的Forensic Data"; webapis.avplay.setDrm("PROIDIOM", "Initialize", JSON.stringify(drmParam)); webapis.avplay.setDisplayRect(0, 0, 1920, 1080); webapis.avplay.prepare(); webapis.avplay.play(); } catch (err) { console.log(err); }验证UDP流与设备配置
- 确认UDP流确实携带Pro:Idiom加密信息,且加密版本与Tizen 3.0的DRM模块兼容
- 检查三星电视的Pro:Idiom预置证书是否有效,过期或未授权的证书会直接导致解密失败
错误日志排查
捕获的err对象包含具体错误码,可针对性排查:DRM_ERROR_INVALID_PARAMETER:参数格式错误,比如Forensic Data不符合要求DRM_ERROR_NOT_SUPPORTED:设备不支持当前Pro:Idiom加密版本DRM_ERROR_LICENSE_FAILED:内容授权与设备证书不匹配
二、Forensic Data的获取方式
Forensic Data是Pro:Idiom DRM用于设备身份验证的绑定标识,无法自行生成随机字符串替代,获取路径如下:
- 向内容提供商/授权机构申请:该数据与设备或用户身份绑定,需提供设备的唯一硬件标识(如电视UUID)向内容服务方或Pro:Idiom授权机构申请合法数据
- 获取设备硬件标识:可通过Tizen API获取设备UUID,作为申请依据:
var deviceInfo = webapis.systeminfo.getDeviceInfo(); var deviceId = deviceInfo.uuid; console.log("Device UUID: " + deviceId);
内容的提问来源于stack exchange,提问作者user21744620
相关产品推荐
相关产品推荐

