設為主頁(yè)  加入收藏
 
·I2S數字功放IC/內置DSP音頻算法功放芯片  ·馬達驅動(dòng)IC  ·2.1聲道單芯片D類(lèi)功放IC  ·內置DC/DC升壓模塊的D類(lèi)功放IC  ·鋰電充電管理IC/快充IC  ·無(wú)線(xiàn)遙控方案  ·直流無(wú)刷電機驅動(dòng)芯片
當前位置:首頁(yè)->技術(shù)分享
音視頻同步的原理及實(shí)現方案
文章來(lái)源:永阜康科技 更新時(shí)間:2018/7/18 11:39:00
在線(xiàn)咨詢(xún):
給我發(fā)消息
張代明 3003290139
給我發(fā)消息
小鄢 2850985542
給我發(fā)消息
李湘寧 2850985550
13713728695
 

音視頻同步是我們觀(guān)看視頻的一個(gè)基本體驗,尤其對于視頻畫(huà)面中能看到聲源動(dòng)作(如:嘴型)的場(chǎng)景,音視頻同步問(wèn)題非常影響體驗。

在短視頻與直播APP中,采集端作為音視頻的生產(chǎn)者,如果采集端產(chǎn)生的音視頻源本身就無(wú)法保證同步,那么后面不管經(jīng)過(guò)什么處理,都很難再讓用戶(hù)看到音視頻同步的畫(huà)面了,因此,在采集端保證音視頻同步上尤其重要。

那么如何保證app在各種正常/非正常狀況下盡量保證輸出同步的音視頻?本文就是講述我們是如何解決上述問(wèn)題的。

音視頻同步的原理

音視頻采集的數據分別來(lái)自于麥克風(fēng)與攝像頭,而攝像頭與麥克風(fēng)其實(shí)是兩個(gè)獨立的硬件,而音視頻同步的原理是相信攝像頭與麥克風(fēng)采集數據是實(shí)時(shí)的,并在采集到數據時(shí)給他們一個(gè)時(shí)間戳來(lái)標明數據所屬的時(shí)間,而編碼封裝模塊只要不改動(dòng)音視頻時(shí)間的相對關(guān)系就能保證音頻與視頻在時(shí)間上的對應。如此封裝好數據之后,播放端就能夠根據音視頻的時(shí)間戳來(lái)播放對應的音視頻,從實(shí)現音視頻同步的效果。

時(shí)間戳參考標準

取格林威治時(shí)間做為對比標準,即音視頻時(shí)間戳都為采集時(shí)間點(diǎn)相對于格林威治標準時(shí)間的時(shí)間差;

取系統開(kāi)機時(shí)間做為對比標準,即音視頻時(shí)間戳都是采集時(shí)間點(diǎn)相對于手機開(kāi)機時(shí)間的時(shí)間差。目前iOS上AVCaptureSession這套API就是參考這個(gè)時(shí)間標準給的時(shí)間戳。

其它時(shí)間戳標準

基于“開(kāi)源項目1”的音視頻同步探討

原生某開(kāi)源框架

如圖:

簡(jiǎn)介

音/視頻被采集到之后會(huì )先經(jīng)過(guò)音/視頻處理模塊,音/視頻在被處理之后才進(jìn)入計算時(shí)間戳的模塊。

在第一幀到達時(shí)記一個(gè)計時(shí)起點(diǎn),然后根據采集的幀間隔對接下來(lái)每一幀的時(shí)間戳進(jìn)行計算:frameTimeStamp = lastFrameTimeStamp + frameDuration。

優(yōu)點(diǎn)

能輸出frame duration穩定的音視頻時(shí)間戳。

風(fēng)險

無(wú)論是音頻還是視頻,在手機過(guò)熱、性能不足等極端情況下有可能出現采集不穩定的情況,比如說(shuō)預計1s采集30幀,實(shí)際只采集到28幀,而音視頻的時(shí)間戳是通過(guò)累加來(lái)計算的,這樣就有會(huì )出現音視頻不同步的情況。

Video Process(人臉檢測、濾鏡、3D貼紙)有可能無(wú)法在一幀時(shí)間內處理完當前幀,這樣就會(huì )出現幀數比預期低的情況,從而出現音視頻不同步。

幀間隔涉及到無(wú)限小數時(shí),因為計算機的精度有限會(huì )引發(fā)的時(shí)間戳偏移,此偏移會(huì )隨著(zhù)幀數的增加而逐漸被放大。

基于開(kāi)源項目1的改進(jìn)方案1

如圖:

時(shí)間戳的獲取方法非常直接——每一幀都在改幀進(jìn)入時(shí)間戳計算模塊時(shí)獲取當前系統時(shí)間作為時(shí)間戳。

優(yōu)點(diǎn)

APP性能正常的情況下肯定不會(huì )出現音視頻不同步;

能夠實(shí)時(shí)糾正時(shí)間戳,只要APP正常運轉,就能立即恢復正確的時(shí)間戳。

風(fēng)險

依賴(lài)Video Process與Audio Process模塊處理時(shí)長(cháng)相近,而實(shí)際工程中因為人臉檢測、貼紙等原因,Video Process可能會(huì )出現阻塞的情況,從而導致臨時(shí)性的音視頻不同步

