日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

直播封裝

阿里云視頻直播支持直播封裝服務(wù),支持封裝HLS、DASH、LL-HLS(低延遲HLS)等播放協(xié)議,支持TS,CMAF切片格式。通過閱讀本文,您可以了解直播封裝服務(wù)的詳細(xì)信息。

簡介

阿里云基礎(chǔ)直播服務(wù)提供RTMP、HTTP-FLV、HLS等播放協(xié)議。為支持更豐富、更低延遲的播放協(xié)議和體驗(yàn),視頻直播新增了直播封裝服務(wù),根據(jù)不同的切片類型支持低延遲HLS-TS、低延遲HLS-CMAF、HLS-CMAF、DASH-CMAF、HLS&DASH-CMAF封裝協(xié)議,如下所示:

切片類型

支持的封裝協(xié)議

支持的編碼格式

TS

低延遲HLS-TS

  • 音頻編碼:AAC、OPUS、AC3、EAC3、MP3

  • 視頻編碼:H.264、H.265

CMAF

  • 低延遲HLS-CMAF

  • HLS-CMAF

  • DASH-CMAF

  • HLS&DASH-CMAF

  • 音頻編碼:AAC

  • 視頻編碼:H.264、H.265

說明

低延遲HLS-TS會以TS格式封裝低延遲HLS協(xié)議,低延遲HLS-CMAF會以CMAF格式封裝低延遲HLS協(xié)議,其他情況以此類推。

功能及優(yōu)勢

  • 開啟直播封裝后,視頻直播流會被切成TS或CMAF切片,通過指定的HLS或LL-HLS協(xié)議向播放用戶分發(fā),用戶請求的M3U8播放列表中包含不斷刷新的切片地址。

  • 相對于HLS,LL-HLS可以將切片分割成更小(0.2~1秒)的Part切片,并支持M3U8和Part切片的阻塞加載,從而實(shí)現(xiàn)端到端低至3~5秒的延遲;相對于TS格式,CMAF封裝格式有廣泛的設(shè)備和瀏覽器支持,且支持更新的編解碼器(codec),如H.265。

  • 直播封裝服務(wù)可與直播轉(zhuǎn)碼(含多碼率轉(zhuǎn)碼)、直播時移等組合使用,可提供靈活、豐富的能力。

使用場景

低延遲直播:直播服務(wù)提供HLS播放地址,在您的業(yè)務(wù)場景中如果需要在支持HLS協(xié)議的情況下降低延遲,可以對HLS協(xié)議進(jìn)行封裝,使用LL-HLS(低延遲HLS)協(xié)議。

多設(shè)備瀏覽器支持:直播服務(wù)提供的HLS播放地址默認(rèn)采用TS切片格式進(jìn)行封裝,如果TS切片格式不能滿足您的業(yè)務(wù)需求,您可以通過封裝功能使用CMAF封裝格式進(jìn)行封裝,適配更多的設(shè)備和瀏覽器。

注意事項(xiàng)

為了CMAF和低延遲HLS播放流暢,推流需確保GOP大小穩(wěn)定,且直播封裝切片時長為GOP時長的整數(shù)倍。如封裝配置包含轉(zhuǎn)碼流,也需確保轉(zhuǎn)碼流的GOP穩(wěn)定。對于低延遲HLS:

  • 在網(wǎng)絡(luò)情況不佳時卡頓率會增高,建議與多碼率轉(zhuǎn)碼組合使用,網(wǎng)絡(luò)不佳時自動降低碼率。

  • 需要確保直播流GOP固定為1秒或2秒,否則會導(dǎo)致卡頓或播放失敗。

  • 需使用支持LL-HLS的播放器,如AliPlayer、hls.js、ExoPlayer等,建議使用AliPlayer。

  • 同一主播流域名最大支持直播觀看人數(shù)為10萬人,如需支持更多人觀看,請提交工單申請。

  • 域名第一次添加封裝配置時,會同步下發(fā)播放域名加速相關(guān)配置,3~5分鐘后可生效。

功能使用

配置直播封裝

視頻直播目前支持兩種方式進(jìn)行直播封裝功能配置。

