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

基本概念

通過閱讀本文,您可以了解MediaBox音視頻SDK產品中常用名詞的基本概念。

產品定義

MediaBox音視頻SDK

MediaBox音視頻SDK整合了直播推流SDK、播放器SDK、短視頻SDK、美顏特效SDK等產品,為AUI Kits低代碼應用方案提供端側音視頻能力,例如推流、連麥、播放、IM互動等功能。您可以一站式獲取完備的音視頻能力,實現業務敏捷創新。更多信息,請參見什么是音視頻終端SDK

image

AUI Kits

AUI Kits低代碼集成工具是阿里云基于豐富的音視頻實踐沉淀,提供的aPaaS產品,對MediaBox音視頻SDK進行模塊化封裝,提供標準化的開源UI組件。您可以根據業務需求直接使用AUI Kits進行接入,降低研發成本和周期,提升業務效果。

AppServer

AppServer基于函數計算(FC)等方式為AUI Kits低代碼集成工具提供了一套快捷部署、靈活定制的后臺服務。直播間AppServer為AUI Kits互動直播場景SDK提供了房間管理、連麥管理、用戶鑒權、信令管理等功能,只需要5~10分鐘即可完成后臺服務搭建。您也可以通過容器鏡像或源代碼構建等方式進行部署。

image

RTS 1.0與RTS 2.0的區別

對比項

RTS 2.0

RTS 1.0

定義

邊緣推流,不經過直播中心。如果想要錄制、轉碼,則需配置旁路轉推,轉推到一個RTMP域名上面,然后在RTMP域名上錄制。

直播中心推流,因此可以進行錄制、轉碼等。

播放協議

支持ARTC(基于WebRTC)協議流的播放。

端到端延時

200~400ms。

500~1000ms。

使用限制

推流、播放側同時集成RTS SDK。

僅播放側集成RTS SDK。

抗弱網能力

全鏈路丟包30%的情況下可以流暢播放。

播放側丟包30%的情況下可以流暢播放。

兼容性

  • Native端:兼容主流操作系統。

  • Web端:終端兼容率大于98%。

覆蓋區域

全球

最佳實踐

實時直播:將延時降低至200~400ms

超低延時直播快速入門

流媒體

點播、直播和推流的區別

  • 推流:主播將本地音視頻源推送到阿里云視頻云服務器。

  • 直播:直接觀看主播客戶端或直播中心實時推送過來的音視頻數據,時間延遲一般不會太長。

  • 點播:視頻源已經事先存儲于阿里云視頻云媒資庫內,觀眾隨時可以觀看。

常見的點播協議

目前常見的點播格式有3種:MP4、HLS和FLV。

  • MP4:MP4是一種經典的文件格式,廣泛支持移動終端和瀏覽器(包括iOS和大部分Android設備上的系統瀏覽器以及PC上的FLASH控件)。然而,MP4的視頻文件格式相對復雜,處理成本較高,并且由于其復雜的索引表結構,導致較長時長(如半小時)的MP4文件在線播放時加載速度較慢,更適用于點播短視頻場景。

  • HLS:由蘋果公司推出的標準,在移動終端的瀏覽器上具有很好的支持。但在IE上的支持情況取決于FLASH的二次開發工作(建議使用阿里云播放器SDK Web端)。HLS采用簡潔的M3U8索引結構,能夠避免MP4索引慢的問題,常用于點播中長視頻場景。

  • FLV:Adobe公司推出的標準,目前是直播平臺最常用的封裝格式,在PC端具有強大的FLASH支持,但在移動終端只有通過App實現播放器才能支持,大部分手機端瀏覽器均不支持。

常見的直播協議

目前常見的直播協議有3種:RTMP、FLV和HLS。

  • RTMP:RTMP協議是一種功能強大的協議,可以用于推送和直播。核心理念是將視頻幀和音頻幀分割成小數據包,并在互聯網上進行傳輸。此外,RTMP協議還支持加密,因此具有較高的隱私性。然而,由于拆包和組包的復雜性,當面對海量并發時,可能會出現一些不可預測的穩定性問題。

  • FLV:Adobe公司推出的標準,該協議的格式非常簡單。它只是在視頻幀和視頻頭部添加了一些標記頭信息。由于其極簡的設計,FLV協議在延遲表現和大規模并發方面非常成熟。唯一的缺點是在移動端瀏覽器上的支持非常有限。然而,作為移動端App直播協議,FLV協議非常適用。

  • HLS:由蘋果公司推出的標準,將視頻分割為5~10秒的小切片,并使用M3U8索引表進行管理。客戶端下載到的視頻都是5~10秒的完整數據,因此視頻的流暢性很好。然而,這種方法也會引入較大的延遲,一般為10~30秒(HLS的常見延遲范圍)。與FLV相比,HLS在iPhone和大多數Android手機瀏覽器上的支持非常好。

