-
當前位置:首頁 > 創(chuàng)意學院 > 景觀設計 > 專題列表 > 正文
hls網(wǎng)絡用語是什么意思(網(wǎng)絡語言hls什么意思)
大家好!今天讓小編來大家介紹下關于hls網(wǎng)絡用語是什么意思的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
創(chuàng)意嶺作為行業(yè)內優(yōu)秀的企業(yè),服務客戶遍布全球各地,相關業(yè)務請撥打電話:175-8598-2043,或添加微信:1454722008
文章目錄列表:
一、現(xiàn)在網(wǎng)上的視頻很多都是m3u8格式的,它們用這種格式有什么好處?
「m3u」和「m3u8」文件都是蘋果公司使用的 HTTP Live Streaming(HLS) 協(xié)議格式的基礎。M3U它是一種播放多媒體列表的文件格式,而m3u8 是 Unicode 版本的 M3U,使用 UTF-8 編碼。
m3u8格式特點是帶有一個目錄信息或文件。m3u8說白了只是一個播放列表,里面存的是一堆視頻片段的 URL。
m3u8如何播放?
現(xiàn)在很多的媒體播放器都支持m3u8播放,而不局限于蘋果設備。以potplayer來說,右鍵打開-打開文件-打開鏈接,將m3u8鏈接粘貼進去播放即可。當然,前提你要保證此鏈接的可用性。
m3u8如何下載?
m3u8 本身是一個文本文件,里面存的是一堆視頻片段的 URL,一個個下載下來再合并就行。不過這也是一個繁瑣而麻煩的工作。當然你可以考慮批量下載工具,再后期合并。利用python實現(xiàn)的也不少,畢竟一體化下載和合并的工具有時候并非很適用,不如代碼根據(jù)實際需求修改。
m3u8用途?
m3u8 文件其實是 HTTP Live Streaming(縮寫為 HLS) 協(xié)議的部分內容,而 HLS 是一個由蘋果公司提出的基于 HTTP 的流媒體網(wǎng)絡傳輸協(xié)議。
而HLS實際上是一種防盜鏈技術手段。給 m3u8 和 ts 文件的url動態(tài)生成一個 token,url是隨著很多參數(shù)動態(tài)變化的,比如時間,用戶id、ip地址,內容id ,導致你無法使用這個固定的url盜鏈,這種方式可以防止其他網(wǎng)站直接使用你的url來觀看或者一般用戶的下載。
下面我們一起談談m3u8是指什么,有什么好處。
M3U8視頻格式也是一種M3U,是某些移動設備例如安卓,蘋果手機瀏覽器緩存視頻的“專用視頻格式”。只是它的編碼格式是UTF-8格式。M3U用Latin-1字符集編碼。M3U8格式特點是帶有一個目錄信息或文件,而許多安卓手機或者iPhone手機瀏覽器緩存的電影格式都為M3U8,需要進行轉碼才可以播放。
M3U8文件是指UTF-8編碼格式的M3U文件。M3U文件是記錄了一個索引純文本文件,打開它時播放軟件并不是播放它,而是根據(jù)它的索引找到對應的音視頻文件的網(wǎng)絡地址進行在線播放。而M3U8有啥好處呢?主要是可以做多碼率的適配,根據(jù)網(wǎng)絡帶寬,客戶端會自動選擇一個適合自己碼率的文件進行播放,保證視頻流的流暢。
m3u8 文件其實是 HTTP Live Streaming(縮寫為 HLS) 協(xié)議的部分內容,而 HLS 是一個由蘋果公司提出的基于 HTTP 的流媒體網(wǎng)絡傳輸協(xié)議。
HLS 的工作原理是把整個流分成一個個小的基于 HTTP 的文件來下載,每次只下載一些。當媒體流正在播放時,客戶端可以選擇從許多不同的備用源中以不同的速率下載同樣的資源,允許流媒體會話適應不同的數(shù)據(jù)速率。在開始一個流媒體會話時,客戶端會下載一個包含元數(shù)據(jù)的 extended M3U (m3u8) playlist文件,用于尋找可用的媒體流。HLS 只請求基本的 HTTP 報文,與實時傳輸協(xié)議(RTP)不同,HLS 可以穿過任何允許 HTTP 數(shù)據(jù)通過的防火墻或者代理服務器。它也很容易使用內容分發(fā)網(wǎng)絡來傳輸媒體流。
二、LL-HLS 簡介
LL-HLS 即:Low-Latency HLS。相比較于HLS,延遲更低,官方說明,最低延遲在3s左右。
延遲是指某一特定視頻幀被設備(攝像機、播放機、編碼器等)捕獲的時間與該幀在終端用戶顯示器上播放的時間之間的時間差
1.各個環(huán)節(jié)的緩存區(qū)
2.服務端的GOP緩存
3.帶寬和傳輸距離
4.網(wǎng)絡抖動和擁塞控制
HLS的一個分片大概5-10s,一般加載3個分片播放。所以延遲大概15-30s.
使用EXT-X-PART標簽來表示更小的分片,一個分片的最小持續(xù)時間為200毫秒。
下面HLS文件中可以看到第271分片被分割成11部分,每部分333ms。
通過HTTP/2推送模式節(jié)省兩次RTT:
不發(fā)送完整的播放列表,而是發(fā)送播放列表的增量(默認的播放列表被保存,然后只在出現(xiàn)時發(fā)送增量,而不是發(fā)送完整的播放列表);
服務器的責任是保留請求(阻塞),直到包含新片段的播放列表版本可用。阻斷播放列表的重新加載消除了輪詢;
通過在客戶端請求中,增加參數(shù)來表明需要哪個位置的數(shù)據(jù):
_HLS_msn=<M> : 序列號
_HLS_part=<N>: part號
_HLS_skip=YES|v2 可以跳過
例如:
對請求: https://example.com/2M/waitForMSN.php?_HLS_msn=273&_HLS_part=3 &_HLS_skip=YES 的響應如下:
通過EXT-X-PRELOAD-HINT標簽,來聲明即將產生的片段。
客戶端可以提前發(fā)起請求,當該片段生成時立即回復給客戶端。
LL-HLS圍繞影響延時的幾個因素,進行優(yōu)化。
更小的分片劃分,相當于減少的服務端的緩存, PRELOAD標簽減少網(wǎng)絡建聯(lián)耗時的影響,服務器阻塞,減少建聯(lián)耗時和輪詢消耗。
參考地址:
https://developer.apple.com/documentation/http_live_streaming/enabling_low-latency_http_live_streaming_hls
https://zhuanlan.zhihu.com/p/358492414
三、HLS視頻加密及本地播放
將視頻從MP4文件切片成多個ts文件,并使用AES-128對每一片視頻進行加密,最后生成m3u8文件
視頻加密參考: https://www.cnblogs.com/codeAB/p/9184266.html
舉個例子
對于Android手機是不能直接播放的,必須要搭建服務器,使用Ubuntu搭建服務器請參考 網(wǎng)絡直播/點播服務器搭建
這里主要講解如何在Android手機上搭建m3u8視頻服務器, NanoHTTPD 可以輕松搭建WebServer。
本地播放參考 https://gitee.com/2021/LPlayer
開啟服務
關閉服務
服務器請求鏈接說明
最后提供一個 單java文件的NanoHTTPD ,簡單,高效,贊一個
四、在網(wǎng)絡直播中什么叫推流?
推流,指的是把采集階段封包好的內容傳輸?shù)椒掌鞯倪^程。其實就是將現(xiàn)場的視頻信號傳到網(wǎng)絡的過程?!巴屏鳌睂W(wǎng)絡要求比較高,如果網(wǎng)絡不穩(wěn)定,直播效果就會很差,觀眾觀看直播時就會發(fā)生卡頓等現(xiàn)象,觀看體驗很是糟糕。
要想用于推流還必須把音視頻數(shù)據(jù)使用傳輸協(xié)議進行封裝,變成流數(shù)據(jù)。常用的流傳輸協(xié)議有RTSP、RTMP、HLS等,使用RTMP傳輸?shù)难訒r通常在1_3秒,對于手機直播這種實時性要求非常高的場景,RTMP也成為手機直播中最常用的流傳輸協(xié)議。最后通過一定的Qos算法將音視頻流數(shù)據(jù)推送到網(wǎng)絡斷,通過CDN進行分發(fā)。
擴展資料:
直播中使用廣泛的“推流協(xié)議”一般是RTMP(RealTimeMessagingProtocol——實時消息傳輸協(xié)議)。該協(xié)議是一個基于TCP的協(xié)議族,是一種設計用來進行實時數(shù)據(jù)通信的網(wǎng)絡協(xié)議,主要用來在Flash/AIR平臺和支持RTMP協(xié)議的流媒體/交互服務器之間進行音視頻和數(shù)據(jù)通信。支持該協(xié)議的軟件包括AdobeMediaServer/UltrantMediaServer/red5等。
在高精尖沙龍直播中,最初使用傳統(tǒng)設備進行“推流”。
具體過程就是:通過網(wǎng)線將EFP系統(tǒng)中的切換臺、網(wǎng)絡編碼器、筆記本按順序連接,連接完成后確保筆記本電腦的IP地址和網(wǎng)絡編碼器的地址在同一網(wǎng)段,然后在電腦頁面上對編碼器的各種“推流參數(shù)”進行調整,為保證正?!巴屏鳌?,還需設置網(wǎng)絡推流地址,輸入推流地址、直播地址、視頻模式、分辨率、碼率、播放域名、播放地址等內容。設置完畢后確認IP地址,再進行網(wǎng)絡測速,并確保網(wǎng)絡與網(wǎng)絡編碼器連接正常。此種“推流”所需設備過多,出現(xiàn)問題后十分麻煩,需要對設備進行逐一排查,極耗費時間。
后來,將直播系統(tǒng)改為Livestudio系統(tǒng),“推流”內置在Livestudio的軟件之中,整個“推流”過程不再需要額外的網(wǎng)絡編碼器和筆記本等設備,也無需再設置IP,只要網(wǎng)絡正常,聯(lián)網(wǎng)即可完成操作,還可根據(jù)網(wǎng)絡的實際情況設置“推流”的質量以滿足要求。此種操作十分便捷,有效避免了上述問題的出現(xiàn)。
參考資料:百度百科:網(wǎng)絡直播
以上就是小編對于hls網(wǎng)絡用語是什么意思問題和相關問題的解答了,如有疑問,可撥打網(wǎng)站上的電話,或添加微信。
推薦閱讀:
chatGPT數(shù)據(jù)哪里來的(chatchlog)