問題描述
視頻直播生成推流地址并推流成功后,無法播放視頻。
解決方案
請參見以下步驟進行排查:
- 確認推流正常:
登錄視頻直播控制臺,單擊流管理,選擇目標域名,確認可以查詢到在線流的信息,說明推流正常。如果無法查詢到在線流的信息,說明推流異常,您可以參見視頻直播推流時出現異常,進行排查。 - 打開瀏覽器,單擊F12鍵,打開開發者工具,播放直播視頻,切換到Network標簽頁,單擊所請求的視頻地址,在Headers標簽頁的Response Header中查看是否有X-Tengine-Error信息,在Request Header中是否有Referer頭。
-
若存在以下信息,說明是鑒權相關的問題,您可以參見配置URL鑒權,調整您的鑒權配置。
- 出現以下信息,說明開啟了鑒權,但是沒有使用鑒權地址進行播放。
X-Tengine-Error: denied by req auth: no url arg auth_key
- 出現以下信息,說明開啟了鑒權,但是auth_key過期導致播放失敗。
X-Tengine-Error: denied by req auth: expired timestamp
- 出現以下信息,說明鑒權計算錯誤。如果鑒權的MD5計算不正確,建議先登錄視頻直播控制臺,選擇工具箱>地址生成器,生成URL后對比自己的鑒權代碼,或者參見鑒權示例代碼。
X-Tengine-Error: denied by req auth: invalid md5hash
- 出現以下信息,說明開啟了鑒權,但是沒有使用鑒權地址進行播放。
- 若存在以下信息,說明是防盜鏈相關的問題,將Referer的值添加到防盜鏈白名單即可,或者勾選允許通過瀏覽器地址欄直接訪問資源URL進行臨時的測試。如何添加域名,請參見防盜鏈。
X-Tengine-Error: deniedby Referer ACL
-
- 切換到Console標簽頁,查看是否存在”No ‘Access-Control-Allow-Origin’header“的報錯,該報錯就是跨域的問題。
登錄視頻直播控制臺,單擊域名管理,在域名管理頁面單擊目標播流域名,然后單擊HTTP頭配置,找到Access-Control-Allow-Origin,并配置為*
或需要訪問的完整域名。詳細操作請參見配置HTTP消息頭。 - 檢查播放地址是否正確:
- 確認您的播流域名沒有配置證書,在阿里云視頻直播控制臺預覽時默認是使用HTTPS協議播放,如果沒有配置證書會播放失敗,如何配置HTTPS證書請參見配置HTTPS安全加速。
- 您需要確認您的播放地址是否正確,AppName和StreamName要和推流地址一致。若您使用了URL鑒權功能,則需要使用鑒權URL來播放視頻。您可以通過控制臺快速獲取播放地址進行確認,詳情請參見如何獲取播放地址。
- 確認您的播流域名沒有配置證書,在阿里云視頻直播控制臺預覽時默認是使用HTTPS協議播放,如果沒有配置證書會播放失敗,如何配置HTTPS證書請參見配置HTTPS安全加速。
- 格式編碼問題:
視頻直播支持MP4、m3u8、flv視頻格式和mp3音頻格式,支持H264視頻編碼和AAC音頻編碼,其他格式的音視頻可能會導致播放失敗。 - 本地網絡問題:
請檢查您本地播放端的網絡是否有問題,可以嘗試在其他網絡環境中測試是否可以正常播放。 - 通過以上步驟排查后,若問題仍然存在,您可以嘗試通過視頻直播控制臺的地址生成器生成的推流地址進行測試。
相關文檔
適用于
- 視頻直播
文檔內容是否對您有幫助?