視頻會(huì)議系統(tǒng)是一個(gè)綜合性的應(yīng)用系統(tǒng),其功能包括遠(yuǎn)程音視頻、電子白板、屏幕共享、協(xié)同文檔、流媒體播放等,其中流媒體播放經(jīng)常用于我們的培訓(xùn)當(dāng)中,因此流媒體播放功能在視頻會(huì)議中較為重要。流媒體播放主要是通過(guò)主持人播放一個(gè)影片,然后其他的觀眾能實(shí)時(shí)地收到影片的數(shù)據(jù)并進(jìn)行播放,而流媒體播放模塊的開(kāi)發(fā)可以通過(guò)不同的方式來(lái)實(shí)現(xiàn),我們應(yīng)該怎樣進(jìn)行流媒體播放模塊的開(kāi)發(fā)呢?流媒體播放模塊的開(kāi)發(fā)可以通過(guò)三種方式來(lái)實(shí)現(xiàn):利用音視頻進(jìn)行傳輸、解碼后重新傳輸、通過(guò)PIN接口來(lái)獲取數(shù)據(jù)傳輸。
1、利用音視頻進(jìn)行傳輸
利用音視頻進(jìn)行傳輸方式就是先把流媒體影片的音、視頻進(jìn)行分幀處理,把一個(gè)流媒體的影片實(shí)時(shí)地分成不同的數(shù)據(jù)幀,然后再發(fā)送到其他的客戶端,然后再把數(shù)據(jù)幀重新組包,進(jìn)行播放。該方式的主要難點(diǎn)在怎樣把影片進(jìn)行分幀處理,而不同格式的影片其數(shù)據(jù)結(jié)構(gòu)都不一樣,因此我們很難對(duì)不同類型的影片進(jìn)行相同的分幀處理。該方式的優(yōu)點(diǎn)是效率較高,不需要再進(jìn)行重新進(jìn)行編碼。
2、解碼后重新傳輸
解碼后重新傳輸方式,就是先對(duì)影片進(jìn)行解碼操作,然后把數(shù)據(jù)再按照自己定義的方式進(jìn)行壓縮編碼,然后接收方再進(jìn)行解碼和播放,該方式可以對(duì)不同的影片進(jìn)行操作。但需要對(duì)影片進(jìn)行重新壓縮,因此效率不高。
3、通過(guò)PIN接口來(lái)獲取數(shù)據(jù)傳輸
我們播放流媒體的時(shí)候,可以通過(guò)DirectShow的PIN接口獲取影片的數(shù)據(jù)類型和數(shù)據(jù),然后把這些數(shù)據(jù)傳輸?shù)浇邮辗,進(jìn)行播放,該方式是目前最完美的流媒體播放的方案,不僅可以支持幾乎全部的流媒體格式,而且不用進(jìn)行額外的音視頻編碼。
綜上所述,視頻會(huì)議系統(tǒng)中的流媒體播放開(kāi)發(fā),可以通過(guò)三種方式來(lái)實(shí)現(xiàn),這三種方式最佳是利用Directshow的PIN接口來(lái)獲取數(shù)據(jù)來(lái)進(jìn)行流媒體數(shù)據(jù)的傳輸。