從廣電制作到專業(yè)視聽(tīng),音視頻的同步是很多方案設(shè)計(jì)中必須考慮的重要環(huán)節(jié)。以大屏顯示為例,當(dāng)多個(gè)屏幕通過(guò)拼接技術(shù)顯示同一個(gè)畫(huà)面時(shí),如果屏幕接收到的畫(huà)面之間不做同步處理,最終呈現(xiàn)的視頻很可能出現(xiàn)畫(huà)面拉絲的結(jié)果。為了實(shí)現(xiàn)音視頻同步,解決各類實(shí)際應(yīng)用中的挑戰(zhàn),人們探索了很多種方法和技術(shù)。在廣電行業(yè)中,比較常用的是Genlock同步鎖相技術(shù)-通過(guò)生成統(tǒng)一的時(shí)間碼來(lái)同步信號(hào)源的時(shí)鐘,實(shí)現(xiàn)同步的目的;而PTP(精準(zhǔn)時(shí)間協(xié)議)則常用于同步整個(gè)計(jì)算機(jī)網(wǎng)絡(luò)中的時(shí)鐘。然而在使用采集卡的方案中,有沒(méi)有更好的方法來(lái)實(shí)現(xiàn)視頻之間的同步呢?我們將在本文重點(diǎn)探討這個(gè)問(wèn)題。
首先我們來(lái)看一下使用采集卡方案的基本工作流。采集卡作為視頻源和電腦主機(jī)之間的橋梁,將外部的視頻信號(hào)以幀或場(chǎng)為單位采集到電腦的CPU后交給應(yīng)用程序?qū)崿F(xiàn)后續(xù)操作。在這個(gè)過(guò)程中,應(yīng)用程序需要依據(jù)視頻信號(hào)上的時(shí)間戳信息來(lái)實(shí)現(xiàn)同步。研發(fā)人員都了解操作系統(tǒng)可以給進(jìn)入電腦的視頻打上時(shí)間信息,然而由系統(tǒng)打上的時(shí)間信息并不精確。如果采集卡硬件本身能給視頻打上時(shí)間戳將能很好的解決這個(gè)問(wèn)題。美樂(lè)威的采集卡上都包含了板載晶振,能為每一個(gè)采集通道提供一個(gè)獨(dú)立的硬件時(shí)鐘,每一個(gè)音視頻幀到達(dá)采集卡的時(shí)間都會(huì)標(biāo)記一個(gè)以100納秒為單位的時(shí)間戳,時(shí)間戳就可以用來(lái)同步顯示多個(gè)采集通道采集的視頻畫(huà)面。
想要獲取由板載晶振打上精準(zhǔn)時(shí)間戳的視頻數(shù)據(jù),軟件研發(fā)人員需要調(diào)用美樂(lè)威MWCapture SDK中的美樂(lè)威采集接口。此外由于各采集通道的時(shí)鐘相互獨(dú)立,要想實(shí)現(xiàn)多通道畫(huà)面的同步首先得讓各個(gè)采集通道的硬件時(shí)鐘同步,也就是要將其設(shè)置為相同的基準(zhǔn)值。在采集之前先獲取某一采集通道的當(dāng)前時(shí)鐘值,然后以該通道的時(shí)鐘值作為時(shí)鐘基準(zhǔn)值設(shè)置到其他采集通道中。比如有4路采集通道,可以通過(guò)接口讀取第1路通道的時(shí)鐘值,然后再將其時(shí)鐘值設(shè)置給2、3、4路通道。
待各路采集通道的硬件時(shí)鐘同步后各通道就能夠基于同一個(gè)時(shí)鐘來(lái)打時(shí)間戳。在做畫(huà)面同步時(shí),可以以1通道的視頻時(shí)間戳為基準(zhǔn),如果其它通道最近一幀的時(shí)間戳和其誤差在一定范圍內(nèi),那么即可認(rèn)為四個(gè)通道最近采集的4幀視頻屬于同一個(gè)畫(huà)面。
對(duì)“如何采集多通道視頻并實(shí)現(xiàn)視頻的同步和拼接”感興趣的讀者,可以參考開(kāi)發(fā)人員文章。(https://cn.magewell.com/developer/14/detail)
美樂(lè)威(MAGEWELL)是一家專注于音視頻技術(shù)的設(shè)計(jì)研發(fā)型企業(yè),于2011年成立,位于中國(guó)南京。
公司圍繞采集、編碼和傳輸三大核心技術(shù)推出了包括I/O、轉(zhuǎn)換和編碼三大產(chǎn)品系列。
產(chǎn)品服務(wù)于廣電制作和專業(yè)視聽(tīng)兩大核心領(lǐng)域,并廣泛應(yīng)用于視頻會(huì)議、醫(yī)療影像、教育培訓(xùn)、娛樂(lè)服務(wù)等眾多垂直行業(yè)。