本文為您介紹使用ApsaraVideo for VODHLS標準加密、阿里雲視頻加密(私人加密)、DRM加密過程中遇到的常見問題及解決方案。
HLS標準加密相關
播放HLS標準加密視頻時,需要傳入的使用者令牌(MtsHlsUriToken)參數是什嗎?如何擷取?
MtsHlsUriToken參數是使用者自訂參數,常規的HLS標準加密下,加密串寫到HLS流裡後,會在m3u8索引檔案中加入一個解密伺服器的地址,當有需求需要只允許部分使用者訪問時,這個解密地址就需要一個驗證身份的功能,MtsHlsUriToken參數就是在您的解密伺服器上加一層驗證邏輯,然後根據這層驗證邏輯產生一個特殊的參數加入解密驗證。
您需要在配置加密時,搭建令牌頒發服務產生MtsHlsUriToken,詳細內容請參見播放HLS標準加密視頻步驟1。
如何使用產生的密鑰?
GenerateKMSDataKey介面會返回兩種密鑰:一種是密文密鑰(CiphertextBlob),另一種是清除金鑰(Plaintext)。使用者只需要將密文密鑰傳遞給ApsaraVideo for VOD服務即可,具體參數傳遞請參見提交媒體轉碼作業中的加密配置 EncryptConfig參數。
推薦業務方對產生的密文密鑰和清除金鑰進行緩衝。
建立的Service Key不可刪除、不可更新,只用於產生加密金鑰。
產生的令牌如何傳遞到解密介面?
業務方必須使用網域名稱進行加速播放,才能將令牌重寫到解密介面上。在請求M3U8地址時需要將產生的令牌通過MtsHlsUriToken參數傳遞,網域名稱會自動將該參數重寫到解密介面上並請求解密介面。
如何快速驗證加密播放?
可以通過阿里雲播放器診斷平台,播放標準加密的M3U8播放地址,可以快速驗證播放是否正常。拷貝M3U8播放地址(如有MtsHlsUriToken參數一併拷貝)到阿里雲播放器診斷平台上進行嘗試標準加密的解密播放。
其它常見問題
介面提示
調用提交媒體轉碼作業提示KeyNotFound相關資訊,請先聯絡點播後台在相應的地區(例如:華北2、華東2)建立Service Key 並用於產生加密金鑰。
非加密檔案
產生的檔案未加密,請確認轉碼模板是否開啟視頻加密並勾選了私人加密。
自訂密鑰
加密的清除金鑰必須使用GenerateKMSDataKey - 建立KMS資料密鑰介面產生,不能使用自訂字串產生加密金鑰,否則加密轉碼失敗。
加密失敗
標準加密轉碼失敗或沒有任何加密檔案產生,請確認GenerateKMSDataKey - 建立KMS資料密鑰產生的密鑰類型是否為AES_128密鑰,否則加密轉碼會失敗導致不會產生任何加密檔案。
解密失敗
標準加密檔案解密播放失敗,請確認是解密介面將ApsaraVideo for VOD的DecryptKMSDataKey介面返回的清除金鑰再次base64decode之後給播放器解密播放,不然解密播放會失敗。
重複產生
標準加密轉碼觸發都是由使用者主動觸發,如果重複產生加密檔案,請確認是否重複調用提交媒體轉碼作業介面。
DRM加密相關
發起DRM加密轉碼失敗,報錯提示Submit transcode job failed
問題現象:發起DRM加密轉碼時,報錯TranscodeJob.SubmitFailed。如下圖所示:
問題原因:
ApsaraVideo for VOD暫不支援在視頻上傳完成後通過
的方式觸發DRM加密轉碼。解決方案:
您可以將DRM加密的轉碼模板組添加到工作流程中,以工作流程方式觸發轉碼,詳情請參見工作流程。
上傳DRM認證失敗,報錯提示Can not found user info
問題現象:上傳DRM認證時,報錯NotUserInfoExist。如下圖所示:
解決方案:
請確認您上傳DRM認證的對應服務地區已經存在啟用的點播系統bucket,啟用點播系統bucket請參見啟用點播系統Bucket。