一 DRM基本信息
1.MTK DRM支持的level:
OMA DRM v1.0
Widewine L3
2.OMA DRM支持的MIME格式
a.DRM内容MIME格式
application/vnd.oma.drm.content(.dcf)
application/vnd.oma.drm.message(.dm)
b.权限文件的MIME
application/vnd.oma.drm.rights+wbxml(.drc)
application/vnd.oma.drm.rights+xml(.dr)
3.MTK DRM支持的类型
默认支持ForwardLock,Combined Delivery,Separated Delivery,ForwardLock_SeparateDelivery共四种类型。
二 OMA DRM和Widewine的功能开关
在JB的软件版本上,MTK支持两种DRM的功能:OMA DRM V1.0和 Widewine DRM Level 3.默认这两种DRM功能都打开。
介绍一下如何关掉某一种DRM功能或者同时关闭两种。
1.关掉Widewine DRM Level 3,打开OMA DRM V1.0
在如下文件定义“MTK_WVDRM_SUPPORT=no”
alps/mediatek/config/$project/ProjectConfig.mk
这样会覆盖掉默认的值,然后整个重新编译一下代码即可。
2.同时关掉OMA DRM V1.0和Widewine DRM Level 3.
在如下文件定义"MTK_WVDRM_SUPPORT=no"和“MTK_DRM_APP=no”
alps/mediatek/config/$project/ProjectConfig.mk
这样会覆盖掉默认的值,然后整个重新编译一下代码即可。
3.关掉OMA DRM V1.0,打开Widewine DRM Level 3.
在如下文件定义““MTK_DRM_APP=no”
alps/mediatek/config/$project/ProjectConfig.mk
这样会覆盖默认的值。
另外在如下文件:
alps/packages/providers/DrmProvider/src/com/android/providers/drm/BootCompletedReceiver.java
的OnReceive方法,去掉if (FeatureOption.MTK_DRM_APP) { 这个条件判断,以便这段代码能够在开机的时候就执行。
也要确认相关的库能够编进你的手机:
在alps/build/target/product/common.mk中
修改:ifeq ($(strip $(MTK_DRM_APP)),yes)
PRODUCT_PACKAGES += \
libdrmmtkplugin \
drm_chmod \
libdcfdecoderjni
endif
为:
PRODUCT_PACKAGES +=libdrmmtkplugin
ifeq ($(strip $(MTK_DRM_APP)),yes)
PRODUCT_PACKAGES += \
drm_chmod \
libdcfdecoderjni
endif
然后重新编译整个工程代码即可。
三 OMA DRM测试网址
可以在如下网址测试:imps.tcl-ta.com
四 DRM专利问题
OMA不涉及专利问题
五 Widewine白名单问题
Widewine如果要播放google play store上面的视频(在进行GTS测试的时候会),需要加入google白名单,与google签订协议。
如果在Log中出现couldn't fetch license(error 43),即是此问题。
以下是早期google对于此问题的回复:
“...the devices must be offcially approved in order to be whitelisted and, therefore, be able to access the production WV contents. ...(one of the OEM) is our partner and they are not supposed to have Google Play in the first place. Please let them know they cannot use Google Play without license.”