2017-08-03 120 views
0

工作我想DASH流在Android中使用ExoPlayer DRM ClearKey加密文件。在media.exolist.json添加的条目的详情如下:ClearKey解密不ExoPlayer

{ 
     "name": "ClearKey", 
     "uri": "https://drmdemo-94ea7.firebaseapp.com/encrypt/manifest.mpd", 
     "extension": "mpd", 
     "drm_scheme": "cenc", 
     "drm_license_url": "https://drmdemo-94ea7.firebaseapp.com/encrypt/key.json" 
} 

这是我得到

Caused by: com.google.android.exoplayer2.drm.DrmSession$DrmSessionException: java.lang.IllegalStateException: Media does not support uuid: 1077efec-c0b2-4d02-ace3-3c1e52e2fb4b 

谁能帮助我什么,我做错了什么错误?

回答

0

这ExoPlayer告诉你它找不到在媒体PSSH头的UUID指示的DRM方案:

schemePsshData = psshData.get(uuid); 
     if (schemePsshData == null) { 
     onError(new IllegalStateException("Media does not support uuid: " + uuid)); 
     return; 
     } 

的DRM信息可以被包括在清单和/或媒体文件本身。在媒体文件中,它将位于保护系统专用标题(PSSH)中。

UUID的只是为每个不同的保护系统的唯一标识符(例如针对不同的数字版权保护)。

对于你的情况看来,媒体文件(视频文件或流本身)没有在其PSSH头的预期DRM信息。