專利名稱:存儲受控單元的控制命令的存儲媒體的制作方法
技術領域:
本發明涉及為受控單元處理控制命令序列的裝置和為受控單元產生控制命令序列的方法,以及存儲受控單元的控制命令的存儲媒體。
背景技術:
本發明基于處理受控單元的控制命令序列的裝置,這樣一種裝置目前已廣為人知,其原因是最近新加入市場的DVD(數字通用盤)重放裝置具有所謂的子畫面譯碼單元(子畫面譯碼器),這些子畫面譯碼單元是根據DVD標準(1.0版本)中描述的規范設計的,在DVD標準(1.0版本)中描述并商定了用于驅動顯示單元的控制命令的特定命令集,但其中只提供了很少的用于顯示控制的控制命令。因此,期望在將來版本號大于1.0的DVD標準建議中會定義現有DVD標準(1.0版本)中沒有包含的額外的控制命令,以便使顯示控制更加方便。如果包含了新定義的控制命令的一系列控制命令被存儲在存儲媒體中,如DVD盤,那么現有的問題就是這種控制命令序列不能用根據現今的標準建議開發的DVD重放裝置以兼容方式處理。
發明內容
本發明的目的是,通過盡早以這樣的方式設計根據現今的DVD標準(1.0版本)開發的重放裝置,即當它們在遇到未知的控制命令時,以許可的方式處理該命令,而不會進入未定義的狀態,而盡早考慮到上述目前的問題。本發明提供為要受控制的單元處理一系列控制命令的裝置,它包括用于目前已經定義的控制命令的譯碼裝置,并且它的額外特征還在于有另外的譯碼裝置,該譯碼裝置以這樣的方式設計,使得當未知的控制命令到來時,它們和當所謂的結束命令到來時作出同樣的反應,該結束命令已經包含在目前已定義的命令集中并且結束命令序列。這些措施的優點在于在序列中先發生的所有已知的控制命令仍然被正確地處理,并且當第一未知控制命令出現時,命令序列的結束可以被確定,并且可以開始下一個命令序列。在已經開始的命令序列中的未知命令之后出現的控制命令在這種情況下可以被忽略,由此可以避免根據DVD標準(1.0版本)設計的DVD重放裝置的未定義行為。
通過一些措施,可以有效地發展和改進本發明的裝置。例如,如果每個控制命令系列有一個指向下一控制命令系列的起始點的指針命令,并且當結束命令或一個未知命令出現在序列之中時,下一個命令就在由指針命令指向的一個存儲單元的存儲位置讀出,這是很有利的。這保證了與未知命令最終出現的時間相比序列可以正好長一些,序列中隨后的命令可以簡單地予以忽略。
在本文中,同樣有利的是,如果在沒有提供下一控制命令序列的情況下,最后一個控制命令序列的指針命令指向最后一個控制命令序列的起點,那么,當指針命令在結束命令被譯碼之后被譯碼(不管是由于出現了結束命令還是由于出現未知命令)時,對受控單元的控制進行設置,或重復最后的控制命令序列。如果對產生的循環沒提供中斷標準,那么就會產生一個無窮循環,只有外來的干預才能將其中斷。
顯示控制命令作為控制命令進行考慮,并且被提供來控制一個顯示單元。另一方面,控制命令也可以相關于打印機控制命令或其它單元的控制命令。
提供一種用于為受控單元產生一系列控制命令的方法,該方法使得如果控制命令序列有第一控制命令,該命令可以說是相應于現在已經被定義的控制命令,并且另外有相應于擴展的控制命令的第二控制命令,那么只有在序列中已知的第一控制命令之后才能綜合安排第二控制命令,這種安排的優點在于序列中所有已知的控制命令仍然能夠被正確地處理,只有未知的控制命令被忽略。
為了使已根據新的標準設計的具有擴展命令集的重放裝置的新的控制命令仍然能夠被處理,最好是將控制命令序列的結束命令只安排在序列中新的第二控制命令之后。
產生的控制命令序列被有效地存儲在一個存儲媒體中,為此目的特別考慮存儲盤或磁帶。
控制命令最好被一個接著一個順序存儲在這樣一個存儲媒體上。首先已知的控制命令應該一個接著一個,其后是新的或另外的控制命令。序列的結束命令同樣也應該緊接在擴展的控制命令之后。
本發明的實施例示于附圖中,在下文中將作詳細的描述。
圖1示出了所謂的子畫面單元(SPU)的粗略結構;圖2示出了所述的子畫面單元的精確圖示;圖3示出了用于輸出一個誤差信息到屏幕裝置中的子畫面單元的具體例子;圖4示出了在屏幕裝置上顯示的誤差信息;圖5示出了子畫面譯碼單元的粗略方框圖;圖6示出了存儲有子畫面單元的存儲盤的示意圖。
具體實施例方式
采用DVD重放裝置的子畫面譯碼單元的例子來對本發明作詳細的解釋。在該示例性實施例中,顯示器上一個矩形的細目區域被看作是子畫面。這里描述的實施例假定電視接收機是一個顯示器,這時控制命令相關于在電視接收機上產生子畫面顯示的命令。該子畫面被顯示在電視接收機的屏幕上,這可以包括例如為顯示外文電影的譯文對白字幕提供的圖像中的矩形細目。當然也可以考慮對這種子畫面其它應用。例如,也可以以這種方式在屏幕上顯示誤差信息,或在裝置的用戶調用特定的操作說明后對它們進行顯示。對這種情況而言,操作指令可以被存儲在要運行的裝置中。例如,如果要運行的裝置是一個DVD重放裝置,那么子畫面也可以用于例如顯示卡拉OK功能的文字。在這種情況下,要唱的音樂標題的文字被顯示在字幕行,而要唱的相應文字被予以強調。
這種類型的所有子畫面都被存儲在所謂的子畫面單元(SPU)中。在誤差信息的情況下,子畫面單元被存儲在例如只讀存儲器中。對字幕來說,這些子畫面單元通常被存儲在例如錄像機或存儲盤(DVD、CD、Cdi等等)之類的存儲媒體中。操作指令可以同樣被保存在裝置的只讀存儲器中。
圖1示出了子畫面單元數據格式的一般示意圖。每個子畫面單元包括一個首標部分(SPUH)、各個像素的數據(PXD)和一個或多個顯示控制命令序列(SP_DCSQT)。因此,在圖1中,標號10表示首標部分的數據字段,標號11表示子畫面的像素數據的數據字段,標號12表示顯示控制命令序列表的數據字段。數據字段12包括一個或多個用于顯示控制命令序列的數據字段13。在圖1中,各個控制命令序列被連續編號,并被提供了參考符號SP_DCSQ0、SP_DCSQ1、SP_DCSQ2等等。上面描述的子畫面單元結構相應于DVD標準(1.0版本)中的規定;因此有關這方面問題的進一步細節可以從該標準中找到。
子畫面單元的首標部分(SPUH)包括兩個信息項,即子畫面單元的大小和顯示控制命令序列表的起始地址。像素數據以壓縮形式存儲在要被顯示的子畫面的像素的數據字段。根據DVD標準1.0,每行的像素數據按照特定的行程編碼方法被壓縮。對每個像素而言,像素類型用兩位存儲,以此標志有關的像素是否是背景像素、前景像素或以第一或第二方式強調的一個像素。本發明進一步的特征是對諸如NTSC和PAL之類的常用電視標準而言,第一字段的像素與第二字段的像素分開存儲,這在圖2中被更具體地示出。參考符號PXDT表示涉及第一字段的像素數據,參考符號PXDB表示涉及第二字段的像素數據。
顯示控制命令序列SP_DCSQT表包括例如改變被顯示的子畫面的特性并控制圖像顯示時刻的顯示控制命令序列。在DVD標準1.0中為此定義了一系列顯示控制命令。有九個顯示控制命令被定義,第一顯示控制命令FSTA_DSP在屏幕上產生不移動的子畫面顯示,而不管在構造該裝置時用戶是否切斷了子畫面顯示;第二顯示控制命令STA_DSP控制顯示子畫面的起始時刻;第三顯示控制命令STP_DSP控制顯示子畫面的結束時刻;第四顯示控制命令SET_COLOR為子畫面的顯示選擇顏色;第五顯示控制命令SET_CONTR相比于主畫面選擇子畫面像素的對比度;第六顯示控制命令SET_DAREA確定子畫面被顯示的位置;第七顯示控制命令SET_DSPXA確定像素數據的起始地址;第八顯示控制命令CHG_COLCON實現像素數據顏色和對比度細節上的改變;第九顯示控制命令CMD_END指示顯示控制命令序列的結束。
即使今天也可以預見到在上面描述的顯示控制命令之外提供更多顯示控制命令的必要性,以便使顯示控制更加便利。例如,需要提供一個命令能夠對子畫面中被定義的細節產生閃爍顯示,這對顯示屏幕上的標記(光標)是很有意的。另一個新的顯示控制命令的例子相關于這樣一條命令,通過該命令可以在子畫面的一個特定子域改變像素的顏色值,這將改進子畫面的色彩顯示。可以想象另外的顯示控制命令的例子。
圖3現在相關于具有一個新命令的子畫面單元,準確地說,在這里采用了用于閃爍顯示子畫面的一個子域的新命令。該命令的參考符號是SET_BAREA。圖3中所示的子畫面單元在屏幕接收器上產生一個錯誤信息輸出,該錯誤信息的相應顯示示于圖4,它被顯示在圖像的下部區域,并且在實際圖像的前面以前景方式顯示。在這種情況下,子畫面單元根據圖3被編程,以產生錯誤信息的閃爍顯示。現在將參考圖3對其作特別詳細的解釋。標號10還是表示子畫面單元的首標部分,子畫面單元的大小被存儲在十六進制地址$0000至$0001。SPDSZ的大小為2544字節。該信息項表明下一個自由存儲地址位于地址$09F0。顯示控制命令序列表的起始地址被存儲在地址$0002至0003下。這個起始地址SP_DCSQTA位于地址$09C7。錯誤信息的第一字段的壓縮像素數據被存儲在地址$0004至$04E5的存儲單元,錯誤信息的第二字段的壓縮像素數據被存儲在地址$04E6至$09C6的存儲單元。第一顯示控制命令序列起始于地址$09C7。與整個子畫面單元的起始時刻相關的顯示控制命令序列的起始時刻被存儲在前兩個地址中。在這種情況下,由于第一顯示控制命令序列的起始時刻要與子畫面單元的起始時刻相符合,因此在其中輸入0。下一個顯示控制命令序列的起始地址被存儲在具有地址$09C9和$09CA的存儲單元。這個地址SP_NXT_DCSQ_SA相應于十六進制值$09E9。接下來是第一實際顯示控制命令SET_COLOR,通過該命令,可以選擇子畫面的每個像素的顏色,該命令占據地址$09CB到$09CD的三個存儲單元。接下來是命令SET_CONTR,通過該命令設置與主圖像相比子畫面像素的對比度值,這個命令也占據三個字節的存儲空間。接下來是命令SET_DAREA,用于確定子畫面在屏幕上顯示的大小和位置,該命令的起始地址是$09D2。選定一個矩形子畫面,它的左上角位于圖像坐標(235,250),右下角位于圖像坐標(485,300)。在這種情況下,值235和485表示相應角位置所在X坐標,值250和300表示Y坐標。這個命令占據7個字節的存儲空間。接下來是起始于地址$09D9的命令SET_DSPXA,它指示第一字段和第二字段的像素數據要被開始讀出的地址。在每種情況下該信息項相應于像素數據PXDT和PXDB的字段的起始地址。這個命令的長度是5個字節。命令STA_DSP位于地址$09DE,它啟動對子畫面單元的顯示。到此為止,用到的所有命令都已經在DVD標準(1.0版本)中被確定。在DVD標準中沒有被定義的一條新的命令SET_BAREA現在被存儲在地址$09DF-$09E7。用這個命令選擇對整個子畫面的閃爍顯示,它的X和Y坐標相應于命令SET_DAREA的坐標。因此命令SET_BAREA只能由被設計成根據該命令產生子畫面閃爍顯示的子畫面譯碼單元進行正確的處理。結束命令CMD_END被存儲在存儲地址$09E8,它結束第一顯示控制序列。這個命令使子畫面譯碼單元前進到根據地址$09C9和$09CA中的信息項存儲的那個存儲器地址。
在那里存儲地址$09E9,從而使所指定地址中的信息項在接下來被估算。這就是信息項SP_DCSQ_STM,它表示相關的顯示控制命令序列的起始時刻的數字。在其中存儲十進制值879,它相應于與子畫面單元的起始時刻相關的10秒時間指示。該時刻由子畫面譯碼單元中的一個計數器監控,當到達該時刻時,處理第二顯示控制命令序列的下述命令。首先,隨后還是用于存儲相繼的顯示控制命令序列的地址的信息項。在這種情況下包含信息項$09E9,它與第二顯示控制命令序列的起始地址是相同的,它向子畫面譯碼單元指示第二顯示控制命令序列同時代表最后一個顯示控制命令序列。接下來是停止命令STP_DSP,位于地址$09ED。這個命令停止子畫面單元的顯示,從而結束錯誤信息的輸出。該顯示控制命令序列的結束命令CMD_END也被存儲在地址$09EE。因此同樣的命令被規定在下面的地址中,以便滿足DVD標準中規定的規則,即子畫面只允許有偶數個字節(填充規則)。
由于上面所描述的子畫面單元,一個擴展的子畫面譯碼單元在大約10秒的時間內在電視接收機的屏幕上產生錯誤信息的閃爍顯示。此后即結束錯誤信息的顯示。如果用不是設計來進行子畫面閃爍顯示的子畫面譯碼單元來處理相同的子畫面單元,而是將擴展命令SET_BAREA解釋為一條結束命令,那么子畫面的閃爍顯示就不會發生。相反,由于閃爍命令被解釋為結束命令CMD_END,并且自動生成一個向第二顯示控制命令序列的跳轉,因此,錯誤信息被作為固定的錯誤信息輸出。在這種情況下,地址$09E8中的實際結束命令甚至不會被處理。
現在將參考圖5對子畫面譯碼單元的結構作詳細的描述。該子畫面譯碼單元用于產生正確的子畫面,并且還將該子畫面與實際的主圖像混合。因此子畫面譯碼單元構成了DVD重放裝置中的一個子部件。標號20指示一個接口電路,該接口電路20被連接到用于控制整個系統中的單個子部件的一個主處理器。為了簡化起見,在圖中沒有示出這個主處理器。子畫面譯碼單元的設置可以經由接口電路20根據需要來重新構造。標號21指示用于子畫面單元的存儲器,該存儲器同樣由主處理器或另一個處理器控制。這個主處理器保證隨后的各個子畫面單元完全可以在合適的時間在存儲器21中得到。標號22指示第一譯碼單元,駐留在存儲器21中的子畫面單元在該單元中被譯碼。特別是顯示控制命令因此也在其中進行處理。第二譯碼單元23被單獨示出,這個第二譯碼單元23在擴展的子畫面譯碼單元中提供。被增加來產生擴展的DVD標準的那些命令在第二譯碼單元23中進行處理。
為了僅僅保證擴展命令的可兼容容差,也可以將其設計成僅僅將每個擴展命令翻譯為一個結束命令。
譯碼單元22和23經由總線連接到下游單元24至27和29至31。閃爍控制單元24用虛線示出,它只存在于根據擴展標準設計的子畫面譯碼單元中,該擴展標準作為顯示控制命令集,還包括用于閃爍顯示子畫面的命令SET_BAREA。在不是根據擴展標準設計的那些子畫面譯碼單元的情況下,這個閃爍控制單元24被省略。該閃爍控制單元24為下游的多路復用器控制單元28產生控制信號,后者又為多路復用器單元32產生控制信號,對此下面將作詳細的解釋。另外還提供了一個加亮控制單元25,該單元也為多路復用器控制單元28產生控制信號。此外,還提供了一個子畫面控制單元26,它同樣為多路復用器控制單元28產生控制信號。標號27指示一個行程譯碼單元,像素數據的壓縮代碼在其中被反向。閃爍單元29同樣用虛線示出,因為它只存在于擴展的子畫面譯碼單元中。這個閃爍單元為閃爍顯示實現相應像素的接通和關斷。標號30指示一個加亮單元,它對在相應命令中提供的區域執行對像素的加亮。還提供了一個子畫面單元31,它產生具有子畫面單元中提供的特性的實際子畫面。如果既沒有對閃爍顯示也沒有對任何加亮作編程設計,那么只采用子畫面單元31的數據來合成圖像。多路復用器單元32用于選擇在每種情況下所需要的像素數據。這個多路復用器單元由多路復用器控制單元28控制。為此,多路復用器控制單元28處理由控制單元24至26向其傳送的信號,每個信號指明各圖像特性被重現的位置。由此多路復用器控制單元28計算多路復用器單元32所要求的控制信號。以這種方式產生的子畫面被存儲在子畫面存儲器33中。在這種情況下,只有色彩值被存儲在子畫面存儲器33中。對比度值在多路復用器單元32的另一個輸出端,它用于控制第二多路復用器單元34,后者用于將主圖像與子畫面混合在一起。為此,來自一個視頻譯碼單元(例如MPEG視頻譯碼器)的數據流經由另一個輸入端向其傳送。為了將子畫面的數據插入到視頻數據流的正確位置,顯然也需要向多路復用器單元34傳送適當的控制信號,該信號也可以由多路復用器控制單元28產生。完整的視頻數據流呈現在多路復用器單元34的輸出端。
圖3所示的子畫面單元可以被存儲在一個只讀存儲器(如EPROM等等)中。在其它子畫面單元的情況下,如字幕,可以將其存儲在一個存儲媒體特別是光學圖像載體(DVD、CD、CDi、微型盤等等)中。當然也可以考慮存儲在其它存儲媒體中,如磁帶和磁盤等等。
圖6示出了存儲了一個子畫面單元的一個DVD盤。
本文以DVD重放裝置為例對本發明作了解釋,然而并不局限于此。對單元進行控制的命令序列在其它技術領域也是公知的。以打印機控制為例,對打印機要處理的一些控制命令也作了標準化處理,在這種情況下也產生了這樣的問題,即打印機從一開始并不是為所有增補的打印機控制命令設計的。因此,本發明也可以用來兼容處理新增加的打印機控制命令。計算機監視器中借助于圖形卡的顯示控制也可以作為本發明的另一個應用。當被提供了標準化控制語言時,傳真機的控制也同樣適用。還可以舉出進一步的例子。
權利要求
1.一種存儲受控單元(40)的控制命令的存儲媒體,該控制命令被順序存儲在該存儲媒體中,該控制命令序列具有從第一組控制命令中選擇的第一控制命令,其特征在于該序列還有一些從第二組控制命令中選擇的第二控制命令(SET_BAREA),這樣來存儲第二組的控制命令,使它們安排在第一組的控制命令之后,從而它們只在第一組的控制命令之后讀出。
2.根據權利要求1所述的存儲媒體,其特征在于第一組控制命令有一個結束命令(CMD_END),它指示控制命令序列的結束,并且該結束命令(CMD_END)只被安排在這些第二控制命令(SET_BAREA)之后,因此它只在第一和第二控制命令之后讀出。
3.根據權利要求1或2所述的存儲媒體,其特征在于它被設計成為磁帶或存儲盤。
全文摘要
一種存儲受控單元(40)的控制命令的存儲媒體,該控制命令被順序存儲在該存儲媒體中,該控制命令序列具有從第一組控制命令中選擇的第一控制命令,其特征在于該序列還有一些從第二組控制命令中選擇的第二控制命令(SET_BAREA),這樣來存儲第二組的控制命令,使它們安排在第一組的控制命令之后,從而它們只在第一組的控制命令之后讀出。
文檔編號G11B27/34GK1497592SQ0310796
公開日2004年5月19日 申請日期1997年12月16日 優先權日1996年12月19日
發明者馬科·溫特, 馬科 溫特 申請人:德國湯姆遜-布朗特公司