常見的推流協議

目前常見的推流協議是RTMP,阿里云視頻云還支持超低延時直播RTS推流。

  • RTMP:由主播端向直播中心服務器推流一般采用RTMP協議。

  • RTS:超低延時直播RTS是阿里云視頻直播的重要增值功能,可以提供客戶端易接入、超低延時、高并發、高清流暢的視頻直播服務。

SDK集成與使用

SDK License

MediaBox音視頻SDK是阿里云視頻云推出的終端SDK,提供場景化的終端音視頻能力,您可以通過申請免費License、付費購買或消費達標贈送獲取SDK的使用授權。

SDK License通過與應用標識一一綁定以實現對該應用調用SDK進行授權。例如,當一個播放器SDK的License與應用A綁定后,應用A就可以使用播放器SDK的功能,每一個License最多可以綁定一款Android應用和iOS應用。您也可以在視頻直播視頻點播控制臺上新增和續期License,計費詳情請參見計費項

在控制臺上完成創建應用并綁定License后,會生成一套License File(證書文件)和License Key。在MediaBox音視頻SDK集成過程中,您需要將License File和Key配置到對應的應用中。MediaBox音視頻SDK將通過License File和Key來校驗當前應用的授權情況。每個阿里云賬號下默認生成唯一的License Key,按照應用維度生成License File,不論License授權的內容和類型,這組License File和Key都是唯一且不會變更。

命名沖突(duplicate symbol)

在集成MediaBox音視頻SDK時常遇到的一種編譯錯誤,因為一個進程中不能有重名函數(編譯器會將函數編譯成symbol),如果出現重復的,就會給鏈接器帶來“選擇困難癥”。

目前,阿里云視頻云終端SDK之間,由于媒體組件化架構設計,不同SDK之間會存在沖突。如果需要用到兩個業務功能場景,請使用功能場景一體化包。例如短視頻和播放器業務,請使用AliVCSDK_UGC包,不僅在功能上一致,而且做到更小的包體積。

直播推流SDK

碼率控制

一種編碼的優化算法,用于控制視頻流碼流的大小。同樣的視頻編碼格式,碼流越大,包含的信息越多,對應的圖像也就越清晰,反之亦然。

視頻丟幀

發送視頻幀時,如果網絡非常差,導致視頻幀堆積嚴重,可以通過丟棄視頻幀來縮短推流的延時。

耳返

指主播可以通過耳機實時聽到自己的聲音。例如,當主播帶上耳機唱歌時,需要把握音調,這時就需要開啟耳返功能。因為聲音通過網絡傳入耳朵和通過空氣傳入耳朵差異很大,而主播需要直接聽到觀眾端的效果。

混音

把多種來源的聲音整合至一個立體音軌或單音音軌中,推流SDK支持音樂和人聲的混音。

合流

把多種來源的視頻圖像數據根據位置疊加到同一個視頻畫面中。目前僅Android推流SDK支持。

動態庫

即動態鏈接庫,與常用的靜態庫相反。動態庫在編譯時并不會被拷貝到目標程序中,目標程序中只會存儲指向動態庫的引用。在程序運行時,動態庫才會被真正加載進來。

說明

Xcode加載動態庫需要加載到Embedded Binaries中,而不是加載到Linked Frameworks and Libraries中。

短視頻SDK

視頻分辨率、碼率

視頻分辨率指的是視頻橫向和縱向上的有效像素,理論上視頻分辨率越高,圖像越清晰。但分辨率越高也意味著文件越大,處理越耗時。考慮到移動端不同設備性能差異,不建議直接使用屏幕像素值作為視頻分辨率,建議設置分辨率720P及以下。

碼率又叫比特率,指的是每秒傳送的比特(bit)數。單位為bps(Bit Per Second)。壓縮視頻時給視頻指定碼率參數,用以告訴視頻編碼器期望的壓縮后視頻的大小。在一定范圍內,碼率越高,視頻越清晰,文件也越大。

常見的視頻分辨率及建議碼率如下:

清晰度

1∶1

3∶4

9∶16

建議碼率(單位:bps)

480P

480×480

480×640

480×853

1000000~2000000

540P

540×540

540×720

540×960

2000000~3000000

720P

720×720

720×960

720×1280

2000000~4000000

1080P

1080×1080

1080×1440

1080×1920

2000000~6000000

幀率

視頻幀率指的是每秒鐘顯示的圖像幀數,單位Frame per Second(fps)。幀率越高,圖像越流暢,文件也越大。建議視頻幀率:25~30。

關鍵幀

