新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > USB數(shù)字電視接收棒的設(shè)計(jì)與實(shí)現(xiàn)

USB數(shù)字電視接收棒的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2009-12-17 來(lái)源:網(wǎng)絡(luò) 收藏

(1)從端口CY7C68013所傳輸進(jìn)來(lái)的TS碼流,存入緩沖區(qū)內(nèi)。這個(gè)功能相對(duì)簡(jiǎn)單,利用Cy-press公司提供的通用驅(qū)動(dòng)程序和_些相應(yīng)的API函數(shù),在打開(kāi)設(shè)備獲得設(shè)備句柄之后,設(shè)置每次讀取數(shù)據(jù)量的大小,然后開(kāi)啟一個(gè)線程循環(huán)讀取數(shù)據(jù),就能連續(xù)不斷的得到TS碼流。其中每次讀取數(shù)據(jù)量的大小對(duì)于播放的流暢度影響很大,在本方案中曾經(jīng)將該參數(shù)分別設(shè)為1 024 B,8 192 B,10 240 B,30 720 B,61 440 B等數(shù)值進(jìn)行測(cè)試比較,發(fā)現(xiàn)該參數(shù)的值越大播放效果越好,它直接影響著丟包率。最終本方案將該值設(shè)為61 440 B,這也是實(shí)測(cè)所能得到的最大數(shù)值,在這個(gè)參數(shù)下節(jié)目播放出來(lái)的效果最好。
(2)搭建實(shí)時(shí)媒體播放器,將所到的TS碼流解碼播放。這是PC機(jī)應(yīng)用程序的核心部分。在選擇搭建實(shí)時(shí)媒體播放器的策略上有兩種方法:一是利用開(kāi)源的播放器進(jìn)行修改,但絕大多數(shù)開(kāi)源播放器都是基于Linux平臺(tái)下編寫(xiě)的,要在Windows平臺(tái)下使用需要經(jīng)過(guò)移植才行,移植工作量很大,且移植后播放器穩(wěn)定性較難控制。另一個(gè)是基于DirectShow技術(shù),自行編寫(xiě)播放器。DirectShow是微軟DirectX家族中的成員,與Windows有著天然的“血緣”關(guān)系,是Windows平臺(tái)下搭建媒體播放器的最佳選擇。并且微軟提供了相應(yīng)的開(kāi)發(fā)套件,使得開(kāi)發(fā)工作量得以減少,開(kāi)發(fā)周期大大縮短。基于以上原因,本方案選擇基于DirectShow技術(shù)搭建實(shí)時(shí)媒體播放器。
3.2 DirectShow技術(shù)在系統(tǒng)中的應(yīng)用
在DirectShow技術(shù)中,一個(gè)播放器由多個(gè)功能不同的Filter連接而成,這些Filter不是獨(dú)立工作,而是互相聯(lián)系、互相配合,是一個(gè)有機(jī)的整體,這個(gè)整體稱(chēng)之為Filter Graph。一般將Filter分為以下幾類(lèi),見(jiàn)表1。

本文引用地址:http://m.butianyuan.cn/article/166826.htm



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