專利名稱:更新不同設(shè)備中的駐留軟件的方法和被適配為由此更新的設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及包含在設(shè)備中的駐留軟件(resident software)的更新。更具體地說,該上下文是通過在設(shè)備的管理軟件的流中的分發(fā)進(jìn)行的更新。
背景技術(shù):
具體地,在通常被稱為電視數(shù)字解碼器的數(shù)字電視接收設(shè)備的領(lǐng)域中,已知在MPEG傳輸流類型(MPEG-2 SystemISO/IEC,1994.Generic Coding ofMoving Pictures and Associated AudioSystems,(MPEG-2 SystemsSpecification),November,ISO/IEC 13818-1)的流中,分發(fā)解碼器中的駐留軟件的更新版本。駐留軟件被理解為是指用來使設(shè)備操作的所述設(shè)備中的所有自帶軟件(onboard software)。在該領(lǐng)域中,除了別的以外,通常根據(jù)解碼器的硬件版本,將駐留軟件的給定版本應(yīng)用于此解碼器,運(yùn)營(yíng)商管理該解碼器或者甚至該解碼器的計(jì)劃用途。構(gòu)造被稱為下載流的、包括被設(shè)計(jì)用來更新明確定義的類型的解碼器的駐留軟件版本的MPEG流是常見的。
在數(shù)字解碼器的配置開始時(shí),每個(gè)更新流傳輸構(gòu)成功能軟件的所有片段(segment),并被發(fā)送到特定類型的平臺(tái)。由于訂戶的數(shù)目已經(jīng)增大,運(yùn)營(yíng)商經(jīng)常與新的制造商洽談以使其解碼器供應(yīng)商多樣化。這些供應(yīng)商自身通過供應(yīng)基于新硬件版本的新解碼器來設(shè)法降低設(shè)備成本。因此,硬件設(shè)備變得不同,并且對(duì)于分配給下載流的帶寬需求變得更大。
同時(shí),對(duì)于制造商提供給運(yùn)營(yíng)商的解碼器的不同硬件版本,對(duì)應(yīng)的軟件版本經(jīng)常共享公共的代碼片段。更具體地,這些片段通常位于軟件架構(gòu)的上層(協(xié)議棧、應(yīng)用程序、接口等)中。
對(duì)于在生產(chǎn)階段使用軟件下載的制造商發(fā)現(xiàn)了同樣的問題。事實(shí)上,在給定時(shí)間,他們可能被要求在同一生產(chǎn)線上并且根據(jù)同一設(shè)備硬件版本為不同的運(yùn)營(yíng)商生產(chǎn)解碼器,所述解碼器被下載有不同的軟件版本,所述軟件版本共享公共的代碼片段。更具體地,這些片段通常位于軟件架構(gòu)的下層(操作系統(tǒng)、驅(qū)動(dòng)程序(driver)等)中。
因此,技術(shù)問題包括降低分配給下載流的帶寬需求,并且這是對(duì)運(yùn)營(yíng)商和制造商二者而言的。可以以下面的方式表達(dá)該問題。
當(dāng)專用于不同平臺(tái)的不同軟件版本共享公共的代碼段(協(xié)議棧、應(yīng)用程序、接口等)時(shí),運(yùn)營(yíng)商如何降低分配給傳輸這些不同軟件版本的流的比特率?當(dāng)使用在制造商的生產(chǎn)設(shè)施中發(fā)送的下載流來在單個(gè)平臺(tái)上下載專用于不同運(yùn)營(yíng)商的不同軟件版本、所述不同軟件版本具有公共的代碼片段(操作系統(tǒng)、驅(qū)動(dòng)程序等)時(shí),制造商如何通過降低分配給這些流的比特率來改進(jìn)他的制造過程?作為這些問題的必然結(jié)果,有可能增加如下問題,即如何縮短下載時(shí)間以改善用戶的感受?
發(fā)明內(nèi)容
本發(fā)明使得能夠在同一流中混合為不同解碼器設(shè)計(jì)的不同軟件版本。該原理是定義唯一的數(shù)據(jù)格式,該數(shù)據(jù)格式使得能夠從傳輸若干駐留軟件版本的二進(jìn)制片段的流來更新解碼器,這些二進(jìn)制片段由若干軟件版本共用的片段和每個(gè)軟件版本特有的片段組成。
作為必然結(jié)果,由引導(dǎo)程序(loader)執(zhí)行的用來恢復(fù)專用于解碼器硬件版本的代碼片段的過程更為復(fù)雜。然而,可以以這樣的方式來改進(jìn)該過程,所述方式即引導(dǎo)程序僅設(shè)法恢復(fù)必須更新的代碼片段。
本發(fā)明涉及一種用來構(gòu)造包含意欲用于多個(gè)設(shè)備的多個(gè)駐留軟件版本的分發(fā)媒介的方法,其包括在構(gòu)成所述多個(gè)的不同駐留軟件版本中識(shí)別至少兩個(gè)駐留軟件版本共用的部分的識(shí)別步驟,以及將構(gòu)成所述多個(gè)的不同駐留軟件版本劃分為片段的步驟,以及將這些片段組裝在分發(fā)媒介中,構(gòu)成至少兩個(gè)版本共用的部分的片段在分發(fā)媒介中被發(fā)現(xiàn)一次。
根據(jù)一個(gè)特定實(shí)施例,本發(fā)明還包括通過標(biāo)識(shí)所述片段作為其一部分的一個(gè)或多個(gè)駐留軟件版本所針對(duì)的設(shè)備的裝置(means)進(jìn)行的每個(gè)片段的標(biāo)記步驟。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述多個(gè)設(shè)備是多個(gè)數(shù)字電視接收設(shè)備。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述分發(fā)媒介是MPEG傳輸流。
本發(fā)明還涉及一種由具有對(duì)通過分發(fā)網(wǎng)絡(luò)分發(fā)的分發(fā)媒介的訪問裝置的設(shè)備獲取駐留軟件版本的全部或部分的方法,所述媒介包括構(gòu)成多個(gè)駐留軟件版本的多個(gè)片段,該方法包括在分發(fā)媒介中識(shí)別意欲用于所述設(shè)備的至少一個(gè)片段的識(shí)別步驟、和從所述分發(fā)媒介下載在設(shè)備中識(shí)別的所述片段的下載步驟、以及將所述片段存儲(chǔ)在存儲(chǔ)器中。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,分發(fā)媒介中的識(shí)別步驟包括在每個(gè)片段中標(biāo)識(shí)由所述片段所屬的駐留軟件版本所針對(duì)的設(shè)備的一組標(biāo)識(shí)符與在該設(shè)備上并且對(duì)其類型和用途進(jìn)行編碼的一組駐留標(biāo)識(shí)符的比較步驟。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述一組標(biāo)識(shí)符包含標(biāo)識(shí)設(shè)備的硬件版本的特定類型的至少一個(gè)平臺(tái)標(biāo)識(shí)符、標(biāo)識(shí)運(yùn)營(yíng)該設(shè)備的運(yùn)營(yíng)商的產(chǎn)品標(biāo)識(shí)符、以及標(biāo)識(shí)該設(shè)備的計(jì)劃用途的用途標(biāo)識(shí)符。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述設(shè)備是數(shù)字電視接收器,并且所述分發(fā)媒介是MPEG傳輸流。
本發(fā)明還涉及被設(shè)計(jì)用于多個(gè)設(shè)備的多個(gè)駐留軟件版本的分發(fā)媒介,所述軟件版本被劃分成片段,其中,所述分發(fā)媒介集合所述多個(gè)駐留軟件版本的片段,至少兩個(gè)軟件版本共用的片段在所述媒介上僅存在一次。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,每個(gè)片段具有一組標(biāo)識(shí)符,這組標(biāo)識(shí)符在每個(gè)片段中標(biāo)識(shí)由所述片段所屬的駐留軟件版本所針對(duì)的設(shè)備。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述一組標(biāo)識(shí)符包含標(biāo)識(shí)設(shè)備的硬件版本的特定類型的至少一個(gè)平臺(tái)標(biāo)識(shí)符、標(biāo)識(shí)運(yùn)營(yíng)該設(shè)備的運(yùn)營(yíng)商的產(chǎn)品標(biāo)識(shí)符、以及標(biāo)識(shí)該設(shè)備的計(jì)劃用途的用途標(biāo)識(shí)符。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述媒介具有MPEG傳輸流的形式。
本發(fā)明還涉及一種具有對(duì)包含被設(shè)計(jì)用于多個(gè)設(shè)備的多個(gè)駐留軟件版本的分發(fā)媒介的訪問裝置的設(shè)備,這些版本在分發(fā)媒介中被劃分為多個(gè)片段,所述設(shè)備具有用于下載出現(xiàn)在分發(fā)媒介中的片段的裝置以及用于存儲(chǔ)這些片段的裝置,并且具有用于在出現(xiàn)在分發(fā)媒介中的所述多個(gè)片段中確定作為意欲用于該設(shè)備的駐留軟件版本的一部分的片段的裝置。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,所述設(shè)備具有對(duì)其類型和用途進(jìn)行編碼的一組標(biāo)識(shí)符、以及將這組標(biāo)識(shí)符與出現(xiàn)在每個(gè)片段中并且標(biāo)識(shí)由該片段所屬的駐留軟件版本所針對(duì)的設(shè)備的一組標(biāo)識(shí)符進(jìn)行比較的比較裝置,其中所述每個(gè)片段存在于所述分發(fā)媒介中。
根據(jù)本發(fā)明的一個(gè)特定實(shí)施例,對(duì)分發(fā)媒介的訪問裝置是對(duì)MPEG傳輸流的訪問裝置。
通過閱讀以下描述,將更好地理解本發(fā)明,并且將顯現(xiàn)其它特定特征和優(yōu)點(diǎn),所述描述參考了附圖,其中圖1示出了用于將下載軟件分發(fā)到一組解碼器上的系統(tǒng)的已知架構(gòu)。
圖2示出了解碼器的軟件架構(gòu)示例。
圖3示出了本發(fā)明實(shí)施例中的駐留軟件的不同劃分層級(jí)。
圖4示出了本發(fā)明實(shí)施例中的報(bào)頭片段。
圖5示出了本發(fā)明實(shí)施例中的MPEG節(jié)(section)的格式。
圖6示出了本發(fā)明實(shí)施例中的由解碼器使用以發(fā)現(xiàn)它必須下載的片段的方法的步驟。
圖7示出了根據(jù)本發(fā)明實(shí)施例的解碼器的架構(gòu)。
具體實(shí)施方式現(xiàn)在將描述本發(fā)明的實(shí)施例。該實(shí)施例處于數(shù)字電視解碼器的領(lǐng)域,但是本發(fā)明可以被應(yīng)用于具有可通過一般的分發(fā)裝置而被更新的駐留軟件的任何設(shè)備??梢砸猛ㄟ^包括意欲用于不同平臺(tái)的軟件版本的單個(gè)DVD或其它元件更新的DVD播放器的例子。
圖7示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的參考標(biāo)號(hào)為7.1的解碼器的架構(gòu)。該解碼器由使得能夠接收包括音頻和視頻業(yè)務(wù)的流的參考標(biāo)號(hào)為7.7的調(diào)諧器組成。此模塊可以是衛(wèi)星、電纜、地面模塊或者甚至IP類型的網(wǎng)絡(luò)連接接口。然后,將由參考標(biāo)號(hào)為7.6的MPEG解復(fù)用器/解碼器處理來自該調(diào)諧器的流。該模塊負(fù)責(zé)在必要時(shí)驗(yàn)證權(quán)利并將所述流解密(deciphering)。然后,在所述流中分離所需業(yè)務(wù);事實(shí)上,單個(gè)流可以包含若干音頻和視頻業(yè)務(wù)的復(fù)用。一旦分離出所需業(yè)務(wù),就可以從它提取出不同的基本流。現(xiàn)在,通常根據(jù)MPEG-2標(biāo)準(zhǔn),這些流通常由壓縮視頻流和音頻流構(gòu)成,但是本發(fā)明與所述業(yè)務(wù)的格式(例如MPEG-4或其它格式)無關(guān)地操作。因此,這些流被解壓縮并且隨后被轉(zhuǎn)換為模擬信號(hào),以便提供視頻輸出和音頻輸出。通過在參考標(biāo)號(hào)為7.4的只讀存儲(chǔ)器和參考標(biāo)號(hào)為7.3的可重寫非易失性存儲(chǔ)器之間以分布式方式存儲(chǔ)的駐留軟件來控制所有這些操作。對(duì)于參考標(biāo)號(hào)為7.2的隨機(jī)存取存儲(chǔ)器,它將被用作用于運(yùn)行所述駐留軟件的工作存儲(chǔ)器。
圖2示意性地示出了用于組成(comprise)存在于本發(fā)明的實(shí)施例上的駐留軟件的不同塊。此駐留軟件在參考標(biāo)號(hào)為2.8的硬件上操作,這在上面描述過了。它由兩部分構(gòu)成參考標(biāo)號(hào)為2.5的第一部分,其由參考標(biāo)號(hào)為2.6的引導(dǎo)程序以及使得該引導(dǎo)程序能夠操作的參考標(biāo)號(hào)為2.7的最小驅(qū)動(dòng)程序集組成。典型地,該引導(dǎo)程序及其驅(qū)動(dòng)程序被存儲(chǔ)在非可重寫非易失性存儲(chǔ)器中,以便確保它們隨時(shí)間的完整性。事實(shí)上,該引導(dǎo)程序的功能是使得能夠更新解碼器的軟件,并且必須能夠在任何情況下操作,而與存儲(chǔ)在可重寫存儲(chǔ)器中的駐留軟件的狀態(tài)無關(guān),它一定不能被損壞。
參考標(biāo)號(hào)為2.1的駐留軟件的另一部分由使得能夠管理硬件的參考標(biāo)號(hào)為2.4的完整驅(qū)動(dòng)程序集構(gòu)成。在這些驅(qū)動(dòng)程序之上是提供依賴于所述驅(qū)動(dòng)程序的一組普通(generic)功能的參考標(biāo)號(hào)為2.3的操作系統(tǒng)。參考標(biāo)號(hào)為2.2的應(yīng)用程序包括向用戶提供其解碼器的功能的高級(jí)軟件。它由人機(jī)接口構(gòu)成,并且實(shí)現(xiàn)諸如業(yè)務(wù)改變、可能的交互引擎(interactivity engine)的管理、交互式應(yīng)用程序和其它功能的功能。通常,這一部分還包括使得能夠更新參考標(biāo)號(hào)為2.1的這一軟件組的參考標(biāo)號(hào)為2.9的引導(dǎo)程序。此引導(dǎo)程序可被自行更新。實(shí)際上,當(dāng)它下載新的軟件系統(tǒng)版本時(shí),該版本可以包含將被放置在存儲(chǔ)器中以代替參考標(biāo)號(hào)為2.9的引導(dǎo)程序的此引導(dǎo)程序的新版本。如果在此更新期間出現(xiàn)問題,則存儲(chǔ)在非易失性存儲(chǔ)器中的參考標(biāo)號(hào)為2.6的引導(dǎo)程序?qū)⒖偸悄軌蛟试S所述軟件的新的更新,其中該新的更新解決所述問題,并且發(fā)現(xiàn)參考標(biāo)號(hào)為2.1的軟件部分的可操作版本,并因此發(fā)現(xiàn)作為其一部分的參考標(biāo)號(hào)為2.9的引導(dǎo)程序的可操作版本。
請(qǐng)求下載軟件到解碼器中可以有若干原因。第一原因是所安裝的軟件損壞。事實(shí)上,參考標(biāo)號(hào)為2.1的軟件部分被存儲(chǔ)在可重寫存儲(chǔ)器中,其可被損壞始終是有可能的。在這種情況下,在下一次啟動(dòng)設(shè)備時(shí)檢測(cè)該損壞,所述設(shè)備將利用CRC系統(tǒng)(循環(huán)冗余校驗(yàn))來檢查組成所述軟件的模塊的完整性。如果在除了引導(dǎo)程序以外的模塊中檢測(cè)到損壞,則將使用此引導(dǎo)程序來下載所述軟件的新的完整版本。可以更新系統(tǒng)軟件的新的完整版本或者僅僅被檢測(cè)為損壞的模塊。當(dāng)引導(dǎo)程序自己被檢測(cè)為損壞時(shí),將所述更新委托給參考標(biāo)號(hào)為2.6的永久引導(dǎo)程序。
下載的另一原因是駐留軟件的新版本的可獲得性。此新版本能夠修正當(dāng)前版本中存在的錯(cuò)誤并且/或者向此駐留軟件添加新功能。在這種情況下,由新版本的解碼器在其啟動(dòng)階段進(jìn)行的檢測(cè)在某些條件下將有可能使得這一新版本由參考標(biāo)號(hào)為2.9的引導(dǎo)程序下載并被安裝在解碼器中。
通常也有可能引起給定軟件版本的下載和安裝。在這種情況下,用戶或經(jīng)批準(zhǔn)的工程師在解鎖任何保護(hù)性系統(tǒng)之后,將能夠指定他需要安裝在設(shè)備上的駐留軟件版本并下載它。這可以在維護(hù)操作期間或在交貨之前在工廠中準(zhǔn)備設(shè)備期間進(jìn)行。以這種方式,總是有可能利用根據(jù)設(shè)備的計(jì)劃用途而選定的系統(tǒng)軟件版本來配置設(shè)備。
在圖1中描述了典型的下載基礎(chǔ)結(jié)構(gòu)。意欲用于設(shè)備的軟件版本的整體由除了其它的以外還形成驅(qū)動(dòng)程序、操作系統(tǒng)和應(yīng)用程序?qū)拥牟煌K構(gòu)成。將在參考標(biāo)號(hào)為1.4的混合器中將參考標(biāo)號(hào)為1.1、1.2和1.3的這些模塊組裝和混合在MPEG傳輸流中。這個(gè)流將由參考標(biāo)號(hào)為1.5的發(fā)送站發(fā)送到參考標(biāo)號(hào)為1.6的衛(wèi)星,該衛(wèi)星將把它分發(fā)給參考標(biāo)號(hào)為1.7至1.10的解碼器。這里描述的基礎(chǔ)結(jié)構(gòu)是衛(wèi)星分發(fā)的基礎(chǔ)結(jié)構(gòu),但是對(duì)于可以是電纜、地面或者甚至制造設(shè)施中的內(nèi)部網(wǎng)絡(luò)的另一分發(fā)類型,該圖是相同的。在這種情況下,將由負(fù)責(zé)產(chǎn)生意欲用于解碼器的信號(hào)的服務(wù)器發(fā)送由參考標(biāo)號(hào)為1.4的混合器計(jì)算的流。在標(biāo)準(zhǔn)方式下,所構(gòu)造的下載流將包含意欲用于給定類型的解碼器的軟件版本,但是在本發(fā)明的背景下,將有可能把屬于若干軟件版本的模塊混合在這個(gè)流中。
一定數(shù)目的標(biāo)識(shí)符被用來標(biāo)記駐留軟件版本,并確定相關(guān)的解碼器。將主要發(fā)現(xiàn)下面的標(biāo)識(shí)符,并且這些標(biāo)識(shí)符在確定下載過程時(shí)起決定性作用-平臺(tái)標(biāo)識(shí)符,其實(shí)際上由兩個(gè)標(biāo)識(shí)符(指示對(duì)應(yīng)于解碼器型號(hào)的平臺(tái)類型的PT、以及指定平臺(tái)類型中的版本號(hào)的PV)的集合體組成。該標(biāo)識(shí)符因此使得能夠準(zhǔn)確地識(shí)別解碼器硬件型號(hào)。
-產(chǎn)品標(biāo)識(shí)符PR,其通常將標(biāo)識(shí)使用解碼器的運(yùn)營(yíng)商。事實(shí)上,相同的硬件解碼器根據(jù)將部署它的運(yùn)營(yíng)商而不會(huì)使用相同的軟件。
-用途標(biāo)識(shí)符US,其使得相同平臺(tái)和相同產(chǎn)品能夠在由平臺(tái)形成的用途之間區(qū)分開。由此,人們可以將例如被設(shè)計(jì)用于訂戶的平臺(tái)和被設(shè)計(jì)用于測(cè)試或另一目的的平臺(tái)區(qū)分開。
將這些標(biāo)識(shí)符的組存儲(chǔ)在解碼器中,從而提供準(zhǔn)確平臺(tái)型號(hào)、運(yùn)營(yíng)商和該解碼器的設(shè)計(jì)用途的知識(shí)。下載流還包含使得能夠獲知所包含的軟件為之創(chuàng)建的解碼器的這些標(biāo)識(shí)符的組。在本發(fā)明的背景中,每個(gè)片段將具有其自己的參數(shù)組。
以已知的方式,當(dāng)由于上述原因必須利用新的軟件版本更新解碼器時(shí),解碼器將使用使得它能夠識(shí)別包含為它設(shè)計(jì)的軟件版本的流的內(nèi)部參數(shù)。因此,它連接到這個(gè)流,并檢查包含在所述流中的平臺(tái)、產(chǎn)品和用途標(biāo)識(shí)符對(duì)應(yīng)于它所擁有的那些標(biāo)識(shí)符。在這種情況下,它將下載包含在所述流中的軟件并存儲(chǔ)該軟件。
在本發(fā)明實(shí)施例的背景下,更新機(jī)制基于參考標(biāo)號(hào)為3.3的二進(jìn)制片段的傳送。這些片段對(duì)應(yīng)于需要被混合到流中的不同駐留軟件版本的參考標(biāo)號(hào)為3.1的存儲(chǔ)器轉(zhuǎn)儲(chǔ)(memory dump)的劃分(division)。這些片段可以直接對(duì)應(yīng)于構(gòu)成駐留軟件版本的不同模塊或者是另一劃分模式的結(jié)果。描述所分發(fā)的所有代碼片段的參考標(biāo)號(hào)為3.2的報(bào)頭片段在這些代碼片段之前。利用參考標(biāo)號(hào)為3.4的MPEG節(jié)來傳輸所有片段。事實(shí)上,MPEG傳輸流是由一連串188字節(jié)的節(jié)構(gòu)成的。
圖4所示的“報(bào)頭”片段自身由“報(bào)頭”、然后是描述包括在流中的每個(gè)代碼片段的循環(huán)(loop)、對(duì)此報(bào)頭片段進(jìn)行認(rèn)證的簽名字段及其內(nèi)容構(gòu)成。
“報(bào)頭”片段的報(bào)頭包括以下字段·由DVB(“數(shù)字視頻廣播”,負(fù)責(zé)制定數(shù)字廣播標(biāo)準(zhǔn)的協(xié)會(huì))規(guī)定的“OUI”(唯一組織標(biāo)識(shí)符)唯一地標(biāo)識(shí)每個(gè)制造商,并因此標(biāo)識(shí)由報(bào)頭描述的每個(gè)片段。
·“Key Index(密鑰(key)索引)”,當(dāng)使用基于公鑰的算法時(shí)需要其來對(duì)流進(jìn)行認(rèn)證。它標(biāo)識(shí)要用來對(duì)流進(jìn)行認(rèn)證的公鑰。
·“FlowVersionId(流版本Id)”使得能夠知道流的上下文中的改變。此信息可以在信令中分發(fā),并因此使得每次它改變時(shí)解碼器都能開始下載操作。
·將片段解密所需的“EncryptedSeed,InitialValue(加密種子,初始值)”信息。
對(duì)于每個(gè)片段,發(fā)現(xiàn)以下信息·“PlatformType,PlatformVersion(平臺(tái)類型,平臺(tái)版本)”標(biāo)識(shí)必須將片段裝載到其上的硬件平臺(tái)。將通過“(PlatformType,PlatformVersion)=任意”對(duì)來唯一地標(biāo)識(shí)所有平臺(tái)共用的片段。
·“ProductId(產(chǎn)品Id)”標(biāo)識(shí)產(chǎn)品或客戶。將通過“ProductId=任意”來唯一地標(biāo)識(shí)所有產(chǎn)品共用的片段。
·“UsageId(用途Id)”標(biāo)識(shí)設(shè)備組中的解碼器的用途(訂戶、測(cè)試等)。將通過“UsageId=任意”來唯一地標(biāo)識(shí)所有用途共用的片段。
·“SegmentVersionId(片段版本Id)”標(biāo)識(shí)片段的版本。它用于確定是否片段已經(jīng)存在于解碼器中并且不需要被下載。
·“SegmentType,SegmentId(片段類型,片段Id)”分別對(duì)應(yīng)于片段的類型(操作系統(tǒng)、驅(qū)動(dòng)程序、接口等)以及其在該類型中的標(biāo)識(shí)符。
·“CrcMemoryType(Crc存儲(chǔ)器類型)”在存儲(chǔ)在存儲(chǔ)器中的片段上計(jì)算的CRC類型(循環(huán)冗余校驗(yàn))。
·“HashMemoryType(散列(hash)存儲(chǔ)器類型)”在存儲(chǔ)在存儲(chǔ)器中的片段上計(jì)算的散列類型。需要其以檢測(cè)流認(rèn)證。
·“SegStorageAddress”片段在存儲(chǔ)器中的存儲(chǔ)地址。
·“SegSizeMemory”存儲(chǔ)器中的片段大小(未被壓縮的片段)。
·“CrcFlowType(Crc流類型)”在流中傳輸?shù)钠紊嫌?jì)算的CRC類型。需要其以在接收期間檢查片段的完整性。
·“CompressionType(壓縮類型)”在流中傳輸?shù)钠紊嫌?jì)算的壓縮類型。確定片段是否被壓縮以及使用了什么壓縮算法。
·“EncryptionType(加密類型)”對(duì)在流中傳輸?shù)钠蔚募用艿念愋?。確定片段是否被加密以及使用了什么加密算法。
·“CrcFlow(Crc流)”在流中傳輸?shù)钠蔚腃RC。最后,有“Signature(簽名)”使得能夠?qū)α鬟M(jìn)行認(rèn)證的信息。
傳輸格式基于圖5所示的MPEG節(jié)中的傳輸格式。它包括上述“OUI”、“SegmentNb”、“FlowVersionId”信息。該信息將用于恢復(fù)在流中傳送的數(shù)據(jù)。
以這種方式,有可能在相同流中混合屬于與不同駐留軟件版本相對(duì)應(yīng)的不同存儲(chǔ)器轉(zhuǎn)儲(chǔ)的片段。每個(gè)片段具有其自己的一組參數(shù)PT、PV、PR和US,定義了每個(gè)片段的目的地。此外,給這些參數(shù)中的一些賦予值“任意”的事實(shí)沒有復(fù)制要在不同軟件版本之間共享的片段。事實(shí)上,意欲用于所有硬件平臺(tái)的給定產(chǎn)品的不同軟件版本之間的共享片段將使用等于該產(chǎn)品值的PR和等于“任意”的(PT,PV)來標(biāo)記,對(duì)于其它參數(shù)也一樣。通過識(shí)別要組裝在所述流中的不同駐留軟件版本中的至少兩個(gè)所共用的部分,人們開始在這些版本中進(jìn)行此操作。事實(shí)上,利用具有指定每個(gè)模塊的目的地的一組參數(shù)PT、PV、PR和US的配置或其它方式(means)來標(biāo)記每個(gè)模塊。對(duì)這些參數(shù)的分析識(shí)別若干版本共用的模塊。然后,當(dāng)將這些模塊劃分成片段時(shí),將利用與每個(gè)片段相對(duì)應(yīng)的參數(shù)組PT、PV、PR和US來標(biāo)記每個(gè)片段,在分發(fā)媒介(這里是MPEG流)的構(gòu)造期間,不復(fù)制共用片段。
在圖6中圖示了主要的下載步驟。
參考標(biāo)號(hào)為E1的第一步驟由通過對(duì)字段“TableId(表ID),SegmentNb=0,OUI,SectionSyntaxVersion(節(jié)語法版本),F(xiàn)lowVersionId”進(jìn)行節(jié)過濾來獲取報(bào)頭片段構(gòu)成。
參考標(biāo)號(hào)為E2的第二步驟在于由于其簽名而檢查對(duì)該報(bào)頭片段的認(rèn)證。
參考標(biāo)號(hào)為E3的第三步驟在于通過連續(xù)提取以下內(nèi)容(參見下表)來構(gòu)造與執(zhí)行下載的解碼器相對(duì)應(yīng)的片段的列表1.專用于執(zhí)行下載的解碼器的平臺(tái)(PT,PV)、產(chǎn)品PR和用途US的片段。
2.專用于所述平臺(tái)、產(chǎn)品的片段,其中US=任意。
3.專用于所述平臺(tái)的片段,其中(PT,PV)=任意。在這種情況下,忽略US的值。
4.專用于所述產(chǎn)品、用途的片段,其中(PT,PV)=任意。
5.專用于所述產(chǎn)品的片段,其中(PT,PV)=任意,US=任意。
6.普通片段,即其中(PT,PV)=任意、PR=任意并且與US的值無關(guān)。
參考標(biāo)號(hào)為E4的第四步驟在于對(duì)于由于可以獲得新軟件版本導(dǎo)致的更新,只從所述列表中檢索(retrieve)“SegVersionId(片段版本Id)”不同于存儲(chǔ)在存儲(chǔ)器中并且對(duì)應(yīng)于先前更新的“SegVersionId”的片段。如果下載是由于解碼器中一些片段的損壞,則所恢復(fù)的版本與已經(jīng)存在的版本相同,并且將恢復(fù)被識(shí)別為損壞的片段。
第五步驟在于由于每個(gè)片段的CRC而檢查所恢復(fù)的每個(gè)片段的完整性。
第六步驟在于將下載的片段存儲(chǔ)在存儲(chǔ)器中。
盡管本發(fā)明實(shí)施例處于數(shù)字電視解碼器的框架中,但是本領(lǐng)域技術(shù)人員應(yīng)該明白本發(fā)明可以應(yīng)用于具有經(jīng)由數(shù)據(jù)分發(fā)網(wǎng)絡(luò)更新它們的駐留軟件的能力的所有設(shè)備。
權(quán)利要求
1.一種用于構(gòu)造包含意欲用于多個(gè)設(shè)備的多個(gè)駐留軟件版本的分發(fā)媒介的方法,其特征在于,它至少包括以下步驟-在構(gòu)成所述多個(gè)的不同駐留軟件版本中識(shí)別至少兩個(gè)駐留軟件版本共用的部分,-將構(gòu)成所述多個(gè)的不同駐留軟件版本劃分為片段,-將這些片段組裝在分發(fā)媒介中,構(gòu)成至少兩個(gè)版本共用的部分的片段在所述分發(fā)媒介中被發(fā)現(xiàn)一次。
2.如權(quán)利要求
1所述的方法,還包括通過標(biāo)識(shí)所述片段作為其一部分的一個(gè)或多個(gè)駐留軟件版本所針對(duì)的設(shè)備的裝置進(jìn)行的每個(gè)片段的標(biāo)記步驟。
3.如權(quán)利要求
2所述的方法,其中,所述多個(gè)設(shè)備是多個(gè)數(shù)字電視接收設(shè)備。
4.如權(quán)利要求
3所述的方法,其中,所述分發(fā)媒介是MPEG傳輸流。
5.一種用于由具有對(duì)通過分發(fā)網(wǎng)絡(luò)分發(fā)的分發(fā)媒介的訪問裝置的設(shè)備獲取駐留軟件版本的全部或一部分的方法,其特征在于,所述媒介包括構(gòu)成多個(gè)駐留軟件版本的多個(gè)片段,所述方法至少包括以下步驟-在所述分發(fā)媒介中進(jìn)行的意欲用于所述設(shè)備的至少一個(gè)片段的識(shí)別步驟,-從所述分發(fā)媒介下載在所述設(shè)備中識(shí)別的所述片段,-將所述片段存儲(chǔ)在存儲(chǔ)器中。
6.如權(quán)利要求
5所述的方法,其中,在所述分發(fā)媒介中的識(shí)別步驟包括比較步驟,將在每個(gè)片段中標(biāo)識(shí)由所述片段所屬的駐留軟件版本所針對(duì)的設(shè)備的一組標(biāo)識(shí)符和在所述設(shè)備上并且對(duì)其類型和用途進(jìn)行編碼的一組標(biāo)識(shí)符進(jìn)行比較。
7.如權(quán)利要求
6所述的方法,其中,所述一組標(biāo)識(shí)符包括標(biāo)識(shí)設(shè)備的硬件版本的特定類型的至少一個(gè)平臺(tái)標(biāo)識(shí)符、標(biāo)識(shí)運(yùn)營(yíng)該設(shè)備的運(yùn)營(yíng)商的產(chǎn)品標(biāo)識(shí)符、以及標(biāo)識(shí)該設(shè)備的計(jì)劃用途的用途標(biāo)識(shí)符。
8.如權(quán)利要求
7所述的方法,其中,所述設(shè)備是數(shù)字電視接收器,并且所述分發(fā)媒介是MPEG傳輸流。
9.一種被設(shè)計(jì)用于多個(gè)設(shè)備的多個(gè)駐留軟件版本的分發(fā)媒介,所述軟件版本被劃分成片段,其特征在于所述分發(fā)媒介集合所述多個(gè)駐留軟件版本的片段,至少兩個(gè)軟件版本共用的片段在所述媒介上只存在一次。
10.如權(quán)利要求
9所述的媒介,其中,每個(gè)片段具有一組標(biāo)識(shí)符,這組標(biāo)識(shí)符在每個(gè)片段中標(biāo)識(shí)由所述片段所屬的駐留軟件版本所針對(duì)的設(shè)備。
11.如權(quán)利要求
10所述的媒介,其中,所述一組標(biāo)識(shí)符包含標(biāo)識(shí)設(shè)備的硬件版本的特定類型的至少一個(gè)平臺(tái)標(biāo)識(shí)符、標(biāo)識(shí)運(yùn)營(yíng)該設(shè)備的運(yùn)營(yíng)商的產(chǎn)品標(biāo)識(shí)符、以及標(biāo)識(shí)該設(shè)備的計(jì)劃用途的用途標(biāo)識(shí)符。
12.如權(quán)利要求
11所述的媒介,其具有MPEG傳輸流的形式。
13.一種具有對(duì)包含被設(shè)計(jì)用于多個(gè)設(shè)備的多個(gè)駐留軟件版本的分發(fā)媒介的訪問裝置的設(shè)備,這些版本被劃分成所述分發(fā)媒介中的多個(gè)片段,所述設(shè)備具有用于下載出現(xiàn)在所述分發(fā)媒介中的片段的裝置以及用于存儲(chǔ)這些片段的裝置,其特征在于其具有用于在出現(xiàn)在所述分發(fā)媒介中的所述多個(gè)片段中確定作為意欲用于該設(shè)備的駐留軟件版本的一部分的片段的裝置。
14.如權(quán)利要求
13所述的設(shè)備,其中,所述設(shè)備具有對(duì)其類型和用途進(jìn)行編碼的一組標(biāo)識(shí)符、以及將這組標(biāo)識(shí)符與出現(xiàn)在每個(gè)片段中并且標(biāo)識(shí)由該片段所屬的駐留軟件版本所針對(duì)的設(shè)備的一組標(biāo)識(shí)符進(jìn)行比較的比較裝置,其中所述每個(gè)片段存在于所述分發(fā)媒介中。
15.如權(quán)利要求
14所述的設(shè)備,其中,對(duì)分發(fā)媒介的訪問裝置是對(duì)MPEG傳輸流的訪問裝置。
專利摘要
本發(fā)明涉及一種使得能夠在公共流中混合用于不同解碼器的不同軟件版本的方法。原理在于定義唯一數(shù)據(jù)格式,所述數(shù)據(jù)格式使得能夠從傳輸駐留軟件的若干軟件版本的二進(jìn)制片段的流更新解碼器,所述二進(jìn)制片段由若干軟件版本共用的片段和每個(gè)軟件版本特有的片段構(gòu)成。
文檔編號(hào)H04N5/00GK1993985SQ20058002646
公開日2007年7月4日 申請(qǐng)日期2005年8月2日
發(fā)明者弗雷德里克·艾伯特, 哈米德·布薩德, 埃里克·高蒂爾, 讓-盧克·江珀茨, 斯蒂芬尼·雷博伊森 申請(qǐng)人:湯姆森特許公司導(dǎo)出引文BiBTeX, EndNote, RefMan