幀是組成視頻圖像的基本單位,視頻文件是由多個連續的幀組成。關鍵幀也叫I幀,它是幀間壓縮編碼里的重要幀,解碼時僅用I幀的數據就可重構完整圖像,I幀不需要參考其他畫面而生成。關鍵幀可以做為隨機訪問(seek)的參考點,可以當成圖像。

GOP

Group of Picture(以下簡稱GOP)顧名思義就是有一組幀組成的一個序列。一個GOP由關鍵幀開始,后面跟隨者一組B幀和P幀。GOP過小,會導致I幀的比例增高,壓縮比降低。GOP過大,會導致隨機訪問(seek)更耗時,同時,會導致倒播卡頓(倒播需要解碼一個GOP才能播放視頻幀)。SDK中GOP默認值為5,建議GOP值為5~30。

說明

編輯模塊實現視頻倒播功能時,如果導入視頻GOP過大,需要先轉碼處理。

填充模式

當素材圖片或視頻的分辨率長寬比與導出視頻分辨率長寬比不一致時,會涉及填充模式的選擇。SDK支持兩種填充模式:

填充模式

處理方法

裁剪模式

保持長寬比,裁剪圖片,只顯示中間區域。

縮放模式

保持長寬比,使圖片能完整顯示,上下或左右填充顏色。

編碼方式

編碼方式有以下兩種:

編碼方式

編碼詳情

軟編

使用CPU進行編碼。軟編可以配置的參數更豐富,同等碼率下生成的視頻更清晰,但編碼速度比較慢,CPU負載高,手機更容易發熱。

硬編

使用非CPU以外的硬件進行編碼。硬編編碼速度更快,CPU負載低,但清晰度比軟編略差,部分安卓設備上可能存在適配性問題。

資源說明

SDK資源主要包括人臉識別模型資源、濾鏡資源和動效濾鏡資源。SDK資源可以保存到網絡端,也可以直接內資到安裝包中。考慮到SDK下載包的大小,建議您將SDK資源保存到網絡端,在啟動App時下載。

說明

由于Android平臺不支持Assets流,如果是打包到APK中,啟動后必須將資源復制到SD Card中。資源文件及使用說明可以在SDK下載包中獲取。

支持格式

支持導入的媒資格式:

類型

格式

視頻

MP4、MOV、FLV

音頻

MP3、AAC、PCM

圖片

JPG、PNG、GIF

視頻合拍

視頻合拍從產品功能層面是指兩路視頻(一路來自樣本視頻,一路來自設備攝像頭采集)按照指定的布局模式(左右分屏、上下分屏、畫中畫等)進行合成,合成的視頻每一幀畫面將會同時包含兩路視頻的畫面,而合拍視頻的音頻部分則采用樣本視頻的音頻。以下為范例視圖,實際上SDK內部支持開發者自己組織布局,關于如何布局將在后面講述。

image

多源錄制

多源錄制可以支持View錄制、攝像頭錄制等多種視頻采集源按需組合的合拍錄制。從產品功能層面是指多個畫面數據來源(例如View錄制采集的畫面數據、攝像頭采集的畫面數據),按照指定的布局模式(左右分屏、上下分屏、畫中畫等)進行合成,合成出來的視頻每一幀畫面將會同時包含上訴畫面數據來源。以下為范例視圖,實際上可支持開發者自己組織布局,關于如何布局將在后面講述。

image

軌道

  • 在上述視頻合拍概念中提及的兩路視頻在SDK中被抽象為兩個軌道:A軌道和B軌道,A軌道放設備采集的視頻,B軌道放樣本視頻,用軌道抽象有利于您理解軌道布局的概念。

  • 在上述多源錄制中提及的多路畫面數據來源在SDK中被抽象為多個軌道,如A軌道放攝像頭采集畫面,B軌道放View錄制采集畫面,用軌道抽象有利于您理解軌道布局的概念。

軌道布局

軌道布局是軌道的屬性之一,用來描述該軌道的視頻畫面,在合拍生成的視頻中如何“擺放”,軌道布局在一個歸一化的坐標系中,從兩個緯度來描述軌道布局信息,分別是中心點的坐標和軌道size(即寬高信息)。

  • 視頻合拍的軌道布局如下圖所示:

    p694702.png

    在該布局畫面中,軌道A和軌道B的畫面各占一半,因此,兩個軌道的寬度均為0.5,而高度則都為1.0,而軌道A的中心點坐標:(0.25,0.5),軌道B的中心點坐標:(0.75,0.5)。

  • 多源錄制的軌道布局如下圖所示:

    p694703.png

    在該布局畫面中,軌道A和軌道B的畫面各占一半,因此,兩個軌道的寬度均為0.5,而高度則都為1.0,而軌道A的中心點坐標:(0.25,0.5),軌道B的中心點坐標:(0.75,0.5)。