概述
本文主要介紹如何擷取ApsaraVideo for Live的播放地址及使用鑒權後的播放地址。
如何擷取播放地址?
- 控制台:
- 地址產生器頁面
通過ApsaraVideo for Live控制台的頁面,產生播放地址。操作步驟請參見直播地址產生器。
- 流管理頁面
在ApsaraVideo for Live控制台的頁面,選擇所需的推流地址,單擊右側的直播地址,即可查看,查看不同轉碼及格式的直播地址。

- 地址產生器頁面
- 手動拼接
根據產生推流地址和播放地址,手動拼接播放地址。
如何擷取鑒權播放地址?
ApsaraVideo for Live控制台擷取的鑒權URL地址到期時間較短,如果您想擷取到期時間較長的鑒權URL地址,可以調用鑒權小工具或者鑒權演算法代碼實現。
- 控制台
鑒權小工具計算播流鑒權URL地址,請參見配置URL鑒權。
- 代碼擷取播流鑒權URL地址鑒權演算法參見鑒權URL組成,根據推流地址指定的APPName及StreamName得到未鑒權的播放地址,如
rtmp://videolive.aliyuntest.club/AppName1/StreamName1;再根據鑒權演算法代碼實現,填入對應的播放地址計算鑒權URL。PHP demo代碼實現如下://http://DomainName/Filename?auth_key=timestamp-rand-uid-md5hash //sstring = "URI-Timestamp-rand-uid-PrivateKey" (URI是使用者的請求對象相對位址, 如 /Filename) //HashValue = md5sum(sstring) function PrivateKeyA(){ $time=strtotime("-800 seconds");//("+1 hours"); $key="aliyun2013"; $domain="rtmp://videolive.aliyuntest.club"; $filename="/AppName1/StreamName1"; //$sstring = "URI-Timestamp-rand-uid-PrivateKey" $sstring = $filename."-".$time."-0-0-".$key; $md5=md5($sstring); $auth_key="auth_key=".$time."-0-0-".$md5; $url=$domain.$filename."?".$auth_key; echo $url."\n"; }
如何通過代碼擷取播放地址?
未鑒權的播放地址可以通過推流地址拼接得到,推流指定AppName及StreamName,播流的APPName及StreamName就確定。例如,推流地址為rtmp://video-center.alivecdn.com/APPName1/StreamName1?vhost=videolive.aliyuntest.club,則播放地址為rtmp://videolive.aliyuntest.club/AppName1/StreamName1。
鑒權URL地址擷取:鑒權演算法參見鑒權URL組成,根據推流地址指定的APPName及StreamName得到未鑒權的播放地址,如rtmp://live8.aliyuntest.club/AppName1/StreamName1;再根據鑒權演算法代碼實現,填入對應的播放地址計算鑒權URL,PHP demo代碼實現如下:
//http://DomainName/Filename?auth_key=timestamp-rand-uid-md5hash
//sstring = "URI-Timestamp-rand-uid-PrivateKey" (URI是使用者的請求對象相對位址, 如 /Filename)
//HashValue = md5sum(sstring)
function PrivateKeyA(){
$time=strtotime("-800 seconds");//("+1 hours");
$key="aliyun2013";
$domain="rtmp://videolive.aliyuntest.club";
$filename="/AppName1/StreamName1";
//$sstring = "URI-Timestamp-rand-uid-PrivateKey"
$sstring = $filename."-".$time."-0-0-".$key;
$md5=md5($sstring);
$auth_key="auth_key=".$time."-0-0-".$md5;
$url=$domain.$filename."?".$auth_key;
echo $url."\n";
}
為何播放地址不能正常播放?
情境
直播推流後,得到播放地址不能正常播放視頻。
排查
- 排查對應網域名稱是否進行直播配置。
在ApsaraVideo for Live控制台的網域名稱管理頁面中能否看到對應的網域名稱。
- 排查推流是否成功,請參見直播推流異常排查。
- 排查直播加速是否成功。
直播網域名稱是否在網域名稱服務 (DNS)商那邊CNAME解析到直播網域名稱CNAME網域名稱上,詳情參見佈建網域名的CNAME解析。CNAME地址擷取通過網域名稱管理頁面,在所需的網域名稱右側對應的CNAME列中擷取。

- 排查擷取的播放地址是否正確,請參見如何擷取播放地址?。
- 排查ApsaraVideo for Live網域名稱是否開啟鑒權。
擷取的播放地址是否是鑒權URL地址,詳情參見產生推流地址和播放地址。
- 排查直播網域名稱是否開啟鑒權,並且擷取的播放地址是否到期,重建鑒權地址播放測試。
- 排查對應的播放器是否支援該格式視頻的播放,使用者可以測試使用VLC播放視頻看看是否正常。