在A(yíng)udio Process與Video Process模塊處理幀耗時(shí)不均勻的情況下會(huì )出現音視頻時(shí)間戳不均勻的問(wèn)題,能否正常播放依賴(lài)于終端

基于開(kāi)源項目1的一個(gè)改進(jìn)方案2

如圖:

簡(jiǎn)介

音/視頻被采集到之后,先獲取采集模塊提供的音視頻時(shí)間戳,然后在音/視頻處理模塊透傳采集模塊獲取到的音/視頻時(shí)間戳,在時(shí)間戳計算模塊繼續透傳采集模塊給的時(shí)間戳。

優(yōu)點(diǎn)

除非采集模塊給出錯誤數據,否則音視頻都一定是同步的。

風(fēng)險

可能會(huì )出現音視頻時(shí)間戳不均勻的情況,尤其是在手機過(guò)熱、性能不足等極端情況下。

直播方向更進(jìn)一步的優(yōu)化探討

大致流程如圖:

簡(jiǎn)介

音/視頻被采集到之后,先獲取采集模塊提供的音視頻時(shí)間戳,然后在音/視頻處理模塊透傳采集模塊獲取到的音/視頻時(shí)間戳。

在時(shí)間戳計算模塊透傳視頻時(shí)間戳,并根據下文中提到的方法計算音頻時(shí)間戳。

音頻時(shí)間戳計算方法

實(shí)時(shí)計算時(shí)間戳:當前時(shí)間戳=起始時(shí)間戳+幀數*幀采樣數/采樣率;

如果時(shí)間戳偏移量超出閾值,糾正時(shí)間戳;

糾正頻率達到超出閾值,直接透傳采集時(shí)間戳。

優(yōu)點(diǎn)

能夠提供一個(gè)穩定的音頻時(shí)間戳,可以兼容幀間隔小幅抖動(dòng)造成的音頻時(shí)間戳不均勻;

兼容性能不足時(shí)導致實(shí)際采集幀數低于幀率。

風(fēng)險

糾正時(shí)間戳時(shí)可能會(huì )造成聲音卡頓的感覺(jué)。

總結

具體方案最好是針對實(shí)際應用場(chǎng)景有選擇性的做優(yōu)化,比如說(shuō),在可以控制播放器策略的情況,可以考慮根據自研播放器特性做時(shí)間戳處理。而如果播放器不可控,則盡量通過(guò)策略保障幀間隔穩定。

 
 
 
    您可能對以下產(chǎn)品感興趣  
產(chǎn)品型號 功能介紹 兼容型號 封裝形式 工作電壓 備注
CS8316 PO at 10% THD+N, VIN=7.4V RL=4Ω+22uH 21W(D MODE NCN OFF) PO at 10% THD+N, VIN =7.4V RL=3Ω+22uH 25W(D MODE NCN OFF) TSSOP-24 5V-9V 針對雙節鋰電池串聯(lián)供電應用,固定24倍增益,防破音,AB/D切換,功率限制,內置升壓模 塊,具備自適應升壓功能,恒定25W輸出功率R類(lèi)單聲道音頻功率放大器
CS86189 2X25.5W/14V/4Ω或47W/18V/4Ω TPA3110/CS8618/CS3815 TSSOP-28 6V-18.5V 無(wú)濾波2X25W立體聲D類(lèi)功放IC,管腳兼容TPA3110
CS5082 CS5082E是一款5V輸入,支持雙節鋰電池串聯(lián)應用,鋰離 子電池的升壓充電管理IC.CS5082E集成功率MOS,采用異步開(kāi)關(guān)架構,使其在應用 時(shí)僅需極少的外圍器件,可有效減少整體方案尺寸,降低BOM成本。 CS5082E的升壓開(kāi)關(guān)充電轉換器的工作頻率為600KHz最大2A輸入充 電,轉換效率為90%。 CS5080 ESOP-8 3.44V-7.0V 帶NTC功能、5V USB輸入、雙節鋰電池串聯(lián)應用、升壓充電管理IC,管腳兼容CS5080
HT560 2X40W/18V/4Ω或75W/24V/4Ω QFN-36 4.5V-26V 30W立體聲D類(lèi)I2S輸入音頻功放
HT317 2X42W/18V/4Ω或75W/24V/4Ω TSSOP-28 5V-26V 42W立體聲/75W單聲道D類(lèi)功放IC,,工作電壓5-26V,極限耐壓32V!
 
 
·藍牙音箱的音頻功放/升壓/充電管
·單節鋰電內置升壓音頻功放IC選型
·HT7179 12V升24V內置
·5V USB輸入、三節鋰電升壓型
·網(wǎng)絡(luò )主播聲卡專(zhuān)用耳機放大IC-H
 
M12269 河北發(fā)電機組 HT366 ACM8629 HT338 

業(yè)務(wù)洽談:手機:13713728695(微信同號)   QQ:3003207580  EMAIL:panbo@szczkjgs.com   聯(lián)系人:潘波

地址:深圳市寶安西鄉航城大道航城創(chuàng )新創(chuàng )業(yè)園A5棟307/309

版權所有:深圳市永阜康科技有限公司  備案號:粵ICP備17113496號

在线亚洲人成电影_中文有码国产精品欧美激情_免费大片一级a一级久久三_av天堂东京热无码专区