版本記錄
版本號 | 時間 |
---|---|
V1.0 | 2021.02.13 星期六 |
前言
最近在兩家公司任職做的都是直播相關的業(yè)務续扔,音視頻的門檻現(xiàn)在是越來越低,很多的三方視頻云等都支持直播相關的業(yè)務菠净,從推流拉流到美顏扒袖、濾鏡、貼紙甚至人體識別等都有很多的第三方公司支持混聊。但是,好一點的公司還是自己研發(fā)自己的視頻云SDK乾巧,這樣可以不受三方束縛句喜,定制性也更好些,相信看過我寫過的文章的人卧抗,發(fā)現(xiàn)了我寫過和直播相關的技術藤滥,這里我另起一個模塊和大家繼續(xù)分享直播相關技術,感興趣的就給個贊支持一下社裆。感興趣看上面幾篇文章。
1. 直播技術(一) —— 移動直播連麥幾種處理方案(一)
2. 直播技術(二) —— 直播間的上下切換(一)
3. 直播技術(三) —— 直播間的PK流程(一)
禮物渲染技術
當我們從服務器上拉取禮物收到消息的時候向图,就需要在看播端和主播端進行渲染泳秀。從17年開始做直播的這些業(yè)務開始,就是從序列幀到現(xiàn)在的264禮物榄攀。算是做過了幾次修改和方案的替換嗜傅,下面就一起看一下這三種方案和各自的優(yōu)缺點。
1. 序列幀
- 缺點:
8bit
色域比較窄檩赢,占用帶寬比較大吕嘀,特別是android
端。 - 優(yōu)點:更好的適應性贞瞒,不同平臺播放無需更多的經(jīng)歷進行調(diào)試和適配偶房。
這里遇見了個小插曲,前幾天去阿里面試军浆,也拿到了口頭offer棕洋,但是面試的時候我說到了這個問題,面試官認為只有GIF才有8bits調(diào)色板色域窄的問題乒融,Png不存在這個問題掰盘。其實這個問題摄悯,很好說明。Png有8bits愧捕,24bits和32bits奢驯,其中8bit可以使用調(diào)色板編碼會小一些,而Gif必須是8bits次绘。這個在Png標準里都有說明叨橱。
所以Png也存在8bits調(diào)色板色域窄的問題。
2. webm禮物
webm
格式來自于google
的Vp8(264)
和vp9(265)
断盛,webm
還可以細分為三種
1)第一種是無損壓縮(webp罗洗,png,7z
等)
2)第二種是RGB和A分開壓縮和解壓(兩個webm
)钢猛,這個就是需要做對齊的伙菜,缺點很明顯就是RGB跟隨A對齊比較麻煩,容易出錯命迈。
3)第三種是A和RGB同一壓縮比(一個webm
贩绕,左右分屏),這個不用做對齊壶愤,但是會犧牲一定的的A值淑倾,所以這是一個權衡和折中方案。
- 優(yōu)點:色域比較寬征椒,不會受限于序列幀的8bit的限制娇哆。
- 缺點:CPU占用和損耗比較大
3. h264方案
- 優(yōu)點:利用手機端的硬件進行硬解碼加快解碼速度,減少內(nèi)存占用勃救,同時加快速度
- 缺點:暫時沒有啥缺點
從目前軟硬件發(fā)展形勢看碍讨,這個已經(jīng)是近似最優(yōu)解了。
后記
本篇主要講述了禮物渲染方案蒙秒,感興趣的給個贊或者關注~~~