控制臺配置直播封裝功能

  1. 登錄視頻直播控制臺
  2. 在左側(cè)導(dǎo)航欄單擊功能管理>直播封裝

  3. 單擊您要配置的播流域名,單擊添加

    image

    直播封裝配置參數(shù)及說明如下表所示。

    參數(shù)

    描述

    AppName

    • AppName必須與推流地址中的AppName名稱一樣,封裝配置才能生效。

    • AppName不超過256字符,支持?jǐn)?shù)字、大小寫字母、短劃線(-)、下劃線(_)。

    • AppName也支持輸入單個星號(*)字符,表示匹配任意字符串(包括空字符串)。

    StreamName

    • StreamName必須與推流地址中的StreamName名稱一樣,封裝配置才能生效。

    • StreamName不超過256字符,支持?jǐn)?shù)字、大小寫字母、短劃線(-)、下劃線(_)。

    • StreamName也支持輸入單個星號(*)字符,表示匹配任意字符串(包括空字符串)。

    協(xié)議配置

    選擇封裝協(xié)議,可選:

    • HLS - CMAF

    • 低延遲HLS - CMAF

    • 低延遲HLS - TS

    • DASH-CMAF

      說明

      只支持DASH

    • HLS&DASH-CMAF

      說明

      DASH和HLS都支持

    切片個數(shù)

    選擇配置的切片個數(shù),支持輸入范圍3~5的整數(shù)。

    切片時長

    • 當(dāng)協(xié)議配置選擇HLS - CMAF、DASH-CMAF、HLS&DASH-CMAF時,取值范圍為1~10的整數(shù),單位s。固定GOP,建議GOP為5s,需要保證切片時長為GOP的整數(shù)倍。

    • 當(dāng)協(xié)議配置選擇低延遲HLS - CMAF和低延遲HLS - TS時,取值范圍為1~2的整數(shù),單位s。固定GOP,建議GOP為1s,需要保證切片時長為GOP的整數(shù)倍。

    part切片時長

    僅封裝協(xié)議選擇低延遲HLS - CMAF和低延遲HLS - TS,需要配置part切片時長。取值范圍為200-1000的整數(shù),單位ms。建議略大于切片時長的1/3。

    轉(zhuǎn)碼流

    可選僅配置原始流和包含轉(zhuǎn)碼流。

    說明
    • 若AppName/StreamName匹配的視頻流配置了直播時移功能,直播時移的切片時長和格式,會按照封裝配置的切片時長和格式生效。

    • 若AppName/StreamName匹配的視頻流配置了多碼率轉(zhuǎn)碼,多碼率HLS直播的切片時長和格式,會按照封裝配置的切片時長和格式生效。

    • 若播放域名對應(yīng)的區(qū)域?yàn)楹M鈪^(qū)域時(新加坡、德國、日本、印尼),可能會存在延遲較大的問題 ,建議配置完成后請先測試驗(yàn)證是否符合預(yù)期。

  4. 配置參數(shù)后,單擊確定

API配置直播封裝功能

//需要<>內(nèi)容替換成實(shí)際使用的值
DefaultProfile profile = DefaultProfile.getProfile("<regionId>", "<ALIBABA_CLOUD_ACCESS_KEY_ID>", "<ALIBABA_CLOUD_ACCESS_KEY_SECRET>");
IAcsClient client = new DefaultAcsClient(profile);
AddLivePackageConfigRequest addLivePackageConfigRequest = new AddLivePackageConfigRequest();
addLivePackageConfigRequest.setDomainName("<DomainName>");
//AppName不超過256字符,支持?jǐn)?shù)字、大小寫字母、短劃線(-)、下劃線(_)。
//AppName也支持輸入單個星號(*)字符,表示匹配任意字符串(包括空字符串)。
addLivePackageConfigRequest.setAppName("<AppName>");
//StreamName不超過256字符,支持?jǐn)?shù)字、大小寫字母、短劃線(-)、下劃線(_)。
//StreamName也支持輸入單個星號(*)字符,表示匹配任意字符串(包括空字符串)。
addLivePackageConfigRequest.setStreamName("<StreamName>");
//直播協(xié)議與封裝格式。
addLivePackageConfigRequest.setBizProtocol("<Protocol>");
//直播M3U8切片個數(shù),支持輸入范圍3~5的整數(shù)。
addLivePackageConfigRequest.setSegmentNum(<3>);
//切片時長,單位:秒。
//封裝協(xié)議為低延遲HLS時,取值范圍為1~2的整數(shù),單位s。固定GOP,建議GOP為1s,需要保證切片時長為GOP的整數(shù)倍。
//封裝協(xié)議為HLS或DASH時,取值范圍為1~10的整數(shù),單位s。固定GOP,建議GOP為5s,需要保證切片時長為GOP的整數(shù)倍。
addLivePackageConfigRequest.setSegmentDuration(<5>);
//Part切片時長,僅在封裝協(xié)議包含低延遲HLS時有效。取值范圍為200-1000的整數(shù),單位ms。建議略大于切片時長的1/3。
addLivePackageConfigRequest.setPartDuration(<350>);
//是否忽略轉(zhuǎn)碼流,默認(rèn)值true。
addLivePackageConfigRequest.setIgnoreTranscode(<true>);
try {
      AddLivePackageConfigResponse addLivePackageConfigResponse = client.getAcsResponse(addLivePackageConfigRequest);
      System.out.println(new Gson().toJson(addLivePackageConfigResponse));
       // todo something.
 } catch (ServerException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
 } catch (ClientException e) {
      // TODO Auto-generated catch block
       e.printStackTrace();
 }
