當前位置:首頁 > 開發教程 > 手機開發 >

直播平臺開發中美顏、濾鏡的技術要求

時間:2019-09-24 09:32 來源: 作者:山東布谷科技 瀏覽: 收藏 挑錯 推薦 打印

直播平臺開發完成采集之后得到原始數據,為了增強一些現場效果或者加上一些額外的效果,我們一般會在將其編碼壓縮前進行處理,比如打上時間戳或者公司 Logo 的水印,祛斑美顏和聲音混淆等處理。
直播平臺開發完成采集之后得到原始數據,為了增強一些現場效果或者加上一些額外的效果,我們一般會在將其編碼壓縮前進行處理,比如打上時間戳或者公司 Logo 的水印,祛斑美顏和聲音混淆等處理。在主播和觀眾連麥場景中,主播需要和某個或者多個觀眾進行對話,并將對話結果實時分享給其他所有觀眾,連麥的處理也有部分工作在推流端完成。
處理環節中分為音頻和視頻處理,音頻處理中具體包含混音、降噪和聲音特效等處理,視頻處理中包含美顏、水印、以及各種自定義濾鏡等處理。
美顏是直播產品中最常見的功能之一。美顏的主要原理是通過「磨皮+美白」來達到整體美顏的效果。磨皮的技術術語是「去噪」,也即對圖像中的噪點進行去除或者模糊化處理,常見的去噪算法有均值模糊、高斯模糊和中值濾波等。當然, 由于臉部的每個部位不盡相同,臉上的雀斑可能呈現出眼睛黑點的樣子,對整張圖像進行「去噪」處理的時候不需要將眼睛也去掉,因此這個環節中也涉及到人臉和皮膚檢測技術。
視頻水印包括播放器水印和視頻內嵌水印兩種方式可供選擇,對于播放器水印來說,如果沒有有效的防盜措施,對于沒有播放鑒權的推流,客戶端拿到直播流之后可以在任何一個不帶水印的播放器里面播放,因此也就失去了視頻保護的能力。綜合考慮云端錄制對于水印的需求,一般來說會選擇「視頻內嵌水印」的方式打水印。
連麥是互動直播中常見的需求。主播和部分觀眾之間可以進行實時互動,然后將互動結果實時播放給其他觀眾觀看。
基于以上業務需求,我們很容易想到基于單向直播原理,在主播端和連麥觀眾端進行雙向推流和雙向播流的方式互動,然后在服務端將兩路推流合成一路推送給其他觀眾。但 RTMP 帶來的延遲決定了這種方式無法做到用戶可接受的互動直播。
實際上,互動直播的主要技術難點在于:
低延遲互動:保證主播和互動觀眾之間能夠實時互動,兩者之間就像電話溝通,因此必須保證兩者能在秒級以內聽到對方的聲音,看到對方的視頻;
音畫同步:互動直播中對音畫同步的需求和單向直播中類似,只不過互動直播中的延遲要求更高,必須保證在音視頻秒級傳輸情況下的秒級同步;
音視頻實時合成:其他觀眾需要實時觀看到對話結果,因此需要在客戶端或者服務端將畫面和聲音實時合成,然后以低成本高品質的方式傳輸觀眾端。
在視頻和電話會議領域,目前比較成熟的方案是使用思科或者 WebEx 的方案,但這些商用的方案一不開源,二比較封閉,三成本比較高。對于互動人數比較少的互動直播,目前市場上比較成熟的方案是使用基于 WebRTC 的實時通訊方案。
同時,為了保證合成后的音視頻實時傳輸到其他觀眾端,可以采用經過改造的 UDP 協議傳輸:
 
通過 UDP 降低傳輸延遲;
在 UDP 之上進行傳輸控制,保證用戶互動體驗 QoS。
 
 
直播平臺開發中美顏、濾鏡的技術要求轉載http://www.7937001.live/jiaocheng/shoujikaifa/43868.html
下一篇:沒有了

手機開發閱讀排行

最新文章

彩票777苹果