專利名稱:傳輸速率調(diào)整設(shè)備的制作方法
技術(shù)領(lǐng)域:
本實(shí)用新型涉及用于調(diào)整傳送流的傳輸速率和設(shè)備,更為確切地 說(shuō),涉及用于調(diào)整已經(jīng)根據(jù)MPEG (運(yùn)動(dòng)圖片專家組)標(biāo)準(zhǔn)進(jìn)行壓縮 編碼的傳送流(MPEG-TS)的傳輸速率和設(shè)備。
背景技術(shù):
近年,用于回放存儲(chǔ)在諸如存儲(chǔ)卡等記錄媒介上的MPEG文件的 設(shè)備被普遍使用。在這種回放設(shè)備中,使用MPEG解碼器來(lái)作為 MPEG2-TS中的MPEG文件的接口。典型地,各種傳輸速率的數(shù)據(jù)作 為MPEG文件被存儲(chǔ)在記錄媒介上,并且從MPEG文件中讀取的 MPEG2-TS具有各種傳輸速率。結(jié)果,從MPEG文件中讀取的 MPEG2-TS的傳輸速率有時(shí)候與適用于MPEG解碼器的傳輸速率不同。 在這種情況下,從MPEG文件中讀取的MPEG2-TS必須被轉(zhuǎn)換成適合 于MPEG解碼器的傳輸速率。以適合于MPEG解碼器的傳輸速率來(lái)供應(yīng)已經(jīng)從MPEG文件中讀 取的MPEG2-TS的方法中包括以下方法,其中,通過(guò)利用PLL電路使 PCR(程序時(shí)鐘參考)重新生成時(shí)鐘,然后將與所述重新生成的時(shí)鐘相 匹配的MGEG-TS發(fā)送至MPEG解碼器,其中所述PCR是TS信息包 (TS packets)中記錄的程序時(shí)間標(biāo)準(zhǔn)參考值。除了上述方法, JP-A-2001-339688 (下面稱之為專利文獻(xiàn)l)中公開了一種回放設(shè)備, 下面對(duì)其結(jié)構(gòu)和操作進(jìn)行更加詳細(xì)地講述。MPEG-TS允許諸如視頻信號(hào)、音頻信號(hào)和數(shù)據(jù)等多個(gè)程序在單個(gè) 流中進(jìn)行多路復(fù)用。圖1示出了 MPEG-TS的信息包結(jié)構(gòu)。MPEG-TS是由多個(gè)如圖1 (A)所示的信息包長(zhǎng)度為188字節(jié)的 傳送信息包(下面簡(jiǎn)稱為"TS信息包")組合而成。每一個(gè)TS信息 包由報(bào)頭51和有效負(fù)載52組成,如圖l (B)所示。報(bào)頭51由32位 的傳送報(bào)頭和備用字段54組成,如圖1 (C)所示。傳送報(bào)頭包括13 位的PID (信息包標(biāo)識(shí))53,它是信息包標(biāo)識(shí)信息。如圖1 (D)所示, 備用字段54包括48位的PCR55,它是程序時(shí)間標(biāo)準(zhǔn)參考值。PCR 55 是27MHz的時(shí)間戳。在通過(guò)MPEG解碼器的STC (系統(tǒng)時(shí)間時(shí)鐘)來(lái) 進(jìn)行解碼的期間,將參考該P(yáng)CR55來(lái)重新生成標(biāo)準(zhǔn)時(shí)間。如圖1 (E)所示,PCR 55由總共48位來(lái)描述9位的擴(kuò)展部分 60重復(fù)300次,33位的基本部分58在擴(kuò)展部分60重復(fù)300次時(shí)計(jì)數(shù) 一次,并且還有6位的保留區(qū)域59。圖2示出了專利文獻(xiàn)1中講述的傳送流回放設(shè)備的結(jié)構(gòu)。參考圖2, 傳送流回放設(shè)備由以下組成回放處理器102、存儲(chǔ)器103、 PCR檢測(cè) 器104、定時(shí)控制器105、 PCR操作單元106、 NULL信息包生成單元 107和選擇器108。以不同于27Mbps傳輸速率的記錄速率將MPEG-TS記錄在記錄媒 介100上?;胤盘幚砥?02回放來(lái)自記錄媒介100的MPEG-TS,并且 將該重新生成的MPEG-TS傳遞到存儲(chǔ)器103和PCR檢測(cè)器104。 PCR 檢測(cè)器104在重新生成的MPEG-TS中檢測(cè)PCR,并且對(duì)于PCR的每 一次檢測(cè),將PCR檢測(cè)信號(hào)發(fā)送到定時(shí)控制器105。NULL信息包生成單元107生成NULL信息包,它是啞TS信息包。 這些NULL信息包的信息包長(zhǎng)度也是188字節(jié),與TS信息包的字節(jié)數(shù)
一樣。已經(jīng)從存儲(chǔ)器103中讀出的MPEG-TS被供應(yīng)給選擇器108的其 中一個(gè)輸入,并且在NULL信息包生成單元107中生成的NULL信息 包被供應(yīng)給選擇器108的另一個(gè)輸入。選擇器108選擇和供應(yīng)這些輸 入中的一個(gè)作為輸出。PCR操作單元106計(jì)算下一個(gè)PCR的值,以便 當(dāng)由于插入NULL信息包而使當(dāng)前的PCR和下 一個(gè)PCR的間距超出合 適的PCR間距時(shí)能夠?qū)崿F(xiàn)合適的PCR間距。定時(shí)控制器105既監(jiān)控所輸入PCR檢測(cè)信號(hào)的被檢測(cè)PCR值,同 時(shí)還供應(yīng)來(lái)自選擇器108的已經(jīng)從與27MHz時(shí)鐘相匹配的存儲(chǔ)器103 中讀出的回放MPEG-TS。定時(shí)控制器105計(jì)算當(dāng)前PCR和下一個(gè)PCR 之間的差值,并且基于所計(jì)算的結(jié)果,判斷當(dāng)以27Mbps的傳輸速率供 應(yīng)已經(jīng)從存儲(chǔ)器103中讀出的MPEG-TS時(shí),以27MHz時(shí)鐘在當(dāng)前PCR 和下一個(gè)PCR之間的間距中可以發(fā)送多少比特?cái)?shù)據(jù)。當(dāng)在包含有下一 個(gè)PCR的MPEG-TS信息包的供應(yīng)期間,在PCR間距中有什么不一致 情況發(fā)生時(shí),定時(shí)控制器105不從存儲(chǔ)器103中讀出包含有下一個(gè)PCR 的MPEG-TS信息包,而是將在NULL信息包生成單元107中生成的 NULL信息包插入到它的位置。如果在當(dāng)定時(shí)控制器105還要插入另一 個(gè)NULL信息包并且然后供應(yīng)包含有下一個(gè)PCR的MPEG-TS信息包 時(shí)當(dāng)前PCR和下一個(gè)PCR之間的間距超出合適的PCR間距,則定時(shí) 控制器105從存儲(chǔ)器103中讀取包含有下一個(gè)PCR的TS信息包,而 不會(huì)插入NULL信息包。此時(shí),定時(shí)控制器105將已經(jīng)記在被讀取的 TS信息包中的下一個(gè)PCR的值重寫為已經(jīng)在PCR操作單元106中計(jì) 算出的PCR值,以便與輸出定時(shí)相匹配。這樣,可以獲得在PCR之間 缺乏失配的輸出MPEG-TS。不過(guò),上述回放方法和回放設(shè)備具有如下所述問(wèn)題。在其中使用PCR來(lái)在PLL電路中重新生成時(shí)鐘并且MPEG2-TS 被傳輸?shù)脚c重新生成的時(shí)鐘相匹配的MPEG解碼器的方法中,需要有 使用了 PLL電路的時(shí)鐘重新生成單元,并且該方法因此具有電路規(guī)模
增大和高成本的缺點(diǎn)。另外在MPEG解碼器中,當(dāng)重新生成已經(jīng)進(jìn)行 了從MPEG2-PS (程序流)到MPEG2-TS的軟件轉(zhuǎn)換的數(shù)據(jù)時(shí),根據(jù) MPEG2-TS的PCR之間的字節(jié)數(shù)而計(jì)算的傳輸速率有時(shí)候不均一,并 且結(jié)果使用上述PLL電路的時(shí)鐘重新生成是有問(wèn)題的。在專利文獻(xiàn)1中講述的重新生成設(shè)備是將傳輸速率為25Mbps的 記錄數(shù)據(jù)(MPEG文件)重新生成和供應(yīng)為傳輸速率為27Mbps的 MPEG-TS并且使用傳輸速率為27MHz的時(shí)鐘來(lái)供應(yīng)該重新生成的 MPEG-TS。用于該輸出的27MHz的時(shí)鐘必須與從PCR計(jì)算的時(shí)鐘相 匹配。結(jié)果,在專利文獻(xiàn)1中講述的重新生成設(shè)備也需要有使用PLL 電路的時(shí)鐘重新生成電路,并且因此具有如上所述的相同缺點(diǎn)。實(shí)用新型內(nèi)容本實(shí)用新型的目標(biāo)是提出一種傳輸速率調(diào)整設(shè)備,用于以期望的 傳輸速率來(lái)供應(yīng)MPEG-TS而不需要使用PLL電路,并且因此提供了 上述問(wèn)題的解決方案。為了實(shí)現(xiàn)上述目標(biāo),本實(shí)用新型涉及一種傳輸速率調(diào)整設(shè)備,用 于調(diào)整所輸入的傳送流的傳輸速率,該傳輸速率調(diào)整設(shè)備將由具有固 定信息包長(zhǎng)度的多個(gè)傳送信息包組成的傳送流作為輸入,其中所述信 息包中存儲(chǔ)有已編碼數(shù)據(jù)并且以固定時(shí)間間隔記錄了在上述編碼期間 作為標(biāo)準(zhǔn)時(shí)間間隔的規(guī)定頻率的時(shí)間戳(PCR);傳輸速率調(diào)整設(shè)備包括緩存;緩存寫入單元,將輸入傳送流的傳送信息包連續(xù)寫入到緩存,并 且檢測(cè)輸入傳送流中的時(shí)間戳;以及緩存讀取單元,將指定頻分率的頻分率信號(hào)和用于對(duì)已編碼數(shù)據(jù)進(jìn)行解碼的解碼器的系統(tǒng)時(shí)鐘作為輸入,并且以由輸入的頻分率信號(hào)所指定的頻分率來(lái)對(duì)輸入的系統(tǒng)時(shí)鐘進(jìn)行頻分所獲得的時(shí)鐘所決定的 傳輸速率將已經(jīng)從緩存中依序讀出的傳送信息包發(fā)送到解碼器;
其中所述緩存寫入單元,當(dāng)檢測(cè)到所述時(shí)間戳?xí)r,將下述內(nèi)容作 為其中記有所述第二時(shí)間戳的傳送信息包的增補(bǔ)信息存儲(chǔ)在緩存中 此次被檢測(cè)的所述第一時(shí)間戳和之前被檢測(cè)的所述第二時(shí)間戳之差, 在所述第一和所述第二時(shí)間戳之間的間距中的傳送信息包數(shù),以及所 述第二時(shí)間戳的值;以及緩存讀取單元,當(dāng)從所述緩存中讀出其中記有第二時(shí)間戳的傳送 信息包時(shí),根據(jù)附在所述傳送信息包上的增補(bǔ)信息,在已經(jīng)從緩存中 讀出的傳送信息包之間插入NULL信息包以實(shí)現(xiàn)調(diào)整,使得以該傳輸 速率來(lái)發(fā)送傳送信息包,并且當(dāng)僅通過(guò)插入NULL信息包無(wú)法實(shí)現(xiàn)調(diào)整時(shí),當(dāng)從所述緩存中讀取其中記有第一時(shí)間戳的傳送信息包時(shí),重 寫該傳送信息包的時(shí)間戳。根據(jù)上述結(jié)構(gòu),通過(guò)對(duì)解碼器(MPEG解碼器)的系統(tǒng)時(shí)鐘進(jìn)行 頻分而得到的時(shí)鐘被用作為與解碼器相接口的時(shí)鐘,從而避免通過(guò)例 如PLL電路來(lái)重新生成時(shí)鐘的需要。另外,不僅在傳送信息包之間插入NULL信息包,而且重寫時(shí)間 戳(PCR),以使得從緩存中依序讀出的傳送信息包的傳輸速率與接口 時(shí)鐘所決定的接口傳輸速率相匹配,并且結(jié)果導(dǎo)致,在準(zhǔn)備通過(guò)MPEG 解碼器來(lái)對(duì)已經(jīng)經(jīng)過(guò)從MPEG2-PS (程序流)到MPEG2-TS的軟件轉(zhuǎn) 換的數(shù)據(jù)進(jìn)行重新生成的情況下,即便當(dāng)根據(jù)在MPEG2-TS的PCR之 間的字節(jié)數(shù)來(lái)計(jì)算的傳輸速率不均一時(shí),可以調(diào)整傳輸速率以便與由 接口時(shí)鐘所決定的接口傳輸速率相匹配。因此,可以以正確的傳輸速率來(lái)將MPEG2-TS發(fā)送到MPEG解碼器,而不會(huì)在解碼器端的時(shí)鐘重 新生成中發(fā)生問(wèn)題。如前述解釋所述,通過(guò)消除使用包括有PLL電路的時(shí)鐘重新生成 電路的需要,本實(shí)用新型能夠使成本相應(yīng)下降和電路規(guī)模減小。另夕卜,即便當(dāng)根據(jù)在MPEG2-TS的PCR之間的字節(jié)數(shù)來(lái)計(jì)算的傳 輸速率不均一時(shí),可以以正確的傳輸速率來(lái)將MPEG2-TS發(fā)送到MPEG 解碼器,從而可以為解碼器提供比現(xiàn)有技術(shù)的設(shè)備更為穩(wěn)定的解碼操作。通過(guò)下面的講述并參考用于解釋本實(shí)用新型示例的附圖,將使本 實(shí)用新型的上述和其他目的、特征和優(yōu)勢(shì)更加明顯。
圖1示出了 MPEG-TS傳送信息包的典型結(jié)構(gòu); 圖2為框圖,示出了 JP-A-2001-339688中所述的傳送流重新生成 設(shè)備的結(jié)構(gòu);圖3為框圖,示出了作為本實(shí)用新型實(shí)施例的傳輸速率調(diào)整設(shè)備 的示意性結(jié)構(gòu);圖4用于解釋傳送信息包和存儲(chǔ)在圖3所示緩存中的增補(bǔ)信息; 圖5用于解釋在圖3所示的傳輸速率調(diào)整設(shè)備中的傳輸速率調(diào)整; 圖6用于解釋在圖3所示的傳輸速率調(diào)整設(shè)備中的PCR補(bǔ)償; 圖7為框圖,示出了 MPEG解碼器的示意性結(jié)構(gòu); 圖8示出了頻分率和傳輸速率之間的關(guān)系;圖9為示意性結(jié)構(gòu),示出了其中均一插入NULL信息包的傳送流示例;圖10用于解釋在圖3所示的傳輸速率調(diào)整設(shè)備中插入NULL信息包的示例;圖11用于解釋在圖3所示的傳輸速率調(diào)整設(shè)備中插入NULL信息包的另一個(gè)示例;圖12用于解釋在均一插入NULL信息包的情況下,存儲(chǔ)在傳送緩存中的數(shù)據(jù)值的改變;以及圖13示出了在均一插入NULL信息包的情況下,存儲(chǔ)在傳送緩存 中的數(shù)據(jù)值的轉(zhuǎn)換。
具體實(shí)施方式
圖3為框圖,示出了作為本實(shí)用新型實(shí)施例的傳輸速率調(diào)整設(shè)備 的示意性結(jié)構(gòu)。圖3所示的傳輸速率調(diào)整設(shè)備2是用于調(diào)整已經(jīng)從 MPEG2-TS文件1中讀出的MPEG2-TS的傳輸速率的設(shè)備,并且由緩 存寫入單元5、緩存6和緩存讀取單元7組成。以在數(shù)據(jù)發(fā)送端的設(shè)備(圖中未示出)中使用的傳輸速率來(lái)將 MPEG2-TS存儲(chǔ)在MPEG2-TS文件1中。存儲(chǔ)在MPEG2-TS文件1中 的MPEG2-TS可以是已經(jīng)經(jīng)過(guò)從MPEG2-PS到MPEG2-TS的軟件轉(zhuǎn)換 的數(shù)據(jù)。MPEG2-TS是如圖1所示結(jié)構(gòu)的多個(gè)TS信息包的集合。PCR 作為27MHz的時(shí)間戳被記在TS信息包的備用字段。在數(shù)據(jù)發(fā)送端的 設(shè)備中,PCR用于重新生成由MPEG解碼器3的STC(系統(tǒng)時(shí)間時(shí)鐘) 在編碼期間所使用的標(biāo)準(zhǔn)時(shí)間。根據(jù)這些PCR,可以知道在其中記有 PCR的信息包的MPEG解碼器3中的預(yù)測(cè)到達(dá)時(shí)間。8位TS信息包數(shù)據(jù)和TS信息包時(shí)鐘作為傳輸速率調(diào)整設(shè)備2和 MPEG解碼器3之間的接口。 MPEG解碼器3使用記在由傳輸速率調(diào) 整設(shè)備2所供應(yīng)的MPEG2-TS的備用字段中的PCR以便在包括有 VCXO 4的PLL電路中重新生成系統(tǒng)時(shí)鐘,并且將所重新生成的系統(tǒng) 時(shí)鐘供應(yīng)給傳輸速率調(diào)整設(shè)備2。由PLL電路所重新生成的系統(tǒng)時(shí)鐘 與數(shù)據(jù)發(fā)送端的設(shè)備的系統(tǒng)時(shí)鐘相匹配。圖3所示的緩存寫入單元5的組成包括PCR間信息包數(shù)測(cè)量單 元9、 PCR檢測(cè)單元10、前級(jí)PCR存儲(chǔ)單元11、 PCR差值計(jì)算單元 12和緩存寫入控制單元13。從MPEG2-TS文件1中讀出的MPEG2-TS 被供應(yīng)給每一個(gè)PCR間信息包數(shù)測(cè)量單元9、 PCR檢測(cè)單元10和緩存 寫入控制單元13。PCR檢測(cè)單元10檢查對(duì)于作為MPEG2-TS進(jìn)行供應(yīng)的每一個(gè)TS 信息包,是否己將PCR記在備用字段中。當(dāng)記有PCR時(shí),PCR檢測(cè)單 元IO獲得PCR的值。 PCR間信息包數(shù)測(cè)量單元9從其中記有PCR的信息包直到到達(dá)其 中記有下一個(gè)PCR的信息包之前為止,測(cè)量在該期間的信息包數(shù)來(lái)作 為PCR間信息包數(shù)。當(dāng)PCR檢測(cè)單元IO檢測(cè)到下一個(gè)PCR時(shí),PCR 間信息包數(shù)測(cè)量單元9將當(dāng)前測(cè)量值重置為"0"。前級(jí)PCR存儲(chǔ)單元11保持已經(jīng)由PCR檢測(cè)單元10獲得的PCR 值,直到檢測(cè)到下一個(gè)PCR為止。PCR差值計(jì)算單元12對(duì)已經(jīng)由PCR 檢測(cè)單元10獲取的PCR值和已經(jīng)由PCR檢測(cè)單元10獲取并且被存儲(chǔ) 在前級(jí)PCR存儲(chǔ)單元11中的前級(jí)PCR的PCR值之差進(jìn)行計(jì)算。在PCR 間信息包數(shù)測(cè)量單元9中測(cè)量的PCR間信息包數(shù),在PCR差值計(jì)算單 元12中計(jì)算的PCR差值,以及存儲(chǔ)在前級(jí)PCR存儲(chǔ)單元11中的前級(jí) PCR值作為增補(bǔ)信息都被供應(yīng)給緩存寫入控制單元13。緩存寫入控制單元13以TS信息包為單元,將已經(jīng)從MPEG2-TS 文件1中讀出的MPEG2-TS寫入到緩存6中。當(dāng)將其中記有PCR的信 息包寫入到緩存6時(shí),緩存寫入控制單元13將存儲(chǔ)在前級(jí)PCR存儲(chǔ)單 元11中的PCR,已經(jīng)在PCR間信息包數(shù)測(cè)量單元9中測(cè)量的PCR間 信息包數(shù),以及已經(jīng)在PCR差值計(jì)算單元12中計(jì)算的PCR差值作為 其中已經(jīng)記有前級(jí)PCR的信息包的增補(bǔ)信息寫入到緩存6。圖4給出了存儲(chǔ)在緩存6中的信息包和增補(bǔ)信息的示意性表示。 在該例中,TS信息包T。、 L、 T2、…、Tn、 Tn+1、 Tn+2、 ...、 Tm、 Tm+2、… 按照所列順序存儲(chǔ)在緩存6中。TS信息包To、L和Tm是其中記有PCR 的TS信息包,并且增補(bǔ)信息被附在這些TS信息包的每一個(gè)上。TS信 息包To的增補(bǔ)信息包括已經(jīng)在PCR間信息包數(shù)測(cè)量單元9中測(cè)量的 TS信息包To和Tn的PCR間信息包數(shù),已經(jīng)在PCR差值計(jì)算單元12 中計(jì)算的TS信息包To和Tn的PCR差值,以及存儲(chǔ)在前級(jí)PCR存儲(chǔ) 單元11中的TS信息包To的PCR值。這樣,在供應(yīng)其中記有下一個(gè) PCR的信息包時(shí)獲取的增補(bǔ)信息與其中記有PCR的信息包一起存儲(chǔ)起 來(lái)。圖3所示的緩存讀取單元7是用于從緩存6中讀取TS信息包的設(shè) 備,它包括時(shí)鐘頻分單元14、緩存讀取控制單元15、 PCR差值補(bǔ)償 單元16、傳輸速率計(jì)算單元17、插入的NULL信息包數(shù)/后續(xù)的PCR 補(bǔ)償量計(jì)算單元18、 PCR補(bǔ)償量存儲(chǔ)單元19、 PCR補(bǔ)償單元20、 PCR 重寫單元21、 NULL信息包插入控制單元22、 NULL信息包生成單元 23、 NULL信息包插入單元24和信息包傳輸單元25。為時(shí)鐘頻分單元14和傳輸速率計(jì)算單元17供應(yīng)頻分率輸入信號(hào) 26。時(shí)鐘頻分單元14對(duì)由頻分率輸入信號(hào)26所決定的頻分率所供應(yīng) 的作為VCXO 4的輸出的MPEG解碼器3的27MHz系統(tǒng)時(shí)鐘進(jìn)行頻分, 并且將經(jīng)過(guò)頻分的時(shí)鐘作為傳送流的接口時(shí)鐘(TS時(shí)鐘)供應(yīng)給MPEG 解碼器3。緩存讀取控制單元15從緩存6中依序讀取TS信息包,并且將TS 信息包供應(yīng)給PCR重寫單元21。緩存讀取控制單元15讀取其中已將 PCR和TS信息包一同記錄的TS信息包的增補(bǔ)信息(PCR值、PCR間 信息包數(shù)以及PCR差值)。在已經(jīng)讀取的增補(bǔ)信息中,PCR差值被供 應(yīng)給PCR差值補(bǔ)償單元16, PCR間信息包數(shù)被提供給插入的NULL信 息包數(shù)/后續(xù)的PCR補(bǔ)償量計(jì)算單元18,并且PCR值被提供給PCR補(bǔ) 償單元20。PCR差值補(bǔ)償單元16將存儲(chǔ)在PCR補(bǔ)償量存儲(chǔ)單元19中的PCR 補(bǔ)償量補(bǔ)償給由緩存讀取控制單元15供應(yīng)的PCR差值。傳輸速率計(jì)算 單元17根據(jù)由頻分率輸入信號(hào)26所決定的頻分率來(lái)計(jì)算到MPEG解 碼器3的傳輸速率。例如,當(dāng)頻分率為4時(shí),TS時(shí)鐘為6.75MHz,或 27MHz頻率的1/4。作為信息包傳輸單元25的輸出的TS數(shù)據(jù)是8位, 并且因此計(jì)算出到MPEG解碼器3的傳輸率為54Mbps (=6.75MHzx8 位)。 插入的NULL信息包數(shù)/后續(xù)的PCR補(bǔ)償量計(jì)算單元18根據(jù)已經(jīng) 由緩存讀取控制單元15所提供的PCR間信息包數(shù),已經(jīng)由PCR差值 補(bǔ)償單元16所補(bǔ)償?shù)腜CR差值,以及已經(jīng)由傳輸速率計(jì)算單元17所計(jì)算的傳輸率,來(lái)計(jì)算應(yīng)該插入的NULL信息包數(shù),以使已經(jīng)從緩存6 中讀取的傳送流的傳輸速率與已經(jīng)由傳輸速率計(jì)算單元17計(jì)算得到的 傳輸速率相匹配,并且計(jì)算后續(xù)PCR補(bǔ)償量,以用于補(bǔ)償僅通過(guò)插入 NULL信息包無(wú)法實(shí)現(xiàn)調(diào)整的局部,其中所述后續(xù)PCR補(bǔ)償量用于補(bǔ) 償其中記有后續(xù)PCR的信息包的PCR值。PCR補(bǔ)償量存儲(chǔ)單元19對(duì)已經(jīng)通過(guò)插入的NULL信息包數(shù)/后續(xù) 的PCR補(bǔ)償量計(jì)算單元18計(jì)算的后續(xù)PCR補(bǔ)償量進(jìn)行存儲(chǔ)。PCR補(bǔ) 償單元20根據(jù)存儲(chǔ)在PCR補(bǔ)償量存儲(chǔ)單元19內(nèi)的PCR補(bǔ)償量對(duì)由緩 存讀取控制單元15提供的PCR進(jìn)行補(bǔ)償。對(duì)于其內(nèi)記錄了 PCR的并 且已經(jīng)由緩存讀取控制單元15提供的信息包而言,PCR重寫單元21 將這些信息包內(nèi)記錄的PCR重寫為已經(jīng)通過(guò)PCR補(bǔ)償單元20進(jìn)行補(bǔ) 償后的PCR。NULL信息包插入控制單元22根據(jù)由插入的NULL信息包數(shù)/后 續(xù)的PCR補(bǔ)償量計(jì)算單元18所計(jì)算的所插入NULL信息包數(shù)和已經(jīng) 被緩存讀取控制單元15所讀取的PCR間信息包數(shù),來(lái)確定NULL信 息包的插入間距和插入數(shù),并且將表明待插入的NULL信息包的定時(shí) 的插入信號(hào)作為輸出進(jìn)行供應(yīng)。NULL信息包生成單元23生成NULL信息包,其用于插入到已經(jīng) 由緩存讀取控制單元15所讀取的傳送信息包中,以調(diào)整傳輸速率。 NULL信息包插入單元24根據(jù)由NULL信息包插入控制單元22所供 應(yīng)的作為輸出的插入信號(hào),將已經(jīng)由NULL信息包生成單元23所生成 的NULL信息包插入到已經(jīng)由緩存讀取控制單元15進(jìn)行讀取的TS信 息包之間。信息包傳輸單元25將其中已經(jīng)由NULL信息包插入單元24
插入了 NULL信息包的信息包以作為8位TS數(shù)據(jù)的TS時(shí)鐘發(fā)送到 MPEG解碼器3。在本實(shí)施例的傳輸速率調(diào)整設(shè)備2中,緩存讀取單元7通過(guò)將 NULL信息包插入MPEG2-TS并且根據(jù)由緩存寫入單元5獲取的增補(bǔ) 信息重寫PCR,來(lái)調(diào)整傳輸速率。圖5用于解釋傳輸速率的調(diào)整。原始傳送流是已經(jīng)從MPEG2-TS 文件1中讀出的MPEG2-TS,并且包括有多個(gè)TS信息包TS0、 TSl、 TS2、 TS3、 TS4、 TS5、 ...。 PCR0被記在TS信息包TS0的備用字段 中。PCR1被記在TS信息包TS4的備用字段中。在該原始傳送流中的 PCRO和PCR1是時(shí)間間隔信息,用于重新生成在MPEG解碼器3的 STC中進(jìn)行編碼時(shí)所用的標(biāo)準(zhǔn)時(shí)間間隔,并且PCRO和PCR1與圖5中 的時(shí)間軸上的時(shí)間間隔沒(méi)有關(guān)系。在如圖5所示的其中已經(jīng)插入了 NULL信息包的傳送流中,NULL 信息包被NULL信息包插入單元24插入到原始傳送流的每一個(gè)信息包 之間。在圖5中,其中已經(jīng)插入了 NULL信息包的傳送流當(dāng)以接口的 傳輸速率被發(fā)送到MPEG解碼器3時(shí),被描述在時(shí)間軸上。在NULL信息包插入單元24中,NULL信息包被插入在TS信息 包之間,使得原始傳送流中分別記在信息包TSO和TS4中的PCRO和 PCR1與時(shí)間軸上的PCRO和PCR1相匹配。不過(guò),當(dāng)在傳輸速率計(jì)算 單元17計(jì)算的傳輸速率不是從MPEG2-TS文件1中讀取的MPEG2-TS 的傳輸速率的整數(shù)倍時(shí),如果使在信息包TS4中記錄的PCR1的時(shí)間 軸上的位置為tl,如圖5所示,則該tl的位置不與PCR1在時(shí)間軸上 的原始位置相匹配。如果其中tl的位置不與時(shí)間軸上PCR1的原始位 置相匹配的傳送流被作為TS數(shù)據(jù)8而不加改變地發(fā)送到MPEG解碼器 3,則系統(tǒng)時(shí)鐘無(wú)法在MPEG解碼器3中準(zhǔn)確地重新生成,因此STC 計(jì)數(shù)就不準(zhǔn)確。
當(dāng)無(wú)法僅通過(guò)如上所述插入NULL信息包來(lái)調(diào)整傳輸速率時(shí), PCR補(bǔ)償量根據(jù)將PCRO和PCRl的差值除以位于PCRO和PCRl之間 的TS信息包和NULL信息包的信息包時(shí)間長(zhǎng)度之和所產(chǎn)生的余數(shù)(片 段)來(lái)進(jìn)行計(jì)算,以使記在信息包TS4中的PCRl與時(shí)間軸上的位置 tl相匹配,并且PCR1的值根據(jù)所計(jì)算的PCR補(bǔ)償量進(jìn)行重寫。這樣, 可以使從MPEG2-TS文件1中讀取的MPEG2-TS的傳輸速率與在傳輸 速率計(jì)算單元17中計(jì)算的傳輸速率相一致。PCR補(bǔ)償?shù)挠?jì)算的一個(gè)實(shí)際示例如下所述。首先假定PCRO的值為"0" , PCRl的值為"20" , TS信息包時(shí) 間長(zhǎng)度(等于NULL信息包時(shí)間長(zhǎng)度)為"3",并且在原始傳送流中 的PCRO和PCRl之間的TS信息包數(shù)為"4"。在這種情況下,總TS 信息包時(shí)間長(zhǎng)度為12 (=3x4)。在這種情況下,當(dāng)將其中已經(jīng)插入了 NULL信息包的MPEG2-TS供應(yīng)給MPEG解碼器3時(shí),PCRl的時(shí)間 位置為"12",這與所記的時(shí)間間隔"20"不一致。通過(guò)插入NULL信息包來(lái)校正不夠長(zhǎng)的時(shí)間間隔。不夠長(zhǎng)的時(shí)間 間隔是通過(guò)從所記的時(shí)間"20"中減去TS信息包的總時(shí)間長(zhǎng)度"12" 而得到的值"8";并且可以在不夠長(zhǎng)時(shí)間間隔這一部分中插入兩個(gè) NULL信息包。在這種情況下,兩個(gè)NULL信息包的總時(shí)間長(zhǎng)度為"6", 從而通過(guò)兩個(gè)NULL信息包來(lái)補(bǔ)償不夠長(zhǎng)時(shí)間間隔"8"這一部分的時(shí) 間間隔"6"。不過(guò),剩余的時(shí)間間隔"2"無(wú)法通過(guò)信息包時(shí)間長(zhǎng)度 為"3"的NULL信息包來(lái)補(bǔ)償??紤]在其中已經(jīng)插入了兩個(gè)NULL信息包的傳送流中的PCRl的 時(shí)間位置,將兩個(gè)NULL信息包的時(shí)間長(zhǎng)度"6"添加到總的TS信息 包時(shí)間長(zhǎng)度"12"得到"18",并且該"18"與所記的時(shí)間"20"不 同。在該時(shí)間中PCRl的時(shí)間"18"的位置是在如圖5所示的時(shí)間軸上
的tl位置。在本實(shí)施例中,其中已經(jīng)插入了 NULL信息包的傳送流的 PCR1的值從PCR1 "20"的原始位置被重寫到tl "18"的時(shí)間軸上。圖6表示用于在緩存讀取單元7中執(zhí)行的PCR補(bǔ)償?shù)南盗刑幚磉M(jìn) 展的示意圖。參考圖6,首先根據(jù)作為PCRO的增補(bǔ)信息被讀取的PCR 差值和PCR間信息包數(shù),在緩存讀取單元7中計(jì)算出當(dāng)重寫下一個(gè) PCR1以用于調(diào)整片段時(shí),待插入的NULL信息包數(shù)和PCR補(bǔ)償量。 然后,根據(jù)所計(jì)算的PCR補(bǔ)償量來(lái)重寫下一個(gè)PCR1的值。對(duì)緊隨PCR1 的增補(bǔ)信息執(zhí)行相同的計(jì)算,并且重寫下一個(gè)PCR的值。下面來(lái)對(duì)本實(shí)施例的傳輸速率調(diào)整設(shè)備2的操作進(jìn)行解釋。首先來(lái)解釋緩存寫入單元5的操作。在緩存寫入單元5中,緩存 寫入控制單元13將從MPEG2-TS文件1所讀取的傳送信息包連續(xù)寫入 到緩存6,只要其中有空間的話,并且PCR檢測(cè)單元10同時(shí)檢測(cè)和獲 取記在傳送流的備用字段中的PCR。當(dāng)通過(guò)PCR檢測(cè)單元10檢測(cè)第一 PCR時(shí),在該檢測(cè)時(shí)刻PCR間 信息包數(shù)測(cè)量單元9被重置,并且由PCR檢測(cè)單元10所檢測(cè)的第一 PCR被存儲(chǔ)在前級(jí)PCR存儲(chǔ)單元11中。被重置的PCR間信息包數(shù)測(cè) 量單元9測(cè)量其中記有PCR的信息包到在其中記有下一個(gè)PCR的信息 包之前的信息包之間的信息包數(shù),來(lái)作為PCR間信息包數(shù)。當(dāng)通過(guò)PCR檢測(cè)單元IO檢測(cè)第二PCR時(shí),PCR差值計(jì)算單元12 根據(jù)由PCR檢測(cè)單元10檢測(cè)的第二 PCR和存儲(chǔ)在前級(jí)PCR存儲(chǔ)單元 11中的前級(jí)PCR來(lái)計(jì)算PCR差值。緩存寫入控制單元13然后將由PCR 差值計(jì)算單元12計(jì)算的PCR差值,由PCR間信息包數(shù)測(cè)量單元9測(cè) 量的PCR間信息包數(shù),以及存儲(chǔ)在前級(jí)PCR存儲(chǔ)單元11中的PCR, 作為其中記有第一 PCR的信息包的增補(bǔ)信息寫入到緩存6中。
對(duì)于第三和后續(xù)的PCR,每次由PCR檢測(cè)單元10檢測(cè)PCR時(shí), 重復(fù)如上所述用于檢測(cè)第二 PCR的相同操作。因此,已經(jīng)從MPEG2-TS 文件1中讀取的TS信息包被依次存儲(chǔ)在緩存6中,并且增補(bǔ)信息被添 加到其中記有PCR的TS信息包中,其中增補(bǔ)信息包括PCR間信息 包數(shù),也就是從當(dāng)前PCR到下一個(gè)PCR之間的信息包數(shù);PCR差值, 也就是當(dāng)前PCR和下一個(gè)PCR之間的差值;以及當(dāng)前PCR的值。下面來(lái)解釋緩存讀取單元7的操作。當(dāng)檢測(cè)到第二PCR并且增補(bǔ)信息(PCR間信息包數(shù),PCR差值, 以及PCR值)被添加到其中記有第一 PCR并且被緩存寫入控制單元5 存儲(chǔ)在緩存6中的信息包中時(shí),緩存讀取控制單元15開始從緩存6中讀取信息包。在初始狀態(tài)時(shí),將"0"作為補(bǔ)償量存儲(chǔ)在PCR補(bǔ)償量存儲(chǔ)單元 19中。結(jié)果,針對(duì)從緩存6中與其中記有第一PCR的信息包一起讀出 的增補(bǔ)信息的PCR值和PCR差值,沒(méi)有執(zhí)行由PCR補(bǔ)償單元20和PCR 差值補(bǔ)償單元16所作的補(bǔ)償。另外,PCR重寫單元21將其中記有第 一 PCR的信息包的PCR重寫為與該P(yáng)CR相同的值,并且將該值提供 給NULL信息包插入單元24。在通過(guò)緩存讀取控制單元15從緩存6中讀出其中記有下一個(gè)PCR 的信息包之前,插入的NULL信息包數(shù)/后續(xù)的PCR補(bǔ)償量計(jì)算單元 18計(jì)算應(yīng)該被插入的已插入NULL信息包數(shù),并且進(jìn)而計(jì)算用于補(bǔ)償 后續(xù)PCR的值的后續(xù)PCR補(bǔ)償量,以用于補(bǔ)償無(wú)法被NULL信息包調(diào) 整的片段量。該后續(xù)PCR補(bǔ)償量被存儲(chǔ)在PCR補(bǔ)償量存儲(chǔ)單元19中。在計(jì)算后續(xù)PCR補(bǔ)償量之后,NULL信息包插入控制單元22根 據(jù)插入的NULL信息包數(shù)和PCR間信息包數(shù)來(lái)判斷NULL信息包的插 入位置,并且NULL信息包插入單元24在由PCR重寫單元21供應(yīng)的
信息包之間插入已經(jīng)由NULL信息包生成單元23生成的NULL信息 包。其中己經(jīng)插入了NULL信息包的傳送流被作為8位TS數(shù)據(jù),以由 時(shí)鐘頻分單元14供應(yīng)的TS時(shí)鐘來(lái)從信息包傳輸單元25供應(yīng)給MPEG 解碼器3。當(dāng)從緩存6中讀出其中記有第二和后續(xù)PCR的信息包時(shí),根據(jù)存 儲(chǔ)在PCR補(bǔ)償量存儲(chǔ)單元19中的后續(xù)PCR補(bǔ)償量,PCR補(bǔ)償單元20 補(bǔ)償作為增補(bǔ)信息被讀取的PCR值,并且PCR差值補(bǔ)償單元16補(bǔ)償 作為增補(bǔ)信息被讀取的PCR差值。PCR重寫單元21然后將其中記有 PCR并且從緩存6中讀取的信息包的PCR值重寫為被PCR補(bǔ)償單元 20所補(bǔ)償?shù)腜CR值,并且將結(jié)果供應(yīng)給NULL信息包插入單元24。其中已經(jīng)通過(guò)PCR重寫單元21將PCR重寫為經(jīng)過(guò)補(bǔ)償?shù)腜CR的 TS信息包被發(fā)送到NULL信息包插入單元24。插入的NULL信息包數(shù) /后續(xù)的PCR補(bǔ)償量計(jì)算單元18計(jì)算應(yīng)該被插入的已插入NUIX信息 包數(shù)和用于補(bǔ)償無(wú)法被NULL信息包所調(diào)整的片段量的后續(xù)PCR補(bǔ)償 量,直到從緩存6中讀出下一個(gè)其中記有PCR的信息包為止。接著, NULL信息包插入控制單元22根據(jù)插入的NULL信息包數(shù)和PCR間信 息包數(shù)來(lái)判斷插入位置,并且NULL信息包插入單元24將已經(jīng)由NULL 信息包生成單元23生成的NULL信息包插入到由PCR重寫單元21所 供應(yīng)的信息包之間。由信息包傳輸單元25以由時(shí)鐘頻分單元14所供 應(yīng)的TS時(shí)鐘,將其中插入了NULL信息包的傳送流作為8位TS數(shù)據(jù) 供應(yīng)給MPEG解碼器3。根據(jù)前述解釋中所講述的本實(shí)施例的傳輸速率調(diào)整設(shè)備,通過(guò)使 用通過(guò)對(duì)MPEG解碼器3的系統(tǒng)時(shí)鐘進(jìn)行頻分所獲得的TS時(shí)鐘來(lái)作為 與MPEG解碼器3的接口時(shí)鐘,通過(guò)在MPEG2-TS的信息包之間插入 NULL信息包來(lái)調(diào)整根據(jù)在MPEG2-TS內(nèi)記有的PCR間的字節(jié)數(shù)來(lái)計(jì) 算的傳輸速率,以便傳輸速率與由接口時(shí)鐘所決定的接口傳輸速率相 匹配,并且進(jìn)而,通過(guò)對(duì)無(wú)法只通過(guò)插入NULL信息包來(lái)實(shí)現(xiàn)調(diào)整的
片段量重寫PCR值,可以以正確的傳輸速率來(lái)將已經(jīng)從MPEG2-TS文 件1讀取的MPEG2-TS發(fā)送到MPEG解碼器3,而不必通過(guò)使用PLL 電路來(lái)重新生成時(shí)鐘。另夕卜,在MPEG2-TS的信息包之間均一插入NULL信息包,能夠 抑制MPEG解碼器3中的緩存溢出。下面來(lái)對(duì)起到這些作用的原因的 進(jìn)行更加具體的解釋。圖7示出了 MPEG解碼器的示意性結(jié)構(gòu)。參考圖7,該MPEG解 碼器包括開關(guān)單元200、傳送緩存201a-201c、視頻緩存202a、音頻 緩存202b、系統(tǒng)緩存202c、視頻解碼器203a、音頻解碼器203b和系 統(tǒng)解碼器203c。每一個(gè)傳送緩存201a-201c的容量是512字節(jié)。開關(guān)單元200將由如圖3所示的傳輸速率調(diào)整設(shè)備2以TS數(shù)據(jù)進(jìn) 行供應(yīng)的傳送流作為輸入,并且根據(jù)信息包的報(bào)頭中的PID (信息包識(shí) 別信息),將作為輸入所接收的傳送流分離成視頻數(shù)據(jù)、音頻數(shù)據(jù)和 系統(tǒng)信息的傳送信息包。另外,根據(jù)PID (信息包識(shí)別信息),開關(guān)單 元200確定在輸入的傳送流中的NULL信息包,并且除去NULL信息 包。已經(jīng)被開關(guān)單元200分離的視頻數(shù)據(jù)的傳送信息包經(jīng)由傳送緩存 201a被存儲(chǔ)在視頻緩存202a中,并且然后被視頻解碼器203a解碼。 這里,從傳送緩存201a將數(shù)據(jù)讀取至視頻緩存202a的速度為 1.2xRmax。 Rmax是由MPEG類和級(jí)(profile and level)所決定的比特 率的上限。在主類/主級(jí)的情況下,數(shù)據(jù)讀取速度是15Mbps。已經(jīng)被開關(guān)單元200分離的音頻數(shù)據(jù)的傳送信息包經(jīng)由傳送緩存 201b被存儲(chǔ)在音頻緩存202b中,并且然后被音頻解碼器203b解碼。 這里,從傳送緩存201b到音頻緩存202b的數(shù)據(jù)讀取速度為2Mbps。
已經(jīng)被開關(guān)單元200分離的系統(tǒng)信息的傳送信息包經(jīng)由傳送緩存 201c被存儲(chǔ)在系統(tǒng)緩存202c中,并且然后被系統(tǒng)解碼器203c解碼。 這里,從傳送緩存201c到系統(tǒng)緩存202c的數(shù)據(jù)讀取速度為lMbps。在上述結(jié)構(gòu)的MPEG解碼器中,當(dāng)輸入到傳送緩存的數(shù)據(jù)的比特 率超過(guò)傳送緩存的讀取速率時(shí),在傳送緩存中會(huì)發(fā)生溢出。被作為輸入應(yīng)用于傳送緩存的數(shù)據(jù)的比特率根據(jù)在傳輸速率調(diào)整 設(shè)備2中插入NULL信息包的方法而改變。例如,如果在傳輸速率調(diào) 整設(shè)備2中將NULL信息包作為組在PCR間最后一個(gè)TS信息包之后 進(jìn)行插入,則在發(fā)送所有TS信息包之后發(fā)送NULL信息包。在這種情 況下,TS信息包的傳輸速率是在調(diào)整之后傳送流的傳輸速率(由圖3 所示的信息包傳輸單元25供應(yīng)作為輸出的傳送流的傳輸速率)??蛇x 情況下,如果在PCR間TS信息包之間插入NULL信息包,貝l」NULL 信息包與TS信息包交替?zhèn)鬏?。在這種情況下,TS信息包的傳輸速率 低于經(jīng)過(guò)調(diào)整之后的傳送流的傳輸速率。當(dāng)在每一個(gè)TS信息包之間插 入的NULL信息包數(shù)改變時(shí),則TS信息包在幾乎沒(méi)有所插入NULL 信息包的部分中的傳輸速率高于它在具有許多所插入NULL信息包的 部分中的傳輸速率。結(jié)果,在視頻和音頻流的比特率中出現(xiàn)比特率較 快的部分和比特率較慢的部分。在如圖3所示的結(jié)構(gòu)中,當(dāng)在從MPEG2-TS文件1中讀取的 MPEG2-TS的傳輸速率和調(diào)整之后的傳輸速率(由圖3所示的信息包 傳輸單元25供應(yīng)作為輸出的傳送流的傳輸速率)之間出現(xiàn)較大差別時(shí), 當(dāng)在其中NULL信息包作為組被插入到PCR間TS信息包末尾的情況 下,以及當(dāng)在每一個(gè)TS信息包之間插入的NULL信息包數(shù)改變的情況 下,作為輸入被施加到傳送緩存的數(shù)據(jù)的比特率將超過(guò)讀取傳送緩存 的速率。在每一個(gè)TS信息包之間均一插入NULL信息包可以解決這一 問(wèn)題。
下面來(lái)解釋在本實(shí)施例的傳輸速率調(diào)整設(shè)備中實(shí)施的在每一個(gè)TS信息包之間均一插入NULL信息包的方法。 第一NULL信息包插入方法MPEG解碼器3的接口為8位,并且具有通過(guò)對(duì)MPEG解碼器3 的系統(tǒng)時(shí)鐘進(jìn)行頻分而得到的時(shí)鐘(27MHz),并且由信息包傳輸單 元25供應(yīng)作為輸出的傳送流(TS數(shù)據(jù))的傳輸速率因此用"27MHz/ 頻分率x8位"來(lái)表示,并且根據(jù)頻分率來(lái)假定圖8所示的值。例如, 當(dāng)頻分率為"1"時(shí),傳輸速率為"216Mbps"。插入的NULL信息包數(shù)/后續(xù)的PCR補(bǔ)償量計(jì)算單元18根據(jù)PCR 間時(shí)間差(PCR差)來(lái)計(jì)算調(diào)整之后的PCR間TS信息包數(shù)和已經(jīng)由 傳輸速率計(jì)算單元17計(jì)算的調(diào)整之后傳輸速率,并且然后根據(jù)這些計(jì) 算結(jié)果來(lái)計(jì)算應(yīng)該插入的NULL信息包數(shù)。調(diào)整之后的PCR間TS信 息包數(shù)是由[PCR間時(shí)間差/(188/調(diào)整之后的傳輸速率)]來(lái)給定的。應(yīng) 該插入的NULL信息包數(shù)是由[(PCR間TS信息包數(shù))一 (PCR間時(shí) 間差/ (188/轉(zhuǎn)換之后的傳輸速率))]來(lái)給定的。如下所述NULL信息包插入控制單元22接下來(lái)控制NULL信息 包在NULL信息包插入單元24中的插入。首先根據(jù)PCR間TS信息包 數(shù)和在PCR間插入的NULL信息包數(shù)來(lái)計(jì)算[NULL信息包數(shù)/TS信息 包數(shù)]的商。然后針對(duì)每一個(gè)TS信息包,將與已經(jīng)計(jì)算出來(lái)的商相對(duì) 應(yīng)的數(shù)量的NULL信息包進(jìn)行插入。然后,針對(duì)[TS信息包+為每一個(gè) TS信息包插入的NULL信息包],均一插入與[NULL信息包數(shù)/TS信息 包數(shù)]的余數(shù)相對(duì)應(yīng)的數(shù)量的NULL信息包。更為具體地說(shuō),當(dāng)為五個(gè)TS信息包插入七個(gè)NULL信息包時(shí), 為每一個(gè)TS信息包插入的NULL信息包數(shù)是[NULL信息包數(shù)/TS信息 包數(shù)]的商,也就是"7/5"的商(=1)。應(yīng)該均一插入的其余NULL信 息包是[NULL信息包數(shù)/TS信息包數(shù)]的余數(shù),也就是"7/5" (=2)。
在這種情況下,根據(jù)基于"7/5"的商的NULL信息包插入處理,將一 個(gè)NULL信息包插入在如圖9所示存在于PCR之間的第一至第五個(gè)TS 信息包中的每一個(gè)之間,并且根據(jù)基于"7/5"的余數(shù)的NULL信息包 插入處理,將一個(gè)NULL信息包進(jìn)一步插入在第三和第四TS信息包之 間以及PCR間隔的末尾。由于調(diào)整之前和之后的傳輸速率之間的關(guān)系,即使基于[NULL信 息包數(shù)/TS信息包數(shù)]的余數(shù)的NULL信息包插入沒(méi)有利用平均數(shù)來(lái)執(zhí) 行,但是通過(guò)根據(jù)[NULL信息包數(shù)/TS信息包數(shù)]的商,對(duì)于每個(gè)TS 信息包平均插入NULL信息包也可以抑制傳送緩存中的溢出。第二 NULL信息包插入方法插入的NULL信息包數(shù)/后續(xù)的PCR補(bǔ)償量計(jì)算單元18也可以找 到NULL信息包的平均插入間距,并且NULL信息包插入控制單元22 可以根據(jù)NULL信息包的平均插入間距來(lái)控制NULL信息包在NULL 信息包插入單元24中的插入。當(dāng)NULL信息包的平均插入間距是由例 如[TS信息包"(NULL信息包數(shù)/TS信息包數(shù))的余數(shù)}]給定的,平均 插入間距的值一般為小數(shù)。針對(duì)[(TS信息包)+ (為每一個(gè)TS信息 包插入的NULL信息包)],將NULL信息包以以下這些值進(jìn)行插入, 平均插入間距的值(小數(shù)),整數(shù)部分的值(第一插入間距)和通過(guò) 將作為插入間距的該值加"1"而獲得的值(第二插入間距)。換句話 說(shuō),如果插入間距為"2",則針對(duì)兩個(gè)[(TS信息包)+ (為每一個(gè) TS信息包插入的NULL信息包)]插入一個(gè)NULL信息包。更為具體地說(shuō),NULL信息包的插入是通過(guò)下述過(guò)程來(lái)執(zhí)行的。(1) 首先,在第一和第二插入間距中,使用較大的插入間距,從 而對(duì)于等于該插入間距值的TS信息包數(shù),插入一個(gè)NULL信息包。(2) 找到該點(diǎn)的平均插入間距。這是所述第一插入,因此平均插 入間距是[((1)的插入間距)/1]。3) 如果在之前的情況(2)中找到的平均插入間距大于前級(jí) NULL信息包的平均插入間距,則插入間距被設(shè)置為第一和第二平均插 入間距中的較小一個(gè)。如果之前示例中的平均插入間距小于或等于 NULL信息包的平均插入間距,則插入間距被設(shè)置為第一和第二平均插 入間距中的較大一個(gè)。(4) 在等于(3)中確定的插入間距數(shù)的TS信息包數(shù)中插入一個(gè) NULL信息包。(5) 找到該點(diǎn)的平均插入間距。處理然后返回到(3),并且重 復(fù)NULL信息包的插入,直到[NULL信息包數(shù)/TS信息包數(shù)]的余數(shù)為止。下面來(lái)解釋上述處理的具體示例。例如,在其中在10個(gè)TS信息包中插入7個(gè)NULL信息包的情況 下,NULL信息包的平均插入間距為"10/7 = 1.429"。在這種情況下 的插入間距是第一插入間距的整數(shù)部分"1"和其中將"1"添加到第 一插入間距的第二插入間距"2"。在上述步驟(1)中,首先將較大的第二插入間距"2"作為插入 間距,并且將一個(gè)NULL信息包插入到兩個(gè)TS信息包中。在上述步驟 (2)中,找到該點(diǎn)的平均插入間距。在這種情況下,平均插入間距為 "2/1=2.000"。接下來(lái),在上述(3)的步驟中,之前的平均插入間距"2.000" 大于NULL信息包"1.429"的平均插入間距,并且因此將該插入間距 作為較小的第一插入間距"1"。在上述(4)的步驟中,在一個(gè)TS信 息包中插入一個(gè)NULL信息包。在上述(5)的步驟中,找到該點(diǎn)的平均插入間距。在這種情況下, 平均插入間距為"3/2 = 1.5"。在上述(3)的步驟中,之前的平均插
入間距"1.5"大于NULL信息包"1.429"的平均插入間距,并且因此 將插入間距設(shè)置為較小的第一插入間距"1"。在上述(4)的步驟中, 在一個(gè)TS信息包中插入一個(gè)NULL信息包。在上述步驟(5)中,接下來(lái)找到該點(diǎn)的平均插入間距。在這種情 況下,平均插入間距為"3/2 = 1.333"。由于上述步驟(3)中的之前 平均插入間距"1.333"小于NULL信息包"1.429"的平均插入間距, 因此接下來(lái)將插入間距設(shè)置為大于第一插入間距"2"。接下來(lái),在上 述步驟(4)中,將一個(gè)NULL信息包插入到兩個(gè)TS信息包中。接下來(lái),在上述步驟(5)中,找到該點(diǎn)的平均插入間距。在這種 情況下,平均插入間距為"3/2 = 1.500"。因此,以同樣方式依次插入 NULL信息包。圖IO示出了作為NULL信息包插入目標(biāo)的TS信息包數(shù),插入的 NULL信息包數(shù),總TS信息包,總NULL信息包,以及根據(jù)上述過(guò)程 的平均插入間距的各數(shù)值的變化。從圖10中可以看出,開始時(shí)對(duì)于兩 個(gè)TS信息包插入一個(gè)NULL信息包。此時(shí)總的TS信息包為"2", 總的NULL信息包為"1",并且平均插入間距為"2.00"。接下來(lái), 將一個(gè)NULL信息包插入一個(gè)TS信息包。此時(shí)總的TS信息包為"3", 總的NULL信息包為"2",并且平均插入間距為"1.5"。重復(fù)這一系 列處理。接下來(lái),解釋在第二 NULL信息包插入方法中的NULL信息包插 入的示例。由頻分率輸入信號(hào)26所給定的頻分率假定為"8",并且信息包 傳輸單元25發(fā)送給MPEG解碼器3的TS數(shù)據(jù)的傳輸速率假定為 27Mbps 。
在其中假定MPEG2-TS文件1的類為主類,并且其級(jí)假定為主級(jí) 的情況下,作為輸入施加到如圖7所示的傳送緩存201a的視頻數(shù)據(jù)比 特率的上限為15Mbps。從傳送緩存201a讀取視頻數(shù)據(jù)的速率為 18Mbps (1.2xl5Mbps)。從MPEG2-TS文件1讀取的MPEG2-TS包含一個(gè)視頻流和一個(gè)音 頻流。視頻流的比特率為14Mbps,并且音頻流的比特率為448kbps。 所讀取的MPEG2-TS的傳輸速率為15Mbps。所讀取的MPEG2-TS的 PCR間時(shí)間差為90.24ms,并且PCR之間的信息包數(shù)為900。調(diào)整之后的TS信息包時(shí)間長(zhǎng)度為"188/27Mbps = 55.704iLis"。調(diào) 整之后的PCR間信息包數(shù)為[PCR差值/(轉(zhuǎn)換之后的TS信息包時(shí)間長(zhǎng) 度)=90.24ms/55.704/xs = 1620]。因此,待插入的信息包數(shù)為"1620 -卯0 =720"。在這種情況下,720個(gè)NULL信息包被插入到PCR之間的卯0 個(gè)TS信息包中。首先來(lái)考慮其中將720個(gè)NULL信息包作為一組插入在900個(gè)TS 信息包之后的情況。在這種情況下,視頻流的比特率為 15Mbpsx27Mbps/15Mbps = 25.2Mbps 并且音頻流的比特率為 448kbpsx27Mbps / 15Mbps = 806.4kbps視頻流超出傳送流被讀取的速率18Mbps,并且視頻的傳送緩存 201a失去作用。下面來(lái)考慮其中在TS信息包之間均一插入NULL信息包的情況。 針對(duì)基于PCR間TS信息包數(shù)和在PCR間待插入的NULL信息包數(shù)的 每一個(gè)TS信息包,待插入NULL信息包數(shù)為[NULL信息包數(shù)/TS信息 包數(shù)]的商,也就是"720/900 = 0"的商。因此,根據(jù)[NULL信息包數(shù) /TS信息包數(shù)]的余數(shù)(=720)均一插入NULL信息包。 TS信息包數(shù)與NULL信息包數(shù)之比為"900:720 = 5:4",并且結(jié) 果,對(duì)于每五個(gè)TS信息包,插入四個(gè)NULL信息包。在這種情況下, NULL信息包的平均插入間距為"900/720 = 1.25",因此插入間距為 作為該平均插入間距的整數(shù)部分的"1",以及通過(guò)將"1"添加到這 個(gè)"1"上得到的"2"。因此,根據(jù)第二 NULL信息包插入方法,對(duì) 于兩個(gè)TS信息包插入一個(gè)NULL信息包,或者對(duì)于一個(gè)TS信息包插 入一個(gè)NULL信息包。圖11示出了作為NULL信息包插入目標(biāo)的TS信息包數(shù),插入的 NULL信息包數(shù),總的TS信息包,總的NULL信息包,以及根據(jù)上述 過(guò)程的平均插入間距的各數(shù)值的變化。從圖ll中可以看出,對(duì)于兩個(gè) TS信息包插入一個(gè)NULL信息包??偟腡S信息包為"2",總的NULL 信息包為"1",并且平均插入間距為"2.00"。接下來(lái),將一個(gè)NULL 信息包插入一個(gè)TS信息包。此時(shí)總的TS信息包為"3",總的NULL 信息包為"2",并且平均插入間距為"1.5"。重復(fù)這一系列處理,以 便NULL信息包基本上被均一地插入到每一個(gè)TS信息包之間。在上述情況下,視頻的傳送緩存201a的讀取速率為18Mbps (=1.2xl5Mbps)并且傳輸速率為27Mbps,從而在其中將一個(gè)TS信息 包(188字節(jié))作為輸入施加到傳送緩存201a的間隔期間,從傳送緩 存201a中讀取的數(shù)據(jù)量為"18Mbps/27 Mbpsxl88字節(jié)=125.3字節(jié)"。圖12示出了當(dāng)如上所述基本上均一插入了 NULL信息包時(shí),存儲(chǔ) 在傳送緩存201a中的數(shù)據(jù)量改變,并且圖13示出了傳送緩存201a中 的數(shù)據(jù)量轉(zhuǎn)換。從圖12和圖13可以看出,存儲(chǔ)在傳送緩存201a中的 數(shù)據(jù)量不超過(guò)512字節(jié),這是緩存的容量,并且因此視頻的傳送緩存 201a不會(huì)失效。在前述解釋中,拿視頻傳送緩存201a作為示例對(duì)抑制緩存失效的 原因進(jìn)行了解釋,但是本實(shí)用新型也可以抑制音頻傳送緩存的緩存失 效。優(yōu)選情況下,被插入到從緩存讀取的傳送信息包中的每一個(gè)信息 包間的NULL信息包數(shù)之間的差值位于1的限值內(nèi)。將NULL信息包數(shù)的差值限制在l以內(nèi),可以使傳送緩存的限制更加可靠。從上述解釋可以看出,通過(guò)在從緩存中讀取的傳送信息包之間均 一插入NULL信息包,則本實(shí)施例的傳輸速率調(diào)整設(shè)備可以抑制MPEG 解碼器3中的傳輸緩存的失效。相比之下,在前面講述的專利文獻(xiàn)1中公開的設(shè)備中,在調(diào)整之 前和之后的傳輸速率之差不大,并且結(jié)果,視頻傳送緩存的讀取速率 為流比特率的上限的1.2倍,并且音頻傳送緩存的讀取速率為流比特率 的4倍或大于其上限(2 Mbps/448kbps),即便當(dāng)NULL信息包作為 一組被插入到PCR間的間隔末端時(shí)。因此,在其中例如將25Mbps的 傳輸速率轉(zhuǎn)換為27 Mbps的傳輸速率的情況下,轉(zhuǎn)換比為1.08,并且 不會(huì)發(fā)生視頻和音頻傳送緩存的失效。換句話說(shuō),即便當(dāng)視頻流位于 上限并且音頻流位于上限448 kbps時(shí),讀取速率也不會(huì)超出。另外,在專利文獻(xiàn)1中公開的設(shè)備中,PCR每100ms進(jìn)入一次, 這意味著以25 Mbps的傳輸速率時(shí),大約1662個(gè)字節(jié)U00ms/ (188 字節(jié)/ (25Mbps/8))的信息包進(jìn)入PCR之間的傳送緩存。以27Mbps 的傳輸速率時(shí),這些信息包在92ms (lOOms/1.08)內(nèi)進(jìn)入傳送緩存。 換句話說(shuō),以25 Mbps的傳輸速率時(shí),大約1538 ( 1662/1.08)個(gè)字節(jié) 的信息包在92ms內(nèi)進(jìn)入傳送緩存;但是以27Mbps的傳輸速率進(jìn)入傳 送緩存的信息包僅有大約1662字節(jié),從而不會(huì)發(fā)生傳送緩存的失效。從前述解釋中可以看出,在專利文獻(xiàn)1中公開的設(shè)備中,調(diào)整之 前和之后的傳輸速率之差假定不是特別大,并且因此根據(jù)NULL信息 包的插入方法,難以預(yù)測(cè)MPEG解碼器的傳送緩存失效問(wèn)題的發(fā)生。
因此,根據(jù)專利文獻(xiàn)1的公開內(nèi)容,難以獲得通過(guò)實(shí)施NULL信息包 的均一插入可以抑制傳送緩存失效這一技術(shù)概念,這是本實(shí)用新型的 一個(gè)作用。NULL信息包的均一插入并不意味著插入在TS信息包之間的 NULL信息包數(shù)就與每一個(gè)TS信息包之間插入的NULL信息包數(shù)相 同。例如,正如在第一和第二 NULL信息包插入方法中所解釋的,當(dāng) 通過(guò)其中首先在TS信息包之間一次插入一個(gè)NULL信息包,然后對(duì)其 余的NULL信息包進(jìn)行分割和插入,以使得對(duì)于其中已經(jīng)插入了 NULL 信息包的TS信息包來(lái)說(shuō)時(shí)間長(zhǎng)度是均一的這一方法來(lái)插入NULL信息 包時(shí),插入在TS信息包之間的NULL信息包數(shù)就不是與每一個(gè)TS信 息包之間插入的信息包數(shù)相同。結(jié)果,在本實(shí)用新型中,當(dāng)已經(jīng)均一 地插入了 NULL信息包時(shí),TS信息包間的NULL信息包數(shù)可以相同或 不同,只要這些數(shù)位于不造成MPEG解碼器的傳送緩存失效的范圍內(nèi)。進(jìn)而,盡管已經(jīng)對(duì)其中TS信息包和NULL信息包都是188字節(jié) 的情況進(jìn)行了解釋,本實(shí)用新型并不限于這一形式,并且信息包可以 是其他固定長(zhǎng)度(例如,信息包可以是204字節(jié))。盡管己經(jīng)使用專業(yè)術(shù)語(yǔ)講述了本實(shí)用新型的實(shí)例實(shí)施例,這種講 述只是用于解釋性目的,并且應(yīng)該理解,不偏離所附權(quán)利要求的精神 主旨或范圍,可以對(duì)其進(jìn)行修訂和更改。進(jìn)而,申請(qǐng)人的目的是包括所有權(quán)利要求的等價(jià)物,并且對(duì)本應(yīng) 用中的任何權(quán)利要求進(jìn)行的補(bǔ)充都應(yīng)被解釋為是對(duì)其擁有所補(bǔ)充權(quán)利 要求的任何等價(jià)物或特征的利益或權(quán)利的權(quán)利要求。
權(quán)利要求1.一種傳輸速率調(diào)整設(shè)備,用于調(diào)整所輸入的傳送流的傳輸速率,該傳輸速率調(diào)整設(shè)備將由具有固定信息包長(zhǎng)度的多個(gè)傳送信息包組成的傳送流作為輸入,其中所屬信息包中存儲(chǔ)有已編碼數(shù)據(jù)并且以固定時(shí)間間隔記錄了在所述編碼期間作為標(biāo)準(zhǔn)時(shí)間間隔的規(guī)定頻率的時(shí)間戳,所述傳輸速率調(diào)整設(shè)備包括緩存;緩存寫入單元,將所述輸入傳送流的傳送信息包連續(xù)寫入到所述緩存,并且檢測(cè)所述輸入傳送流中的時(shí)間戳;以及緩存讀取單元,將指定頻分率的頻分率信號(hào)和用于對(duì)所述已編碼數(shù)據(jù)進(jìn)行解碼的解碼器的系統(tǒng)時(shí)鐘作為輸入,并且以由輸入的頻分率信號(hào)所指定的頻分率來(lái)對(duì)輸入的系統(tǒng)時(shí)鐘進(jìn)行頻分所獲得的時(shí)鐘所決定的傳輸速率將已經(jīng)從所述緩存中依序讀出的傳送信息包發(fā)送到所述解碼器;其中在當(dāng)檢測(cè)所述時(shí)間戳?xí)r,所述緩存寫入單元將下述內(nèi)容作為其中記有第二時(shí)間戳的傳送信息包的增補(bǔ)信息存儲(chǔ)在所述緩存中此次被檢測(cè)的第一時(shí)間戳和之前被檢測(cè)的所述第二時(shí)間戳之差,在第一和第二時(shí)間戳之間間隔中的傳送信息包數(shù),以及所述第二時(shí)間戳的值;并且當(dāng)從所述緩存中讀出其中記有所述第二時(shí)間戳的傳送信息包時(shí),所述緩存讀取單元根據(jù)附在傳送信息包上的所述增補(bǔ)信息,在已經(jīng)從所述緩存中讀出的傳送信息包之間插入NULL信息包以實(shí)現(xiàn)調(diào)整,使得以所述傳輸速率來(lái)發(fā)送所述傳送信息包,并且當(dāng)僅通過(guò)插入NULL信息包無(wú)法實(shí)現(xiàn)調(diào)整時(shí),當(dāng)從所述緩存中讀取其中記有所述第一時(shí)間戳的傳送信息包時(shí),重寫該傳送信息包的時(shí)間戳。
2. 如權(quán)利要求l所述的傳輸速率調(diào)整設(shè)備,其中所述緩存讀取單 元在已經(jīng)從所述緩存中讀取的傳送信息包間均一插入所述NULL信息包。
3. 如權(quán)利要求2所述的傳輸速率調(diào)整設(shè)備,其中所述緩存讀取單 元,根據(jù)所述第一和第二時(shí)間戳之差和由通過(guò)頻分所述輸入系統(tǒng)時(shí)鐘所獲得的時(shí)鐘所決定的傳輸速率計(jì)算傳輸速率調(diào)整之后的所述第一 和第二時(shí)間戳之間的傳送信息包數(shù),并且根據(jù)計(jì)算結(jié)果,計(jì)算應(yīng)該被 插入的NULL信息包數(shù);并且當(dāng)通過(guò)將所計(jì)算的NULL信息包數(shù)除以所計(jì)算的傳送信息包數(shù)的計(jì)算結(jié)果包含有商和余數(shù)時(shí),對(duì)于從所述緩 存中讀取的每一個(gè)傳送信息包,插入對(duì)應(yīng)于所述商的NULL信息包數(shù); 并且進(jìn)而,在其中插入了所述NULL信息包的狀態(tài)下,均一插入對(duì)應(yīng) 于所述余數(shù)的NULL信息包數(shù)。
4. 如權(quán)利要求2所述的傳輸速率調(diào)整設(shè)備,其中所述緩存讀取單 元,根據(jù)所述第一和第二時(shí)間戳之差和由通過(guò)頻分所述輸入系統(tǒng)時(shí)鐘 所獲得的時(shí)鐘所決定的傳輸速率計(jì)算傳輸速率調(diào)整之后的所述第一 和第二時(shí)間戳之間的傳送信息包數(shù),并且根據(jù)計(jì)算結(jié)果,計(jì)算應(yīng)該被 插入的NULL信息包數(shù);當(dāng)通過(guò)將所計(jì)算的應(yīng)該插入的NULL信息包 數(shù)除以所計(jì)算的位于所述第一和第二時(shí)間戳之間的傳送信息包數(shù)所獲 得的標(biāo)準(zhǔn)平均插入間距為小數(shù)時(shí),將整數(shù)部分的值作為第一插入間距, 并且通過(guò)將該值加"1"而獲得的值作為第二插入間距;并且,根據(jù)在 插入了 NULL信息包之后的NULL信息包的平均插入間距和所述標(biāo)準(zhǔn) 插入間距的大小關(guān)系,在所述第一和第二插入間距之間進(jìn)行選擇,并 且按照所選插入間距的值的數(shù)的傳送信息包的每一個(gè),插入一個(gè)NULL 信息包。
5. 如權(quán)利要求1至4中的任何一個(gè)所述的傳輸速率調(diào)整設(shè)備,其 中已經(jīng)在從所述緩存讀取的傳送信息包的每一個(gè)信息包間插入的 NULL信息包數(shù)間所述差值為1或更小。
專利摘要一種傳輸速率調(diào)整設(shè)備,用于以期望傳輸速率來(lái)供應(yīng)MPEG-TS,包括緩存;緩存寫入單元,將已經(jīng)從MPEG2-TS文件中讀取的傳送流的傳送信息包連續(xù)寫入到緩存,并且檢測(cè)傳送流中的時(shí)間戳;以及緩存讀取單元,以通過(guò)由頻分率信號(hào)所指定的頻分率來(lái)對(duì)MPEG解碼器的系統(tǒng)時(shí)鐘進(jìn)行頻分所獲得的時(shí)鐘所決定的傳輸速率,將已經(jīng)從緩存中依序讀出的傳送信息包發(fā)送到MPEG解碼器。緩存讀取單元不僅在傳送信息包之間插入NULL信息包,而且在當(dāng)通過(guò)僅插入NULL信息包無(wú)法實(shí)現(xiàn)調(diào)整時(shí)重寫時(shí)間戳。
文檔編號(hào)H04N7/24GK201048447SQ200720002260
公開日2008年4月16日 申請(qǐng)日期2007年2月15日 優(yōu)先權(quán)日2006年2月15日
發(fā)明者青柳壽和 申請(qǐng)人:Nec顯示器解決方案株式會(huì)社