說明
  • <Protocol>取值以及更多接口說明請參見AddLivePackageConfig

  • 使用JAVA SDK,具體請參見Java SDK使用說明

  • 重新推流配置才能生效。

  • 配置協(xié)議封裝的情況下,原畫播流地址仍然可以正常使用。

使用直播封裝

推流

在使用直播封裝功能時,為了CMAF和低延遲HLS播放流暢,推流需確保GOP大小穩(wěn)定。

OBS推流可參考如下設(shè)置(關(guān)于OBS更多使用信息,請參見OBS推流工具):

image.png

播放

對于不同的封裝協(xié)議,需使用不同的播放地址。各封裝協(xié)議播放地址示例如下:

封裝協(xié)議

地址示例

HLS

http://<DomainName>/<AppName>/<StreamName>.m3u8?aliyunols=on&auth_key=1725503*****

DASH

http://<DomainName>/<AppName>/<StreamName>.mpd?aliyunols=on&auth_key=17255038******

低延遲HLS

http://<DomainName>/<AppName>/<StreamName>-llhls.m3u8?aliyunols=on&auth_key=1725503******
說明
  • 在播放封裝流時,aliyunols=on為必填固定參數(shù)。

  • 各封裝格式提供的協(xié)議地址如下:

    • 低延遲HLS-TS:低延遲HLS地址和HLS地址。

    • 低延遲HLS-CMAF:低延遲HLS地址和HLS地址。

    • HLS-CMAF:HLS地址。

    • DASH-CMAF:DASH地址。

    • HLS&DASH-CMAF:HLS地址和DASH地址。

  • 推薦您使用阿里云播放器,關(guān)于阿里云播放器說明請參見播放器SDK

您可以參考以下示例使用Web端阿里云播放器播放:

image

  1. 選擇播放類型為直播

  2. 輸入播放地址。

  3. 點(diǎn)擊播放預(yù)覽進(jìn)行播放。

重要
  • 為支持瀏覽器跨域播放,需要配置HTTP頭Access-Control-Allow-Origin,詳情請參見配置HTTP消息頭

進(jìn)階使用

封裝轉(zhuǎn)碼流

直播封裝功能可以結(jié)合轉(zhuǎn)碼功能使用,對轉(zhuǎn)碼流進(jìn)行協(xié)議封裝。

封裝轉(zhuǎn)碼流,需要先完成直播轉(zhuǎn)碼功能配置,具體操作請參見直播轉(zhuǎn)碼

此處假設(shè)您已完成轉(zhuǎn)碼功能配置。

在進(jìn)行封裝配置時,將轉(zhuǎn)碼流也進(jìn)行封裝。

//是否忽略轉(zhuǎn)碼流,true/false,默認(rèn)值true
addLivePackageConfigRequest.setIgnoreTranscode(<false>);

播放封裝轉(zhuǎn)碼流只需要將封裝協(xié)議地址StreamName替換成StreamName_轉(zhuǎn)碼模板ID的形式。

例如現(xiàn)在要播放一個低延遲HLS的轉(zhuǎn)碼流,示例地址如下:

http://<DomainName>/<AppName>/<StreamName_轉(zhuǎn)碼模板ID>-llhls.m3u8?aliyunols=on&auth_key=1725503******
說明
  • 建議您可以將封裝功能與多碼率轉(zhuǎn)碼功能結(jié)合使用,在網(wǎng)絡(luò)不佳時自動調(diào)整碼率播放。

  • 播放封裝多碼率轉(zhuǎn)碼流只需將StreamName替換成StreamName_轉(zhuǎn)碼模板組ID的形式。

重要
  • 封裝多碼率轉(zhuǎn)碼流,轉(zhuǎn)碼流地址會按照直播封裝指定的協(xié)議和切片格式改變(例如指定封裝格式為DASH-CMAF,多碼率轉(zhuǎn)碼將只會提供DASH轉(zhuǎn)碼流地址,不會提供HLS轉(zhuǎn)碼流地址)。

  • 封裝通用轉(zhuǎn)碼或自定義轉(zhuǎn)碼流,轉(zhuǎn)碼流地址不受影響,會另外增加轉(zhuǎn)碼流的封裝地址。

  • 封裝地址請參見本文檔播放封裝流相關(guān)內(nèi)容。

時移播放封裝流

直播時移功能可以讓直播觀眾在直播過程中回看直播內(nèi)容,直播封裝功能可與直播時移功能組合使用,詳情可參見直播時移

說明

如果開啟了直播時移,時移的封裝格式將采用直播封裝指定的切片長度和格式。對于HLS或低延遲HLS-CMAF格式,直播時移切片也將變成CMAF格式;對于低延遲HLS-TS格式,直播時移切片仍為TS格式。

相關(guān)文檔

更多直播封裝相關(guān)API,請參見直播封裝相關(guān)接口