摘要:直播推流初始化設(shè)置 要進(jìn)行直播推流,您必須開啟直播加速 > 配置直播域名 > 直播推流,詳情參考 快速開始。 如何獲取推流地址 直播加速配置成功后,您可以通過以下方式獲取對應(yīng)的推流地址。 登錄 視頻直播控制臺。
直播推流初始化設(shè)置
要進(jìn)行直播推流,您必須開啟直播加速 > 配置直播域名 > 直播推流,詳情參考快速開始。
如何獲取推流地址
直播加速配置成功后,您可以通過以下方式獲取對應(yīng)的推流地址。
登錄視頻直播控制臺。
單擊 域名管理。 選擇所需地域。 選擇所需的域名。 選擇所需域名,并單擊右側(cè)的 管理。 在 基本信息 中,獲取對應(yīng)的推流地址:rtmp://video-center.alivecdn.com/appname/streamname?vhost=videolive.aliyuntest.club 。
注意:
直播配置成功后,對應(yīng)的推流地址獲取是不需要調(diào)用 api 或者 sdk 生成或者初始化的,使用推流工具推流的時候,填入需要的 appname 或者 streamname 進(jìn)行推流即可。如指定推流地址:rtmp://video-center.alivecdn.com/1/2?vhost=live.aliyun.com。 推流地址中 appname 是應(yīng)用名稱,支持自定義,可以更改。 推流地址中 streamname 是流名稱,支持自定義,可以更改。 推流的 appname 或 streamname 不建議設(shè)置為中文字符。
為何obs推流不成功
obs 推流不成功,對應(yīng) 視頻直播控制臺 > 流管理,正在推流信息中不能看到對應(yīng)流.obs如何進(jìn)行推流,詳情參考o(jì)bs 操作指南。
排查
排查對應(yīng)域名是否進(jìn)行直播配置:視頻直播控制臺 > 域名管理 中能否看到對應(yīng)的域名。直播加速配置參考直播加速配置。 排查obs推流配置填寫的是否準(zhǔn)確,詳情參考o(jì)bs 推流。
obs推流配置如下:
fms url / url: rtmp://video-center.alivecdn.com/appname
播放路徑/串碼流(如果存在)/ 流秘鑰: streamname?vhost=live.aliyun.com
排查直播域名是否開啟了a鑒權(quán)。
1.登錄 視頻直播控制臺。
2.單擊 域名管理。
3.選擇所需的地域。
4.選擇所需的域名。
5.單擊所選域名右側(cè) 管理。
6.單擊 鑒權(quán)配置。
如果開啟,計得算推流地址(rtmp://video-center.alivecdn.com/appname/streamname?vhost=videolive.aliyuntest.club)的鑒權(quán)地址進(jìn)行推流,鑒權(quán)地址計算參考快速開始第4點(diǎn)鑒權(quán)配置。
直播推流支持哪些協(xié)議
視頻直播只支持rtmp協(xié)議推流
直播推流如何進(jìn)行鑒權(quán)推流
直播鑒權(quán)開啟及鑒權(quán)地址計算參考快速開始第4點(diǎn)鑒權(quán)配置。
鑒權(quán)地址計算完成后,使用對應(yīng)的鑒權(quán)地址進(jìn)行推流:
obs推流配置類似如下:
fms url / url: rtmp://video-center.alivecdn.com/appname
播放路徑/串碼流(如果存在)/ 流秘鑰: streamname?vhost=live8.aliyuntest.club&auth_key=1487766738-0-0-a96e76d2ebf9bbd855b0d4a9168ee600;
如何確認(rèn)推流成功
1.登錄 視頻直播控制臺。
2.單擊 流管理。
3.選擇所需的地域。
4.選擇所需的域名。
5.流狀態(tài)選擇 正在推流。
6.如果可以查看到存在對應(yīng)流,則推流成功。
禁止推流的情況該如何實(shí)現(xiàn)?
用戶存在業(yè)務(wù)場景需求某路流臨時禁止推流。例如,對應(yīng)的鑒權(quán)推流地址暴露,客戶惡意推流該地址、業(yè)務(wù)需求禁止該推流url進(jìn)行推流等,就可以使用直播的禁止推流功能滿足該需求。推流及鑒權(quán)推流地址概念參考 直播推流地址相關(guān)問題。
直播控制臺禁止推流
1.獲取正在推流地址并加入黑名單
直播推流成功后,您可以在 視頻直播控制臺 > 流管理 > 選擇所需的地域和域名 > 選擇正在推流,查看到正在推流的地址,單擊 加入黑名單 即可。
2.獲取歷史推流地址并加入黑名單
直播推流成功后,您可以在 視頻直播控制臺 > 流管理 > 選擇所需的地域和域名 > 選擇歷史推流,查看到歷史推流地址,單擊 加入黑名單 即可。
sdk實(shí)現(xiàn)禁止推流
視頻直播的api是基于阿里云的openapi實(shí)現(xiàn)的。因此,sdk的調(diào)用也是對openapi封裝后調(diào)用。以java sdk為例,java sdk建議使用maven管理項(xiàng)目依賴,在pom.xml中添加如下的依賴項(xiàng):
<dependencies><dependency><groupid>com.aliyun</groupid><artifactid>aliyun-java-sdk-cdn</artifactid><version>2.3.1</version></dependency><dependency><groupid>com.aliyun</groupid><artifactid>aliyun-java-sdk-core</artifactid><optional>true</optional><version>2.3.8</version></dependency></dependencies>
其中,aliyun-java-sdk-core是對阿里云openapi封裝的核心模塊,在使用openapi的產(chǎn)品調(diào)用java sdk均需要添加該依賴項(xiàng),而aliyun-java-sdk-cdn包括了視頻直播接口的request和response類;其中禁止推流的request和response類為forbidlivestreamrequest及forbidlivestreamresponse,java代碼示例如下:
public static void main(string[] args) throws exception { iclientprofile profile = defaultprofile.getprofile("cn-hangzhou", accessid, accesskey); defaultacsclient client = new defaultacsclient(profile); forbidlivestreamresponse res=forbidlivestreamr(client); system.out.println(res.getrequestid()); } static forbidlivestreamresponse forbidlivestreamr(defaultacsclient client){ forbidlivestreamrequest request =new forbidlivestreamrequest(); request.setdomainname("<domainname>"); request.setappname("<appname>"); request.setstreamname("<streamname>"); request.setlivestreamtype("publisher"); forbidlivestreamresponse response=null; try { response = client.getacsresponse(request); }catch (serverexception e) { e.printstacktrace(); } catch (clientexception e) { e.printstacktrace(); } return response; }
demo代碼主要流程如下:
初始化client對象。sdk需要通過iacsclient對象完成對openapi的調(diào)用,而初始化iacsclient對象時根據(jù)iclientprofile對象配置region、accesskeyid和accesskeysecret參數(shù)。其中,region請一直寫cn-hangzhou,因?yàn)檫@里指的是openapi的服務(wù)器所在區(qū)域。accesskeyid和accesskeysecret參數(shù)即是賬號權(quán)限驗(yàn)證,如果是主賬號的accesskeyid和accesskeysecret,則可以正常使用。如果是子賬號的accesskeyid和accesskeysecret參數(shù),則需要保證該子賬號有視頻直播的權(quán)限。 初始化請求request類。sdk對每個接口實(shí)現(xiàn)了對應(yīng)的request類