年入千萬(wàn)就指望它了,視頻直播背后的技術(shù)

0 評(píng)論 16312 瀏覽 25 收藏 4 分鐘
🔗 B端产品经理需要更多地关注客户的商业需求、痛点、预算、决策流程等,而C端产品经理需要更多地关注用户的个人需求

各種直播軟件,各種俊男靚女,各種視頻直播性福啪啪啪,現(xiàn)在直播軟件已經(jīng)火的一塌糊涂,但是好像并沒(méi)有什么大巨頭出現(xiàn)。

視頻直播的主要技術(shù)就是要保持實(shí)時(shí)性,到了手機(jī)端相對(duì)于PC端就更要考慮網(wǎng)絡(luò)情況從而能夠以不同的碼率來(lái)播放,網(wǎng)絡(luò)不好的時(shí)候,F(xiàn)aceTime有的時(shí)候也不清晰,鄙人還沒(méi)從事過(guò)視頻直播方面的開(kāi)發(fā),簡(jiǎn)單學(xué)習(xí)了一點(diǎn)相關(guān)知識(shí),現(xiàn)學(xué)現(xiàn)賣(mài)裝逼下,今天簡(jiǎn)單為大家介紹下視頻直播領(lǐng)域的HLS(Http Live Streaming)技術(shù)。

HLS是蘋(píng)果推出的一項(xiàng)技術(shù),主要是能夠利用http服務(wù)器,以http的方式傳輸音視頻文件,由于音視頻文件都分割的足夠小,所以下載也足夠快的情況下,可以認(rèn)為就相當(dāng)于實(shí)時(shí)直播,相對(duì)于RTSP/RTMP這種實(shí)時(shí)的音視頻傳輸來(lái)講,TA不是最實(shí)時(shí)的。

直播的整個(gè)流程大概是這樣:

  1. 采集視頻源和音頻源
  2. 對(duì)視頻源H264編碼,對(duì)音頻源AAC編碼
  3. 分割為T(mén)S文件
  4. 組裝M3U8文件
  5. Http傳輸以及部署到CDN

順便也簡(jiǎn)單說(shuō)下M3U8是什么文件吧,M3U8其實(shí)是一個(gè)索引文件,就像一個(gè)TXT一樣,后綴名叫M3U,只不過(guò)是以UTF-8來(lái)編碼的,所以命名為M3U8。

TA當(dāng)中每一段描述了一段TS,TS是分割的十分小的已經(jīng)編碼好的音視頻文件,可以直接播放,M3U8就描述了,比如一共10個(gè)TS文件,每段多長(zhǎng)時(shí)間,地址是什么類(lèi)似的信息。

只要想播放視頻,必須要先對(duì)M3U8進(jìn)行解析,解析出一個(gè)個(gè)的TS文件地址,然后按照M3U8描述的信息,選擇TS文件進(jìn)行播放。

為什么最終的小文件是TS,而不選用MP4文件呢?我搜索了一些資料,主要是因?yàn)門(mén)S文件可以無(wú)縫銜接,而MP4之類(lèi)的文件很可能產(chǎn)生銜接過(guò)程閃動(dòng)、黑屏等等原因。所以我們一般看MP4的電影,都比較大,用來(lái)包裝一個(gè)文件。

HLS方式的主要優(yōu)點(diǎn)就是利用了標(biāo)準(zhǔn)的Http技術(shù),復(fù)用了當(dāng)前標(biāo)準(zhǔn)的代理服務(wù)器和CDN這些成熟的技術(shù),使得直播部署就像簡(jiǎn)單的下載服務(wù)器的部署一樣,我們把TS文件想象成一個(gè)個(gè)的軟件或者apk文件,完全利用了一整套高度成熟的機(jī)制,使得視頻直播利用到成熟的技術(shù),能夠迅速的降低成本。這也是相對(duì)于其他實(shí)時(shí)視頻技術(shù)的一個(gè)相當(dāng)大的優(yōu)勢(shì)。

先寫(xiě)到這里,敬請(qǐng)批評(píng)指正。

#專(zhuān)欄作家#

給產(chǎn)品經(jīng)理講技術(shù),微信公眾號(hào)(pm_teacher),人人都是產(chǎn)品經(jīng)理專(zhuān)欄作家。資深程序猿,專(zhuān)注客戶(hù)端開(kāi)發(fā)若干年,對(duì)前端、后臺(tái)技術(shù)略懂,熱衷于對(duì)新的科技領(lǐng)域的探索。

本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,不得轉(zhuǎn)載。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 目前還沒(méi)評(píng)論,等你發(fā)揮!
专题
18474人已学习13篇文章
AI产品经理的核心目的是通过AI技术创造和优化产品服务,丰富技术知识可以让自己在工作中拥有更多话语权。本专题的文章分享了AI产品经理需要掌握的AI技术。
专题
37732人已学习20篇文章
“搜索功能”拆解:小功能,大细节。
专题
16262人已学习16篇文章
企业服务(2B)公司的创业有8个阶段,所有SaaS公司或2B公司不可能跳过这些阶段,每个阶段都有明确的任务。本专题的文章分享了SaaS创业路线图。
专题
12669人已学习12篇文章
所谓SOP,即标准作业程序,指将某一事件的标准操作步骤和要求以统一的格式描述出来,用于指导和规范日常的工作。本专题的文章分享了SOP创作指南。
专题
11862人已学习12篇文章
数据管理系统在后期能够为企业提供基础数据服务,保证企业往更好的方向运营。本专题的文章分享了如何做好数据管理。
专题
12773人已学习12篇文章
随着互联网在大众生活中的不断普及与深入发展,互联网医疗这一全新的医疗健康服务业态发展趋势向好。本专题的文章分享了互联网医疗行业分析和竞品分析报告。