專利名稱:不同幀速率多流混合視頻流的無縫譯碼裝置的制作方法
技術領域:
本發明涉及使具有不同幀速率的多個流混合的視頻流的無縫重現的譯碼裝置,更詳細地說,涉及隔行掃描流與逐行掃描流混合形成的數據流的譯碼裝置。
背景技術:
1994年在美國開始的衛星數字廣播在1996年波及日本和歐洲諸國,進入了實用化階段。在數字廣播中,能夠提供現有的模擬廣播所沒有的高圖像質量、多頻道,以及數據廣播等各種各樣的服務。在廣播運營者方面,為了實現這樣的新服務,使廣播系統和接收裝置發生了很大的變革。作為新的服務,對廣播運營者的高清晰度廣播固有服務和數字廣播新服務進行了研究。在2000年的下半年,日本預定實現BS數字廣播。
作為高圖像質量化的途徑,正在研究在日本國內CS(衛星)數字廣播中采用日本郵政省第7號命令規定的逐行掃描方式。逐行掃描方式相對于已有的隔行掃描方式具有2倍的信息量,能夠得到非常高的垂直清晰度。而且逐行掃描方式與已有的隔行掃描方式相比,不存在閃爍等隔行掃描操作帶來的圖像質量劣化,能夠實現高圖像質量的視像。
現有的視像的內容幾乎都是用隔行掃描方式作成的。而可以想象,今后新作成的視像內容并不是說全部都是逐行掃描方式作成的,初期也會有用隔行掃描方式作成的,爾后逐行掃描方式作成的視像的比例逐漸增多。而且可以想象,曾經以隔行掃描方式作成的視像內容只要沒有特別的理由是不會重新以逐行掃描方式制作的。
根據這樣的事態,至少目前預定采用現有隔行掃描方式廣播添加逐行掃描方式廣播的稱為混合編排的、同一節目中隔行掃描方式的流(下稱“隔行掃描流IS”)與逐行掃描方式的流(下稱“逐行掃描流PS”)混合的形態進行的廣播。混合編排的比例將來會逐漸減少,但是可以認為在相當長的時間內不會消失。
這種混合編排不僅是數字廣播,而且對于處理DVD等的MPEG流等的裝置,可以說情況也相同。總之,可以預期,會將以隔行掃描方式作成的內容和以逐行掃描方式作成的內容混合編排而成的數字流記錄于一枚DVD提供使用者。將該DVD再現時,情況和上述混合編排的數字廣播相同。
收聽收視上述混合編排的數字流廣播時,或是重放將混合編排的數字流加以記錄的DVD時,必須考慮在譯碼器一方按照隔行掃描方式和逐行掃描方式的要求,分別對幀速率不同的MPEG流進行相應的正確處理。否則,在進行隔行掃描方式/逐行掃描方式的切換時,如下面參照圖27及圖28所說明的那樣,畫面將會發生混亂。總之,或不以幀或場為單位顯示畫面,或顯示不完整,在展開的畫面上發生可以辨認出的程度的不連續,收視和收聽的人們會有不舒服的感覺。
圖27表示將從隔行掃描流IS變成逐行掃描流PS的混合編排流譯碼的已有的視頻譯碼裝置內的運作。在該圖中圖像顯示期間(下面為了簡化,根據需要簡稱為“期間”)T0~T4,P畫面(picture)P9(期間T0)、B畫面B7(期間T2),以及B畫面B8(期間T4)構成的隔行掃描流IS通過位流FIFO輸入視頻譯碼裝置。
而在圖像顯示期間T6~T11,I畫面I0(期間T6)、P畫面P3(期間T7)、B畫面B1(期間T8)、B畫面B2(期間T9)、P畫面P6(期間T10),以及B畫面B4(期間T11)構成的逐行掃描流PS通過位流FIFO輸入視頻譯碼裝置。下面對各期間視頻譯碼裝置的運作加以說明。
還有,各畫面的接尾詞“P”是Predictive Picture(預測畫面)的意思,“I”是Intra Picture(內部畫面)的意思,而“B”是Bidirectionally Predictive Picture(雙向預測畫面)的意思。而各接尾詞P、I及B上后續的數字則表示該畫面的顯示順序。
包含于輸入流中的隔行掃描流IS的各畫面數據與對應的譯碼開始信號同步地開始譯碼,同時寫入指定的幀存儲器FMn。寫入幀存儲器FMn的譯碼的畫面在規定的時刻從幀存儲器FMn讀出,與垂直同步信號同步地(垂直信號為高電平期間)按照顯示奇偶性顯示底(bottom)場或頂(top)場。
還有,在P畫面及I畫面的情況下,在寫入幀存儲器FMn起規定的時間之后從幀存儲器FMn讀出并顯示,而在B畫面的情況下則在寫入幀存儲器FMn的同時從幀存儲器FMn讀出并顯示。
而且,即使是對于包含于輸入流的逐行掃描流PS的畫面數據,也與隔行掃描流IS的畫面數據一樣,進行譯碼后寫入幀存儲器FMn,然后從幀存儲器FMn讀出并顯示。但是顯示的不是場,而是與顯示奇偶性無關地顯示幀,下面對各圖像顯示期間從輸入流的譯碼到顯示的運作進行具體說明。
首先,在T0期間,在幀存儲器FM2及幀存儲器FM3分別寫入T0期間之前在隔行掃描流IS中包含的P畫面P6及B畫面B5(未圖示)的譯碼過的數據。然后一邊輸入P畫面P9一邊依序譯碼,寫入幀存儲器FM1。
然后,與顯示用的垂直同步信號同步,并進而根據顯示奇偶性從幀存儲器FM2讀出P畫面P6的譯碼數據,根據顯示的奇偶性開始顯示底場。還有,在這里所示的已有例的情況下,隔行掃描流是底場優先。
在T1期間,T0期間里開始的P畫面P6的底場顯示結束之后,根據顯示奇偶性開始顯示P畫面P6的頂場。
在T2期間,一邊輸入B畫面B7一邊依序進行譯碼,在寫入幀存儲器FM3的同時,再度讀出,根據顯示奇偶性開始顯示底場。
在T3期間,T2期間里開始的B畫面B7的底場顯示結束之后,根據顯示奇偶性開始顯示B畫面B7的頂場。
在T4期間,一邊輸入B畫面B8一邊依序進行譯碼,在寫入幀存儲器FM3的同時,再度讀出,根據顯示奇偶性開始顯示底場。
在T5期間,T4期間里開始的B畫面B8的底場顯示結束之后,根據顯示奇偶性開始顯示B畫面B8的頂場。
在T6期間,一邊輸入逐行掃描流PS的I畫面I0一邊依序進行譯碼,寫入幀存儲器FM2。同時從幀存儲器FM1再度讀出隔行掃描流IS的P畫面P9的譯碼數據,根據顯示奇偶性開始顯示底場。
在T7期間,一邊輸入逐行掃描流PS的P畫面P3一邊依序進行譯碼,寫入幀存儲器FM1。而且從幀存儲器FM2讀出逐行掃描流PS的I畫面I0,進行幀的顯示。因此在T6期間開始的從幀存儲器FM1讀出的P畫面P9的頂場不進行顯示。這樣,取代P畫面P9的頂場進行的逐行掃描流PS的I畫面I0的幀顯示開始時,圖像發生混亂(不連續),使得聽眾和觀眾有不愉快的感覺。
在T8期間,一邊輸入逐行掃描流PS的B畫面B1一邊依序進行譯碼,寫入幀存儲器FM3,同時讀出,顯示B畫面B1的幀。這樣,作為隔行掃描流IS的最終顯示數據的P畫面P9沒有完全顯示卻切換為逐行掃描流PS的顯示。
在T9期間,一邊輸入B畫面B2一邊依序進行譯碼,寫入幀存儲器FM2,同時讀出,顯示B畫面B2的幀。
在T10期間,一邊輸入P畫面P6一邊依序進行譯碼,寫入幀存儲器FM2。而且從幀存儲器FM1讀出P畫面P3的譯碼數據,將該幀加以顯示。
在T11期間,一邊輸入B畫面B4一邊依序進行譯碼,寫入幀存儲器FM3,同時讀出,顯示B畫面B4的幀。
這樣,在圖像顯示期間T5前后,廣播從隔行掃描流IS切換為逐行掃描流PS的情況下,在圖像顯示期間T6~T7,保持不顯示隔行掃描流IS的P畫面P9的頂場的狀態,而將下面的逐行掃描流PS的視像顯示出來。
下面的圖28表示將從逐行掃描流PS變成隔行掃描流IS的混合編排流譯碼的已有的視頻譯碼裝置(未圖示)內的運作。在該圖中圖像顯示期間T6~T11,P畫面P6(期間T6)、B畫面B4(期間T7)、B畫面B5(期間T8)、P畫面P9(期間T9)、B畫面B7(期間T10)以及B畫面B8(期間T11)構成的隔行掃描流IS通過位流FIFO輸入視頻譯碼裝置。
而在圖像顯示期間T0~T4,I畫面I0(期間T0)、P畫面P3(期間T2)以及B畫面B1(期間T4)構成的隔行掃描流IS通過位流FIFO輸入視頻譯碼裝置。下面對各期間視頻譯碼裝置的運作加以說明。
在T6期間,一邊輸入逐行掃描流PS的P畫面P6一邊依序進行譯碼,寫入幀存儲器FM2。同時從幀存儲器FM1讀出逐行掃描流PS的先行的P畫面P3的譯碼數據,然后開始顯示。
在T7期間,一邊輸入B畫面B4一邊依序進行譯碼,寫入幀存儲器FM3,同時進行讀出,顯示B畫面B4的幀。
在T8期間,一邊輸入B畫面B5一邊依序進行譯碼,寫入幀存儲器FM3,同時讀出,顯示B畫面B5的幀。
在T9期間,一邊輸入P畫面P9一邊依序進行譯碼,寫入幀存儲器FM1,同時從幀存儲器FM2讀出P畫面P6的譯碼數據,顯示P畫面P6的幀。
在T10期間,一邊輸入B畫面B7一邊依序進行譯碼,寫入幀存儲器FM3,同時進行讀出,將B畫面B7的幀加以顯示。
在T11期間,一邊輸入B畫面B8一邊依序進行譯碼,寫入幀存儲器FM3,同時讀出,顯示B畫面B8的幀。
在T0期間,一邊輸入隔行掃描流IS的I畫面I0一邊寫入幀存儲器FM2,而且同時從幀存儲器FM1讀出逐行掃描流PS的P畫面P9的譯碼數據,將P畫面P9的幀加以顯示。
在T1期間,在T0期間顯示的逐行掃描流PS的P畫面P9的幀繼續顯示。
在T2期間,一邊輸入隔行掃描流IS的P畫面P3一邊依序進行譯碼,寫入幀存儲器FM1。同時再從幀存儲器FM2讀出隔行掃描流IS的I畫面I0,根據顯示奇偶性顯不底場。
在T3期間,在T2期間里開始的I畫面I0的底場結束之后,根據顯示奇偶性顯示I畫面I0的頂場。
在T4期間,一邊輸入隔行掃描流IS的B畫面B1一邊依序進行譯碼,在寫入幀存儲器FM3的同時進行讀出,根據顯示奇偶性顯示B畫面B1的底場。
在T5期間,在T4期間里開始的B畫面B1的底場結束之后,根據顯示奇偶性顯示B畫面B1的頂場。
如上所述,在圖像顯示期間T11和T0之間,廣播從逐行掃描流PS切換為隔行掃描流IS時,即使是隔行掃描流IS必須首先顯示頂場的情況下,在圖像顯示期間T2~T3也是從底場首先顯示。如果頂場與底場以相反順序顯示(幀存儲器FMn的輸出),則場單元的圖像時間關系發生偏差,變成看不清楚的圖像。
其原因是,如果對于時間軸頂場應該先顯示的視像從底場開始顯示,則視像逆時間軸方向顯示。因此,視頻流STv的內容在從逐行掃描流PS向隔行掃描流IS遷移的情況下,識別是從頂場開始顯示的,或是從底場開始顯示的,然后使其與顯示奇偶性一致這一點是很重要的。
還有,在以隔行掃描流IS的譯碼時序對逐行掃描流PS進行譯碼時,數據處理量為隔行掃描流IS處理時的2倍,因此發生溢出。另一方面,在以逐行掃描流PS的譯碼時序對隔行掃描方式進行譯碼時,反之,數據處理量為逐行掃描流PS處理時的一半,因此發生下溢。其結果是,譯碼處理失敗。
在圖27和圖28所示的例子中,幀存儲器組由分別存儲作為流的圖像數據的I畫面或P畫面的幀存儲器FM1及幀存儲器FM2和只存儲B畫面的幀存儲器FM3構成。這樣構成的幀存儲器組中,在各幀存儲器FMn(n=1、2、3)存儲(即寫入)圖像數據的時間與為了顯示而把寫入的圖像數據從幀存儲器FMn讀出的時間同步。
也就是說,應該存儲于幀存儲器FM1及FM2中的某一個的I畫面或P畫面譯碼時(例如存儲于幀存儲器FM1),已經譯碼的畫面(例如存儲于幀存儲器2)被讀出并顯示。然后,存儲于幀存儲器FM3的B畫面譯碼時,一邊將B畫面譯碼一邊顯示。
例如在圖27中圖像顯示期間T0的情況下,把P9圖像譯碼于幀存儲器FM1,因此顯示幀存儲器FM2存儲的P6圖像。然后,在圖像顯示期間T2的情況下,將B7圖像譯碼于幀存儲器FM2,因此顯示B7圖像。這是由于B畫面為了進行幀之間的雙向預測譯碼,參照前后的I畫面及P畫面,需要預先在幀存儲器FM1及FM2保存各畫面。
還有,圖27及圖28所示的輸入的流中,關于譯碼與顯示同時進行的B畫面,必須根據顯示進行的速度控制譯碼時間。即,有時B畫面過大,其譯碼時間不能夠包含于垂直同步信號的周期(16.7毫秒)內,會發生顯示混亂。
根據上面所述,本發明的目的在于,提供對幀速率不同的多個視頻數據構成的流中的幀速率、顯示奇偶性(決定首先顯示頂、底場中的哪一個的參數)進行分析,控制視頻譯碼器的起動時刻,實現圖像顯示不發生混亂的無縫再現的視頻譯碼裝置。
發明內容
為了達到上述目的,本發明具有下面所述的特征。
本發明的第1種情況是,對具有不同幀速率的多個流混合的視頻流以規定的時序譯碼后進行無縫再現的譯碼裝置具有下述特征,具備在對多個流進行譯碼之前提取各幀速率的幀速率提取器,以及根據提取的幀速率決定對視頻流的片層(slice)進行譯碼的時序的譯碼控制器,以決定的時序對視頻流進行譯碼,即使是在視頻流中向具有不同的幀速率的流切換時,也能夠無縫再現。
如上所述,在第1種情況中,根據在進行譯碼之前預先提取的譯碼的流的幀速率決定譯碼時序,因此能夠準備好對要譯碼的流進行適當的處理。
第2種情況是在第1種情況中具有下述特征,幀速率提取器包含根據譯碼時序對視頻流進行解析,將其分離為首部信息與壓縮數據的流解析器。
第3種情況是在第2種情況中具有下述特征,譯碼控制器根據首部信息,相應于視頻流中所包含的多個流的各流速率使由視頻流的顯示形式決定的垂直同步信號延遲規定的時間,從而生成規定譯碼時序的譯碼時序信號。
第4種情況是在第3種情況中具有下述特征,規定的時間比垂直同步信號的一個周期短。
第5種情況是在第4種情況中具有下述特征,規定的時間是垂直同步信號的半個周期。
第6種情況是在第1種情況中具有下述特征,譯碼器在對壓縮數據的片層進行譯碼之后接著對后續的畫面的畫面層進行譯碼。
如上所述,在第6種情況中,接著對譯碼的畫面的畫面層進行譯碼,以此可以得到顯示該畫面用的信息,迅速顯示該畫面。
第7種情況是在第3種情況中具有下述特征,譯碼控制器包含對視頻流的隔行掃描流交互屏蔽譯碼時序信號,
對視頻流的逐行掃描流將譯碼時序信號原封不動輸出的譯碼時序修正器。
第8種情況是在第7種情況中具有下述特征,譯碼控制器在視頻流從隔行掃描流切換為逐行掃描流的遷移中將譯碼時序信號加以屏蔽,使隔行掃描流的顯示結束。
第9種情況是在第7種情況中具有下述特征,譯碼控制器在視頻流從隔行掃描流切換為逐行掃描流的遷移中不將譯碼時序信號加以屏蔽,接著逐行掃描流的最后畫面,對隔行掃描流的第1畫面進行譯碼。
第10種情況是在第7種情況中具有下述特征,譯碼控制器在譯碼時視頻流(STv)不處于遷移狀態的情況下把表示視頻流的遷移狀態的多值的遷移狀態參數設定為第1規定值,在視頻流從隔行掃描流遷移到逐行掃描流,即幀速率碼(frame_rate_code)從小于7的數值變成7時,把遷移狀態參數設定為第2規定值,在視頻流從逐行掃描流遷移到隔行掃描流,即幀速率碼從7變成小于7的數值時,把遷移狀態參數設定為第3規定值,在接著的譯碼時刻把遷移狀態參數選定為第1規定值。
第11種情況是在第10種情況中具有下述特征,譯碼控制器在視頻流為隔行掃描流,從頂場起依序對照視像顯示奇偶性進行視像顯示時,將譯碼時序信號的頂場加以屏蔽,在從底場起依序對照視像顯示奇偶性進行視像顯示時,將譯碼時序信號的底場加以屏蔽。
第12種情況是在第11種情況中具有下述特征,用具有2個數值的屏蔽信號parity_mask規定將譯碼時序信號的頂場與底場中的哪一個加以屏蔽。
第13種情況是在第12種情況中具有下述特征,譯碼控制器在parity_mask與視像顯示奇偶性不相等,視頻流的幀速率碼小于7,并且參數top_field_first等于視像顯示奇偶性的情況下,使parity_mask反轉,進行奇偶性修正。
第14種情況是在第7種情況中具有下述特征,譯碼控制器在譯碼開始時通常把規定譯碼控制器的初始狀態的具有兩個數值的初始狀態參數設定為第1值。
第15種情況是在第14種情況中具有下述特征,譯碼控制器在初始狀態參數為第1值的情況下按照畫面層、片層、畫面層的順序對后續流的第1畫面進行譯碼。
第16種情況是在第7種情況中具有下述特征,譯碼控制器在譯碼開始時,通常在設定視頻流是逐行掃描流之后執行休眠處理。
第17種情況是在第7種情況中具有下述特征,譯碼控制器在視頻流從24幀的隔行掃描流切換為逐行掃描流和30幀的隔行掃描流中的某一個的第1遷移發生時,以及在與第1遷移時相反的方向進行視頻信號流的切換的第2遷移時,進行幀速率修正,在3∶2下拉時,把規定流的奇偶性的2值參數從一個數值設定為另一個數值,進行奇偶性修正。
第18種情況是在第15種情況中具有下述特征,畫面層包含序列首部(sequenceheader)、GOP首部(GOP_header)、及畫面首部(Picture_header),片層包含片層首部(slice_header)以下的位流,以畫面層和片層構成一個圖像。
第19種情況是在第7種情況中具有下述特征,譯碼控制器在對畫面層進行譯碼時檢測出sequence_end時結束譯碼處理,在檢測出視頻流(STv)的sequence_end時按照畫面層、片層、畫面層的順序進行譯碼之后,執行休眠處理。
第20種情況是在第14種情況中具有下述特征,譯碼控制器在初始狀態參數為第1值的情況下不進行圖像輸出設定。
第21種情況是在第7種情況中具有下述特征,譯碼控制器在前面的譯碼時刻進行的譯碼處理沒有結束的下溢情況下,在譯碼時刻首先顯示已經譯碼的I畫面或P畫面。
第22種情況是在第17種情況中具有下述特征,譯碼控制器在下溢時,而且下溢是在B畫面發生的情況下,接著下一個I畫面及P畫面中的某一個的畫面層及片層的譯碼,依序對后續的畫面層進行譯碼之后實施休眠處理。
附圖概述
圖1是本發明第1實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖2是圖1所示的視頻流無縫譯碼裝置的運作流程圖。
圖3是表示在圖1所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖4是輸入圖1所示的視頻流無縫譯碼裝置的視頻流的結構的說明圖。
圖5是表示圖1所示的視頻流無縫譯碼裝置的變形例的運作的流程圖。
圖6是表示在圖1所示的視頻流無縫譯碼裝置的變形例中觀察到的各種信號的處理時序的時序圖。
圖7是本發明第2實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖8是圖7所示的視頻流無縫譯碼裝置的運作流程圖。
圖9是表示在圖7所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖10是本發明第3實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖11是圖10所示的視頻流無縫譯碼裝置的運作流程圖。
圖12是表示圖10所示的視頻流無縫譯碼裝置的中觀察到的各種信號的處理時序的時序圖。
圖13是圖10所示的視頻流無縫譯碼裝置的變形例的運作流程圖。
圖14是表示在圖10所示的視頻流無縫譯碼裝置的變形例中觀察到的各種信號的處理時序的時序圖。
圖15是表示在圖10所示的視頻流無縫譯碼裝置的變形例中觀察到的各種信號的處理時序的時序圖。
圖16是表示在圖10所示的視頻流無縫譯碼裝置的變形例中觀察到的各種信號的處理時序的時序圖。
圖17是本發明第4實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖18是圖17所示的視頻流無縫譯碼裝置的運作流程圖。
圖19是表示在圖17所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖20是本發明第5實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖21是圖20所示的視頻流無縫譯碼裝置的運作流程圖。
圖22是表示在圖20所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖20是本發明第5實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖21是圖20所示的視頻流無縫譯碼裝置的運作流程圖。
圖22是表示在圖20所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖23是本發明第6實施形態的視頻流無縫譯碼裝置的結構方框圖。
圖24是圖23所示的視頻流無縫譯碼裝置的運作流程圖。
圖25是表示在圖23所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖26與圖25相同,是表示在圖23所示的視頻流無縫譯碼裝置中觀察到的各種信號的處理時序的時序圖。
圖27是表示利用已有的視頻流無縫譯碼裝置進行視頻流譯碼處理時觀察到的各種信號的處理時序的時序圖。
圖28與圖27相同,是表示利用已有的視頻流無縫譯碼裝置進行視頻流譯碼處理時觀察到的各種信號的處理時序的時序圖。
本發明的最佳實施方式為了對本發明詳細加以說明,下面根據附圖對其說明。
第1實施形態首先參照圖1、圖2、圖3及圖4對本發明第1實施形態的視頻流無縫譯碼裝置加以說明。如圖1的方框圖所示,本例中的視頻流譯碼裝置(下面簡稱“視頻譯碼裝置VDA1”)大致由將作為輸入的MPEG數據視頻流STU譯碼并生成視頻信號BSTV的視頻譯碼部Ddv、視頻編碼器EV、譯碼開始信號生成器11及視頻譯碼控制部CDV1構成。
視頻譯碼部Ddv連接于外部的數字視頻信號源(未圖示出),得到視頻流STV的輸入。關于視頻流STV的具體結構下面將參考圖4進行詳細說明。而視頻譯碼部Ddv對輸入的視頻流STV實施各種數字處理,進行譯碼,生成數字視頻信號Bstv。
視頻編碼器EV為了在監控器上顯示圖象,將對每一種顯示方式決定的垂直同步信號Vs及奇偶信號Vp輸出到視頻譯碼器控制部CDV1。又,視頻編碼器EV連接于視頻編碼器Ddv,接受數字視頻信號Bstv的輸入,利用由垂直同步信號Vs與奇偶信號決定的時序將數字視頻信號Bstv編碼,以輸出對顯示方式適合的視頻信號Sv。該視頻信號Sv分別利用對顯示方式適合的顯示裝置顯示圖象。
譯碼開始信號生成器11依據從視頻編碼器EV輸入的垂直同步信號Vs,生成以對輸入的視頻流STV的圖象結構適合的時序譯碼用的譯碼開始信號Vsd。在這種意義上,可以把垂直同步信號Vs看作第1垂直同步信號,把譯碼開始信號Vsd看成第2垂直同步信號。
視頻譯碼控制部CDV1還連接于視頻譯碼部Ddv,接收在視頻流STV的譯碼處理時提取的首部信息Ih和依據首部信息Ih生成的各種數據中的幀速率碼(frame_ratecode,在圖1中記為“Frc”)的輸入。然后視頻譯碼控制部CDV1依據視頻編碼器EV輸入的垂直同步信號Vs及奇偶信號Vp和視頻譯碼部Ddv輸入的首部信息Ih及幀速率碼,控制整個視頻譯碼部Ddv的動作,以根據視頻流STv的內容對其正確譯碼。
視頻譯碼部Ddv包含位流FIF01、流解析器2、視頻譯碼器3、首部信息存儲器4、寫入幀存儲器選擇器5(在圖1中記為“寫入FM選擇器5”)、幀存儲器組6以及顯示幀存儲器選擇器7(在圖1中記為“顯示FM選擇器7”)。位流FIF01暫時存儲從外部的數字視頻信號源輸入的視頻流STv。
流解析器2解析從位流FIF01輸入的視頻信號流STv中的首部信息,提取首部信息Ih,同時提取MPEG的壓縮圖象數據Mb。
視頻譯碼器3將從流解析器2輸入的壓縮圖象數據Mb加以譯碼,生成譯碼圖象數據DMb,輸出到寫入幀存儲器選擇器5。另一方面,首部信息存儲器4存儲從流解析器2輸入的首部信息Ih。而首部信息存儲器4根據寫入幀存儲器選擇器5及顯示幀存儲器選擇器7來的要求,把存儲的首部信息Ih中圖象編碼類型PCT(也就是表示圖象是P、I及B的哪一個的參數)分別輸出。而且首部信息存儲器4根據圖象譯碼控制器CDV1來的要求輸出幀速率碼。
寫入幀存儲器選擇器5根據圖象編碼類型PCT生成表示是否把從視頻譯碼器3輸出的譯碼圖象數據DMb的畫面數據寫入幀存儲器FM1~FM3中的某一個的寫入幀存儲器指示信號Wf,輸出到幀存儲器組6。幀存儲器組6由3個幀存儲器6a、6b、6c構成這3個幀存儲器組分別為第1幀存儲器FM1、第2幀存儲器FM2以及第3幀存儲器FM3。幀存儲器組6接收幀存儲器識別信號Wf,在指定的幀存儲器FMn(n為1、2或3中的某一個)以畫面為單位(下稱“畫面數據”)寫入從視頻譯碼器3輸出的譯碼圖象數DMb。
顯示幀存儲器選擇器7根據畫面編碼類型PCT生成表示分別對應于寫入的畫面數據(譯碼圖象數據DMb)的幀存儲器FMn的讀出幀存儲器指示信號Rf,輸出到幀存儲器組6。幀存儲器組6從幀存儲器指示信號Rf所表示的幀存儲器FMn以規定的順序讀出譯碼圖象數據DMb的畫面數據,將數字視頻信號Bstv輸出到視頻編碼器EV。
視頻編碼控制部CDV1包含定序器(sequencer)10、譯碼時序屏蔽器(mask)12、第1 I/P切換器13及第2 I/P切換器14。
譯碼時序屏蔽器12連接于視頻編碼器EV、定序器10及譯碼開始信號發生器11,分別接收奇偶信號Vp、譯碼開始信號Vsd及I/P識別信號Sa的輸入。I/P識別信號Sa是依據從視頻譯碼控制部CDV1從視頻譯碼部Ddv的首部信息提供的幀速率碼,根據當前輸入的視頻流STv是隔行掃描流IS或是逐行掃描流PS,相應于切換決定是否要在畫面單元進行譯碼的參數state與參數pimode的狀態遷移信號IP1及IP2進行切換的二值信號。
譯碼時序屏蔽器12依據I/P識別信號Sa用奇偶性信號Vp屏蔽譯碼開始信號Vsd,輸出第1譯碼開始信號Vm。定序器10生成依據第1譯碼開始信號Vm生成對第1 I/P切換器13進行控制的控制信號Sc3和對第2 I/P切換器14進行控制的控制信號Sc1。第1 I/P切換器13利用控制信號Sc3,依據幀速率碼生成第1狀態遷移信號IP1。
第2 I/P切換器14利用控制信號Sc1,生成第2狀態遷移信號IP2。而定序器10依據第1狀態遷移信號IP1及第2狀態遷移信IP2判斷在用第1譯碼開始信號Vm規定的時刻進行譯碼好不好,根據需要對第1譯碼開始信號Vm進行修正,生成第2譯碼開始信號Vmc。在這一意義上,可以說第2譯碼開始信號是規定實際譯碼開始的譯碼時序信號。還有,在下面,如參照圖2的流程圖及圖3的時序圖進行的說明所述,在本實施形態中,第2譯碼開始信號Vmc與第1譯碼開始信號Vm相同。
下面參照圖4對視頻流STv的結構加以說明。通常視頻流STv如圖4(a)所示,由序列層、GOP層、畫面層PL、片層SL構成。序列層指定畫面的格式,GOP層將畫面層PL以下分組。畫面層PL附加于每一顯示畫面,在片層SL的下方存在實際編碼數據。還有,序列層在該圖所示的例子中由序列首部、GOP首部以及圖像首部構成。
如上所述,根據圖像編碼方法,電視畫面有I畫面、P畫面、及B畫面3類。在本說明書中,表示這3種畫面的I、P和B上附有數字構成的接尾詞,以分別識別包含于流中的畫面。
如圖4(c)所示,圖像數據按照MPEG的規定以I0、P3、B1、B2、P6、B4、P9、B7、B8、…的順序排列的視頻流STv(圖像數據Mb)被輸入視頻譯碼裝置VDA1時,這些圖像數據變換為在視頻譯碼裝置VDA1內重新排列為能夠以I0、B1、B2、P3、B4、B5、P6、B7、B8、P9…的顯示順序顯示的視頻信號Sv(數字視頻信號Bstv)輸出。
又,如圖4(b)所示,像隔行掃描流IS(30幀/秒)、逐行掃描流(60幀/秒)以及電影素材的隔行掃描流IS(24幀/秒)那樣幀速率各不相同的流根據各流的序列首部層中記載的幀速率碼參數的值(例如0010、0100、0111)進行識別。
為了對隔行掃描流IS進行譯碼,對每一頂場及底場(top/bottom_field)進行隔行掃描,而每一畫面從幀存儲器FMn輸出的場是頂部在前或是底場在前的指定信息包含于其畫面層PL。
還有,在上述圖3所示的例子中,示出了在圖像顯示期間T0~T3將頂場(topfield)先顯示的情況的例子。在這種情況下,作為內部變數,有參數top_field_first,在該參數top_field_first=1時把頂場(top_field)先輸出。而在該參數top_fieldfirst=0時,把底場(bottom_field)先顯示。
圖像顯示期間T8~T11,由于以幀單元輸出,在這種情況下,序列層SL的參數progressive_sequence的值為1。這些參數所代表的流中的首部信息Ih存儲于首部信息存儲器4。
下面參照圖2所示的流程圖對圖1所示的視頻譯碼裝置VDA1(主要是視頻譯碼控制部)的運作加以說明。
視頻譯碼裝置VDA1一接通電源,譯碼開始信號生成器11就根據從視頻編碼器EV輸入的垂直同步信號Vs開始生成譯碼開始信號Vsd的處理。
在步驟S1,視頻譯碼控制部CDV1對是否正在從譯碼開始信號生成器11輸出譯碼開始信號Vsd進行監視。而只是在作為第2垂直同步信號的譯碼開始信號Vsd正在輸出的情況下判定為“是”,處理進入下一個步驟S3。如上所述,譯碼開始信號Vsd是決定對本發明中的流進行譯碼的基本時序的第2垂直同步信號。因此利用本步驟構成監視譯碼開始信號Vsd正在生成的情況的譯碼開始信號Vsd監視例行程序#100。
在步驟S3,判定表示視頻流STv是處于從隔行掃描流IS切換到逐行掃描流PS或反向切換的遷移狀態的參數state的值是否為8,也就是視頻流STv是否正在從隔行掃描流IS遷移到逐行掃描流PS。而在視頻流STv不是從隔行掃描流IS遷移到逐行掃描流PS的情況下,判定為“否”,處理進入下一個步驟S5。而在state的值為8的情況下,也就是視頻流STv正在遷移的情況下,進入步驟S19。
在步驟S19,state復位為0后,處理回到步驟S1,進行休眠處理。又利用步驟S3及步驟S19構成第2 I/P切換例行程序#200。
在步驟S5,判斷表示視頻流STv是隔行掃描流IS還是逐行掃描流PS的標記pimode的值是否為P。而在pimode=I的情況下,也就是當前的視頻流STv為隔行掃描流IS的情況下,判定為“否”,處理進入下一個步驟S7。
在步驟S7,判定表示從幀存儲器FMn首先輸出頂場還是底場的參數parity_mask的值是否與從視頻編碼器EV輸入的奇偶信號Vp(顯示奇偶性)的值相同。在不相同的情況下,判定為“否”,處理進入下一個步驟S9。
相同的情況下,則判定為“是”,返回步驟S1,進行休眠處理。還有,parity_mask是譯碼時序屏蔽器12依據奇偶性信號Vp(顯示奇偶性)對從譯碼開始信號生成器11輸入的譯碼開始信號Vsd進行屏蔽處理用的參數。
而在步驟S5,在“是”,也就是當前的視頻流STv(圖像數據Mb)是逐行掃描流PS的情況下,跳過步驟S7,進入步驟S9。這樣,利用步驟S5和步驟S7,構成對譯碼開始信號Vsd進行屏蔽的屏蔽控制例行程序#300。
在步驟S9,表示視頻流STv的遷移狀態的參數state的值并不是0,也就是處于遷移狀態時,判定為“否”,處理進入步驟S13。另一方面,在state的值為0,也就是并非遷移狀態的情況下,判斷為“是”,進入下一個步驟S11。
在步驟S11,判斷表示視頻流STv的幀速率的幀速率碼的值是否小于7。即,在視頻流STv不是逐行掃描流PS時,判定為“是”,處理進入下一個步驟S13。而在幀速率碼的值大于7的情況下,判定為“否”,處理進入步驟S21。
在步驟S21,判斷參數pimode的值是否為P。在判定為“是”的情況下,也就是判定為當前的視頻流STv是逐行掃描流PS的情況下,處理進入步驟S13。而在判定為“否”的情況下,進入步驟S23。
在步驟S23,把參數pimode設定為P。于是處理進入下一個步驟S25。
在步驟S25,把參數state設定為8。于是處理進入下一個步驟S13。這樣利用步驟S9、S11、S21、S23及S25構成第1 I/P切換例行程序#600。
在步驟S13,寫入幀存儲器選擇器5及顯示幀存儲器選擇器7執行根據畫面編碼類型PCT決定圖像數據的寫入及讀出的幀存儲器組6的各幀存儲器的設定輸出圖像例行程序。然后,處理進入下一個步驟S15。
在步驟S15,執行SL譯碼例行程序。也就是將包含于1個圖像的片層SL譯碼。然后,處理進入下一個步驟S17。
在步驟S17,執行PL譯碼例行程序。也就是將接在步驟S15譯碼的片層SL之后的畫面的畫面層PL譯碼。然后結束處理。
還有,如上所述在步驟S15及步驟S17中,在相同的圖像顯示期間內先對先行畫面的片層SL進行譯碼,然后對后續的畫面的畫面層PL進行譯碼,這是為了趕快對需要顯示的片層SL進行視頻譯碼,在后面的顯示時刻將視像無縫地加以顯示。
總之,片層SL的譯碼需要的信息在前面進行譯碼時存儲于首部信息存儲器4,因此能夠對片層SL迅速進行譯碼處理。特別是對于一邊譯碼一邊同時顯示的B畫面的譯碼非常有效。關于這一點,將在下面參照圖3進行說明。
下面參照圖3所示的時序圖對視頻流STv從隔行掃描流IS切換為逐行掃描流PS的情況下的視頻譯碼裝置VDA1的譯碼操作進一步作詳細說明。本例中從T0期間到T4期間,P畫面P9的片層SL和B畫面B7的畫面層PL(期間T0)、B畫面B7的片層SL和B畫面B8的畫面層PL(期間T2),以及B畫面B8的片層SL(期間T4)構成的、作為隔行掃描層IS的圖像數據Mb輸入視頻譯碼器3。
而在期間T4~T11,I畫面I0的畫面層PL(期間T4)、I畫面I0的片層SL與P畫面P3的畫面層PL(期間6)、P畫面P3的片層SL與B畫面B1的畫面層PL(期間T8)、B畫面B1的片層SL與B畫面B2的畫面層PL(期間T9)、B畫面B2的片層SL與P畫面P6的畫面層PL(期間T10),以及P畫面P6的片層SL與后續的畫面的畫面層PL(期間T11)構成的作為逐行掃描流PS的圖像數據DMb輸入視頻譯碼器3。
還有,該圖所示的Vsd、IP2、Vm及IP1的值分別對應于上述譯碼開始信號Vsd監視例行程序#100、第2 I/P切換例行程序#200、屏蔽控制例行程序#300以及第1 I/P切換例行程序#600的處理。
在視頻譯碼裝置VDA1中,依據從視頻編碼器EV輸入的垂直同步信號Vs,響應譯碼開始信號生成器11生成的譯碼開始信號Vsd,執行圖3中譯碼開始信號Vsd下面的欄中所示的譯碼處理。state變數的值通常為0,從隔行掃描方式切換為逐行掃描方式時為8。由于在圖像顯示期間T0~T4是通常的隔行掃描流IS,因而state=0。pimode變量在隔行掃描流IS時為I,而在逐行掃描流PS時為P。
Pimode=P時,由于是逐行掃描流PS,在垂直同步信號Vs的每一周期(脈沖)起動譯碼處理,而在隔行掃描流IS時則只要在垂直同步信號Vs的每兩個周期一次起動譯碼處理即可。因此,對一種場奇偶性進行屏蔽處理。圖3的隔行掃描流IS因為top_field_first=1,所以對頂場進行屏蔽(parity_mask=1)。
從圖像顯示期間T6起開始對逐行掃描流PS的I畫面I0的片層SL進行譯碼。這時幀速率碼=7。因此,在期間T6中,Pimode的值從I變成P,同時state的值從0變為8。
還有,在步驟S13的輸出圖像設定例行程序中,對3個幀存儲器FM1、FM2及FM3指定寫入/讀出幀存儲器FMn。實際上依據畫面編碼類型PCT對寫入幀存儲器選擇器5及顯示幀存儲器選擇器7進行控制。
在步驟S15的SL譯碼例行程序中,利用控制視頻譯器3的方法對片層SL以下的實際視頻數據(圖4(a))進行譯碼。
在步驟S17的PL譯碼例行程序中,利用流解析器2對序列層、GOP層、畫面層的首部信息進行譯碼,把所得到的首部信息Ih存儲于首部信息存儲器4。
又,在本實施形態中,響應譯碼開始信號Vms(Vm、Vsd),首先執行畫面的片層SL的譯碼,然后對后續畫面的畫面層PL進行譯碼。這是為了能夠以規定的顯示時序對片層SL進行顯示,而盡快預先對該片層SL進行視頻譯碼。也就是說,包含于畫面層PL的序列首部、GOP首部以及圖像首部這類片層SL譯碼中所需的信息事先存儲于首部信息存儲器4,因此能夠盡快進行譯碼處理。
下面就流解析器2、視頻譯碼器3及圖像數據Mb、譯碼圖像數據DM6與幀存儲器組6的關系對上述處理加以說明。
在圖像顯示期間T0中,在幀存儲器FM2寫入P畫面P6的譯碼數據,在幀存儲器FM3寫入畫面B5的譯碼數據。
定序器10依據前一圖像顯示期間對圖像進行譯碼時得到的P畫面P9的首部信息Ih,決定是否進行流解析。也就是相當于圖2的#100~#600的處理。然后,在到達輸出圖像設定例行程序S13時,設定譯碼后存儲的幀存儲器FM和顯示用的幀存儲器FMn。步驟S15及S17的處理意味著利用定序器使視頻譯碼部Ddv的流解析起動。
流解析器2對從位流FIFO1輸入的視頻流STv中的首部信息Ih進行解析及提取,同時提取MPEG的壓縮圖像數據Mb。也就是流解析器2在檢測出圖像數據中的P畫面P9的片層SL時,將MPEG的壓縮圖像數據傳送到視頻譯碼器3。然后視頻譯碼器3對P畫面P9進行譯碼。P畫面P9的進行過譯碼的數據依序寫入幀存儲器FM1。而且同時從幀存儲器FM2讀出P畫面P6的譯碼數據,依照顯示奇偶性(奇偶性信號Vp)開始進行對頂場的顯示。
又,在流解析器2檢測出畫面層PL的首部信息時,進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。在期間T1,開始于期間T0的P畫面P6的頂場的顯示結束之后,依照顯示奇偶性開始進行P畫面P6的底場的顯示。在期間T1,圖像數據的譯碼處理沒有進行,也就是進行上述休眠處理。
在期間T2,與期間T0一樣,由流解析器2檢測出B畫面B7的片層SL,視頻譯碼器3接著對片層的MPEG數據進行譯碼,畫面B7的譯碼過的數據依序寫入幀存儲器FM3,同時讀出,根據顯示奇偶性開始對頂場進行顯示。
而且,流解析器2對后續的B畫面B7的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
在期間T3,期間T2開始的B畫面B7的頂場的顯示結束之后,依據顯示奇偶性開始進行B畫面B7的底場的顯示。在期間T3,不進行圖像數據的譯碼處理,也就是進行上述休眠處理。
在期間T4,與期間T2一樣,由流解析器2檢測出B畫面B8的片層SL,視頻譯碼器3接著對片層的MPEG數據進行譯碼,畫面B8的譯碼過的數據依序寫入幀存儲器FM3,同時讀出,根據顯示奇偶性開始對頂場進行顯示。
而且,流解析器2對后續的逐行掃描流PS的I畫面I0的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
在期間T5,期間T4開始的B畫面B8的頂場的顯示結束之后,依據顯示奇偶性開始進行B畫面B8的底場的顯示。在期間T5,不進行圖像數據的譯碼處理,也就是進行上述休眠處理。
在期間T6,與期間T4一樣,由流解析器2檢測出I畫面I0的片層SL,視頻譯碼器3接著對片層的MPEG數據進行譯碼,從而將I畫面I0譯碼。I畫面I0的譯碼過的數據依序寫入幀存儲器FM2。同時從幀存儲器FM1讀出P畫面P9的譯碼數據,根據顯示奇偶性開始對頂場進行顯示。
而且,流解析器2對后續的逐行掃描流PS的P畫面P3的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
在期間T7,期間T6開始的P畫面P9的頂場的顯示結束之后,依據顯示奇偶性開始進行P畫面P9的底場的顯示。在期間T7,不進行圖像數據的譯碼處理,也就是進行上述休眠處理。而且上述期間T1、T3及T5的休眠處理因為視頻流STv是隔行掃描流IS,所以如上所述每兩個場進行一次。這樣的休眠處理在逐行掃描流PS進行譯碼處理時本來是不要的。
但是,在從視頻流STv從隔行掃描流IS變成逐行掃描流PS的那個交替時期,如果原封不動地對逐行掃描流PS進行譯碼,則隔行掃描流IS的最后的畫面不能夠顯示,因此利用第2 I/P切換器14進行休眠處理。
在期間T8,與期間T4一樣,由流解析器2檢測出逐行掃描流PS的P畫面P3的片層SL,視頻譯碼器3接著對片層的MPEG數據進行譯碼,從而將P畫面P3譯碼。P畫面P3的譯碼過的數據依序寫入幀存儲器FM1。而且同時從幀存儲器FM2讀出I畫面I0的譯碼數據,開始進行逐行掃描顯示。
而且,流解析器2對后續的B畫面B1的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
在期間T9,與期間T8一樣,由流解析器2檢測出逐行掃描流PS的B畫面B1的片層SL,視頻譯碼器3接著對片層的MPEG數據進行譯碼,從而將B畫面B1譯碼。B畫面B1的譯碼過的數據依序寫入幀存儲器FM3。而且同時從幀存儲器FM3讀出B畫面B1的譯碼數據,開始進行逐行掃描顯示。
而且,流解析器2對后續的B畫面B2的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
在期間T10,與期間T9一樣,由流解析器2檢測出逐行掃描流PS的B畫面B2的片層SL,視頻譯碼器3接著對片層的MPEG數據進行譯碼,也就是將B畫面B2譯碼。B畫面B2的譯碼過的數據依序寫入幀存儲器FM3。而且同時從幀存儲器FM3讀出B畫面B2的譯碼數據,開始進行逐行掃描顯示。
而且,流解析器2對后續的P畫面P6的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
在期間T11,與期間T10一樣,由流解析器2檢測出逐行掃描流PS的P畫面P6的片層SL,視頻譯碼器3接著對片層的MPEG數據,也就是對P畫面P6進行譯碼。P畫面P6的譯碼過的數據依序寫入幀存儲器FM2。而且同時從幀存儲器FM1讀出P畫面P3的譯碼數據,開始進行逐行掃描顯示。
而且,流解析器2對后續的畫面(未圖示)的畫面層PL的首部信息進行譯碼后提取首部信息Ih,存儲于首部信息存儲器4。
如上所述,利用第1 I/P切換例行程序#600的處理,在圖像顯示期間T6,幀速率碼的值從4變成7,state的值從從0變成8,而pimode的值從I變成P。但是在圖像顯示期間T7,利用第2 I/P切換器14,將state設定為state=0,利用向休眠轉移,禁止P畫面P3的處理。
借助于此,使在時間上與I畫面I0重復的P畫面P9的底場部分的顯示成為可能。其結果是,譯碼時刻只移動1Vs。借助于此,能夠實現從隔行掃描流IS(top_field_first=1)到逐行掃描流PS的沒有掉幀的無縫再現。
在本發明中,如圖像顯示期間T10的典型的處理所示,不是從垂直同步信號Vs的1個周期前開始譯碼,而是從垂直同步信號Vs的半個周期左右之前開始進行譯碼,因此譯碼是在顯示幾乎一半結束,幀存儲器FM有空的時刻進行的,所以能夠減輕譯碼引起的幀存儲器FM的蓋寫控制的負載。
下面參照圖5和圖6對本實施形態的變形例進行說明。本變形例的視頻譯碼裝置VDA1的結構保持圖1所示的結構不變,但是視頻譯碼控制部CDV1的控制動作不同。
如圖5的流程圖所示,在本變形例中圖2所示的流程圖中的第2 I/P切換例行程序#200以及第1 I/P切換例行程序#600分別改變,成為第2 I/P切換例行程序#210、屏蔽控制例行程序#310以及第1 I/P切換例行程序#610。
第2 I/P切換例行程序#210由新的步驟S28及步驟S30構成。步驟S28在state的值不是2的情況下將處理移到下面的屏蔽控制例行程序#300。在步驟S28判定為state的值為2的情況下,在步驟S30將state的值設定為0之后將處理移到屏蔽控制例行程序#300。
第1 I/P切換例行程序#610是從第1 I/P切換例行程序#600刪除步驟S21、S23及S25,同時在步驟S11的“是”的一側設置新的步驟S32、S34及S36得到的結構。在步驟S32,在pimode為P的情況下,在步驟S34將pimode設定為I之后在步驟S36將state設定為2。另一方面,在步驟S32,在pimode不是P的情況下將處理移到輸出圖像設定例行程序S13。
作為上述處理的結果,本例的譯碼處理如圖6的時序圖所示。
也就是說,在圖像顯示期間T4,存儲對圖像顯示期間T3的I畫面I0的畫面層PL的首部層進行解析的結果的首部信息存儲器4的幀速率碼的值為4,所以使state的值從0變為2,使pimode的值從P變為I。
在圖像顯示期間T5,利用第2 I/P切換例行程序#610,使state的值從2變為0,向休眠轉移,以禁止譯碼處理。借助于此,使得在圖像顯示期間T1~T6應該顯示的I畫面I0能夠從頂場開始顯示。
借助于此,能夠實現從逐行掃描流PS到隔行掃描流IS(top_field_first=1)的顯示奇偶性沒有錯誤(亦即不從底場顯示top_field_first=1的流)的無縫再現。
第2實施形態下面參照圖7、圖8對本發明第2實施形態的視頻流無縫譯碼裝置(下面簡稱“視頻譯碼裝置VDA2”)加以說明。視頻譯碼裝置VDA2把圖1所示的視頻譯碼裝置VDA1的視頻譯碼控制部CDV1改變為視頻譯碼控制部CDV2。
視頻譯碼控制部CDV2具有在視頻譯碼控制部CDV1新設置屏蔽修正器20的結構。屏蔽修正器20連接于視頻編碼器EV,接收奇偶信號Vp的輸入,同時連接于視頻信號譯碼部Ddv的首部信息存儲器4,接收top_field_first(在圖7中簡稱“Tff”)的輸入。屏蔽修正器20根據輸入的奇偶信號Vp和top_field_first,生成使parity_mask反轉的控制信號MA,輸出到譯碼時序屏蔽器12。
下面參照圖8的流程圖對視頻譯碼裝置VDA2的運作加以說明。在本實施形態中,圖5所示的流程圖的第2 I/P切換例行程序(routine)#210及第1 I/P切換例行程序#610變成第2 I/P切換例行程序#220及第1 I/P切換例行程序#620。又把新的屏蔽修正例行程序#400插入屏蔽控制例行程序#310及第1 I/P切換例行程序#620之間。
第2 I/P切換例行程序#220在第2 I/P切換例行程序#210的步驟S30的下面新設置步驟S40、步驟S42、步驟S44及步驟S46。
在步驟S40中,步驟S30把state的值設定為0之后,判斷parity_mask的值是否與顯示奇偶性(奇偶信號Vp)的值相同。在不相同的情況下,在步驟S44使parity_mask反轉之后,進入步驟S42。另一方面,在相同的情況下,處理直接進入步驟S42。
在步驟S42,判斷state的值是否為8,在該值為8的情況下,進入步驟46,將state的值設定為0之后,處理回到譯碼開始信號Vsd監視例行程序#100的步驟S1,進行休眠處理。另一方面,在不是8的情況下,處理進入屏蔽控制例行程序#310。
屏蔽修正例行程序#400由步驟S48、步驟S50及步驟S52構成。屏蔽控制例行程序#310的處理一旦結束,就在步驟S48判斷幀速率碼是否小于7。在不小于7的情況下,處理進入下面的第1 I/P切換例行程序#620。而在比7小的情況下則在步驟S50判斷top_field_first是否與顯示奇偶性(奇偶性信號Vp)相同。在不相同的情況下,處理進入第1 I/P切換例行程序#620。而在相同的情況下,則在步驟S52使paritymask反轉之后處理進入譯碼開始信號Vcd監視例行程序#100的步驟S1,進行休眠處理。
第1 I/P切換例行程序#620由第1 I/P切換例行程序#600(圖2)和第1 I/P切換例行程序#610(圖5)組合構成。其結果是,在步驟S11判定為“是”的情況下,和第1 I/P切換例行程序#620的情況一樣,執行步驟S32、S34、及S36的處理。而在判定為“否”的情況下,和第1 I/P切換例行程序#610一樣,執行步驟S21、S23、及S25的處理。
作為上述處理的結果,本例的譯碼處理如圖9的時序圖所示。本時序圖中由于隔行掃描流IS的top_field_first的值為0,先顯示底場。
因此,在從逐行掃描流PS遷移到隔行掃描流IS時,即在圖像顯示期間T9,利用第1 I/P切換例行程序#620把state的值從0變成2。
在圖像顯示期間T10,利用第2 I/P切換例行程序#220,在步驟S40判定paritymask的值與顯示奇偶性(Vp)的值不相等。
其結果是,在步驟S44 parity_mask的電平反轉。
還有,在屏蔽控制例行程序#310的步驟S7,判定parity_mask的值與顯示奇偶性(Vp)的值相等,進入譯碼開始信號Vsd監視例行程序#100的步驟S11,進行休眠處理。
而在圖像顯示期間T11,在屏蔽修正例行程序#400的步驟S52中,使parity_mask反轉(切換),進入步驟S1,對片層進行處理。
這樣一來,在2Vs期間不進行譯碼處理,從圖像顯示期間T12到T14,能夠首先顯示底場。其結果是,即使是視頻流STv的內容變為隔行掃描流IS或逐行掃描流PS,也能夠無縫地再現。
第3實施形態下面參照圖10、圖11和圖12對本發明第3實施形態的視頻流無縫譯碼裝置(以下簡稱“視頻譯碼裝置VDA3”)加以說明。視頻譯碼裝置VDA3將圖7所示的視頻譯碼裝置VDA2的視頻譯碼控制部CDV2變成視頻譯碼控制部CDV3。
視頻譯碼控制部CDV3具有在視頻譯碼控制部CDV2新設起動控制器21的結構。起動控制器21連接于定序器10,與其相互交換設定vdec_mode的控制信號ST。vdec_mode是具有規定視頻譯碼控制部CDV3的初始狀態的兩個值的初始狀態參數。
下面參照圖11所示的流程圖對視頻譯碼裝置VDA3的運作加以說明。本實施形態的運作由作為已敘述的譯碼開始信號Vsd監視例行程序#100的變形的譯碼開始信號Vsd監視例行程序#110、已敘述過的第2 I/P切換例行程序#220、屏蔽控制例行程序#310、屏蔽修正例行程序#400、第1 I/P切換例行程序#620、輸出圖像設定例行程序S13、SL譯碼例行程序S15,以及PL譯碼例行程序S17構成。還有,在第1 I/P切換例行程序#620與輸出圖像設定例行程序S13之間新設起動控制例行程序#800。
譯碼開始信號Vsd監視例行程序#110由判斷是生成譯碼開始信號Vsd信號,還是必須進行初始化的步驟S60與初始化步驟S62構成。
在步驟S60中,如果斷定生成譯碼開始信號Vsd,則和譯碼開始信號Vsd監視例行程序#100的情況一樣,處理進入第2 I/P切換例行程序#220。另一方面,在判斷為必須初始化的情況下,在步驟S62把參數vdec_mode的值設定為0,status的值設定為0之后,使處理返回步驟S60,進行休眠處理。
還有,在譯碼開始信號Vsd監視例行程序#110中,最初的步驟不是步驟S1,而是步驟S60,因此,在本流程圖中,為了進行休眠處理,各步驟使處理轉移的目的處當然是步驟S60。
起動控制例行控制程序#800由步驟S64、S66、S67、S68、S70及S72構成。在第1 I/P切換例行程序#620的處理之后,在步驟S64判斷vdec_mode是否為0。在判斷為“否”的情況下,處理進入輸出圖像設定例行程序S13。而在判定為“是”的情況下,在下一步驟S66,vdec_mode設定為1,處理進入步驟S67。
在步驟S67,與所述的步驟S13的情況一樣,進行輸出圖像設定。然后,在步驟S68,與PL譯碼例行程序S17中的情況一樣對畫面層PL進行譯碼后,處理進入步驟S70。
在步驟S70,與SL譯碼例行程序S15一樣對片層SL進行譯碼后,處理進入步驟S72。
在步驟S72,還對畫面層PL進行譯碼,而后處理回到譯碼開始信號Vsd監視例行程序#110的步驟S60,進行休眠處理。
作為上述處理的結果,本例中的譯碼處理如圖12的時序圖所示。
本時序圖中,圖像顯示期間T3~T4進行初始化。借助于初始化,譯碼開始信號Vsd監視例行程序#110利用步驟S62在vdec_mode設定0,同時將state的值設定為0。
在圖像顯示期間T5,由起動控制器21在步驟S66將vdec_mode的值從0變為1。
借助于此,使頻道切換等操作引起的初始化后的譯碼開始的起動成為可能。
下面參照圖13、圖14、圖15及圖16對本實施形態的變形例加以說明。本變形例中的視頻譯碼裝置VDA3的結構保持圖10所示的結構,但是視頻譯碼控制部CDV3的控制操作不同。
本變形例的流程圖如圖13所示,在圖11所示的流程圖中的譯碼開始信號Vsd監視例行程序#110追加新的步驟S74,變成譯碼開始信號Vsd監視例行程序#120。
即,在步驟S62把vdec_mode設定為0的同時,把state的值設定為0后,在步驟S74再把幀速率碼的值設定為7,再使處理回到步驟S60進行休眠處理。
這意味著在圖14所示的時序圖中幀速率碼為4的情況下,在隔行掃描流IS起動正常顯示。
但是,在圖15中,如果在初始化中把幀速率碼設定為4,則在輸入的流是逐行掃描流的情況下,圖像顯示期間T4~T5顯示的I畫面I0顯示2次。
因此,將幀速率碼設定為7,如圖16(a)及圖16(b)所示,不管是哪一種流的情況下起動都能夠正常顯示。
這樣,在圖15所示的例子中,在T4期間發生休眠操作的事態可以利用在圖16(b)所示的例子中把幀速率碼設定為7的方法加以防止。
作為上述處理的結果,本例中的譯碼處理如圖14、圖15、圖16(a)及圖16(b)的時序圖所示。
第4實施形態下面參照圖17、圖18及圖19對本發明第4實施形態的視頻流無縫譯碼裝置(下面簡稱“視頻譯碼裝置VDA4”)加以說明。視頻譯碼裝置VDA4是對上述第3實施形態的視頻譯碼裝置VDA3的視頻譯碼控制部CDV3再追加定序器10和更換設定修正比率的控制信號FL的幀速率修正器22作為視頻譯碼控制部CDV4的。
下面對利用視頻譯碼裝置VDA4的、從24幀/SP的隔行掃描流IS向逐行掃描流PS遷移時的俗稱3∶2下拉處理進行說明。
如圖18所示,視頻譯碼裝置VDA4的流程圖,圖11所示的流程圖的屏蔽修正例行程序#400經過修正,變成屏蔽修正例行程序#410。而且在屏蔽修正例行程序#410與第1 I/P切換例行程序#620之間新插入幀速率修正例行程序#500。又,譯碼開始信號Vsd監視例行程序#110被更換為圖13所示的譯碼開始信號Vs監視例行程序#120。
屏幕修正例行程序#410具有在屏蔽修正例行程序#400中在步驟S48與步驟S50之間插入新的步驟S80的結構。總之,在步驟S48中判斷為幀速率碼小于7時,處理進入判斷插入的Progressive_sequence的值是否為1的步驟S80。
在步驟S80,判斷為“是”的情況下,處理進入下一個幀速率修正例行程序#500。這是表示幀圖像是沒有頂場、底場的區別的逐行掃描圖像,因此沒有必要由步驟50進行奇偶性核對。而在判斷為“否”的情況下,處理進入步驟S52。此后的處理如同關于屏蔽修正程行程序#400所述的。
幀速率修正例行程序#500由步驟S82、S86、S88及S90構成。
在步驟S82中,判斷幀速率碼的值是否為2,在判斷為“否”的情況下,處理進入第1 I/P切換例行程序#620。而在判斷為“是”的情況下,則處理經過幀速率修正例行程序S86,進入判斷修正的比率是否3∶2的步驟S88。
在步驟S88中判斷為“否”的情況下,處理進入第1 I/P切換例行程序#620。而在判斷為“是”的情況下,在步驟S90使Parity_mask電平反轉后處理進入譯碼開始信號Vsd監視例行程序#120的步驟S60,進入休眠。
作為上述處理的結果,在本例中的譯碼處理如圖19的時序圖所示。
借助于此,對24P的隔行掃描流IS進行3∶2下拉處理后,對于后續于流的逐行掃描流也有可能無縫地再現。又,利用屏蔽修正例行程序#410與逐行掃描修正例行程序#500,可以如圖像顯示期間T0~T4所示,再現24P的隔行掃描流IS。
第5實施形態下面參照圖20、圖21及圖22對本發明第5實施形態的視頻流無縫譯碼裝置(下面簡稱“視頻譯碼裝置VDA5”)加以說明。視頻譯碼裝置VDA5是在上述第4實施形態的視頻譯碼裝置VDA4的視頻譯碼控制部CDV4中再增加交換對序列的結束進行檢測的控制信號SE的序列控制器23作為視頻譯碼控制部CDV5的。
如圖21所示,視頻譯碼裝置VDA5中的流程圖在圖11所示的第1 I/P切換例行程序#620與起動控制例行程序#800之間新插入序列結束檢測例行程序#700。
序列結束檢測例行程序#700由判斷是否檢測出序列結束的步驟S90、圖像輸出設定例行程序S92、對畫面層PL進行譯碼的例行程序S94、對片層SL進行譯碼的例行程序S96,以及對畫面層PL進行譯碼的例行程序S98構成。
在本實施形態中,在一旦檢測出序列結束就使處理進入下一步驟這一點上具有其他實施形態沒有的特征。
在步驟S90,如果沒有檢測出序列結束,就判定為“否”,處理就進入起動控制例行程序#800。另一方面,在判定為“是”的情況下,在步驟S92設定輸出圖像后,在步驟S94將畫面層PL譯碼,再在步驟S96將片層SL譯碼,又在步驟S98將畫面層PL譯碼。其后,處理進入譯碼開始信號Vsd監視例行程序#120的步驟S60,實施休眠處理。
作為上述處理的結果,在本例中的譯碼處理如圖22的時序圖所示。該時序圖表示具有圖4(d)所示結構的視頻流STV輸入時的運作。這主要是可以用于靜止圖像業務和I畫面的特殊再現。
第6實施形態下面參照圖23、圖24、圖25及圖26對本發明第6實施形態的視頻流譯碼裝置(下面簡稱“視頻譯碼裝置VDA6”)加以說明。視頻譯碼裝置VDA6是在上述第5實施形態的視頻譯碼裝置VDA5的視頻譯碼控制部CDA5中增加定序器10和交換檢測下溢的控制信號UF的下溢控制器24作為視頻譯碼控制部CDV6的。
如圖24所示,視頻譯碼裝置VDA6的流程圖是相對于圖21所示的流程圖在第1I/P切換例行程序#620與序列結束檢測例行程序#700之間新插入下溢控制例行程序#900。
下溢控制例行程序#900由判斷檢測出下溢與否的步驟S910、輸出圖像設定例行程序S920、轉移到檢測出I畫面或D圖像的例行程序S930、對畫面層PL進行譯碼的例行程序S940、對片層SL進行譯碼的例行程序S950,以及對畫面層PL進行譯碼的例行程序S960構成。
在步驟S910,如果沒有檢測出下溢,就判斷為“否”,處理進入序列結束檢測例行程序#700。而在判定為“是”的情況下,在步驟S920設定輸出圖像。
然后,在步驟S930持續對輸入流進行檢索,直到發現I畫面或P畫面。一旦發現I畫面或P畫面中的某一個,處理就進入步驟S940。
在步驟S940,在畫面層PL譯碼后處理進入步驟S950。
在步驟S950,對片層SL進入譯碼。
然后,在步驟S960,對畫面層PL進行譯碼。其后,處理進入Vsd生成/初始化例行程序#120的步驟S60,執行休眠處理。
作為上述處理的結果,在本例中的處理如圖25、圖26的時序圖所示。
圖25及圖26表示從電影素材的24P的隔行掃描流IS切換為30P的隔行掃描流IS時,流的到達遲緩,發生下溢的情況的例子。圖25中表示30P的隔行掃描層IS的到達延緩的情況,圖26表示24P的隔行掃描流IS的最后的P畫面的片層SL到達遲緩的情況。
首先對圖25所示的情況加以敘述。在圖像顯示期間T0~T5,表示出對第4實施形態說明的24P隔行掃描流IS的3∶2下拉處理(T0~T5)。從圖像顯示期間T9以下,表示對第1實施形態說明的30P隔行掃描流IS的處理。
在期間T6~T7,表示出尚未檢測出下一個流的狀態。也就是以在期間T5開始的B畫面B8的片層SL的譯碼,經過期間T6及T7尚未完成,當作檢測出下溢。
在T7期間,由于下一顯示還是24P流(P9),在幀速率修正器進行3∶2下拉處理。
在期間T8,在下溢控制器24檢測出下溢的時刻中止B8畫面的譯碼,進行對下一I畫面或P畫面的搜索。又同時設定輸出圖像,以立即顯示譯碼的I畫面或P畫面。這時,從期間T8結束到期間T9開始,I畫面的首部的解析結束,進行片層SL的譯碼。
借助于此,即使在通常的隔行掃描流IS間的無縫再現、即從24P到30P的再現中途中斷的情況下,也就是流中途中斷的情況下,也能夠平滑地再現。
如上所述,在本實施形態中檢測出下溢的時刻,對下一個I畫面或P畫面進行搜索。在下溢產生于同一流的譯碼中的情況下,可以利用搜索下一個P畫面的方法把下溢引起的圖像再現中斷時間抑制于最小限度。這是因為在視頻流STV中P畫面P比I畫面排列間隔更密。
又在下一畫面是I畫面的情況下,也還是能夠把下溢引起的圖像再現中斷時間抑制于最小限度。這是因為如果I畫面為發生下溢后首先出現的畫面數據,則沒有必要特地搜索時間上排列于I畫面之后的該P畫面。又,即使視頻流STV是例如包含隔行掃描流IS與逐行掃描流PS的混合編排流,或者即使是隔行掃描流IS也是幀速率不同的流構成的混合編排流,在該不同的流之間進行切換前片刻發生下溢的情況下,也能夠利用搜索I畫面的方法進行流的切換而沒有任何問題。
工業應用性如上所述,本發明能夠有效地使用于數字廣播和DVD等媒體上記錄的數字式內容的譯碼裝置上。
權利要求
1.一種譯碼裝置,對具有不同幀速率的多個流混合的視頻流以規定的時序譯碼后進行無縫再現,其特征在于,具備在對所述多個流進行譯碼之前提取各幀速率的幀速率提取手段,以及根據所述提取的幀速率決定對所述視頻流的片層進行譯碼的時序的譯碼控制手段,以所述決定的時序對所述視頻流進行譯碼,即使是在該視頻流中向具有不同的幀速率的流切換時,也能夠無縫再現。
2.根據權利要求1所述的譯碼裝置,其特征在于,所述幀速率提取手段包含根據所述譯碼時序對所述視頻流進行解析,將其分離為首部信息與壓縮數據的流解析手段。
3.根據權利要求2所述的譯碼裝置,其特征在于,所述譯碼控制手段根據所述首部信息,相應于所述視頻流中所包含的所述多個流的各流速率使由所述視頻流的顯示形式決定的垂直同步信號延遲規定的時間,從而生成規定所述譯碼時序的譯碼時序信號。
4.根據權利要求3所述的譯碼裝置,其特征在于,所述規定的時間比所述垂直同步信號的一個周期短。
5.根據權利要求4所述的譯碼裝置,其特征在于,所述規定的時間是所述垂直同步信號的半個周期。
6.根據權利要求1所述的譯碼裝置,其特征在于,所述譯碼手段在對壓縮數據的片層進行譯碼之后接著對后續畫面的畫面層進行譯碼。
7.根據權利要求3所述的譯碼裝置,其特征在于,所述譯碼控制手段包含對視頻流的隔行掃描流交互屏蔽所述譯碼時序信號,對視頻流的逐行掃描流將所述譯碼時序信號原封不動輸出的譯碼時序修正手段。
8.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在所述視頻流從隔行掃描流切換為逐行掃描流的遷移中將所述譯碼時序信號加以屏蔽,使隔行掃描流的顯示結束。
9.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在所述視頻流從隔行掃描流切換為逐行掃描流的遷移中不將所述譯碼時序信號加以屏蔽,接著該逐行掃描流的最后畫面,對該隔行掃描流的第1畫面進行譯碼。
10.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在譯碼時所述視頻流不處于遷移狀態的情況下,把表示該視頻流的遷移狀態的多值的遷移狀態參數設定為第1規定值,在所述視頻流從隔行掃描流遷移到逐行掃描流,即幀速率碼從小于7的數值變成7時,把所述遷移狀態參數設定為第2規定值,在所述視頻流從逐行掃描流遷移到隔行掃描流,即幀速率碼從7變成小于7的數值時,把所述遷移狀態參數設定為第3規定值,在接著的譯碼時刻把所述遷移狀態參數選定為第1規定值。
11.根據權利要求10所述的譯碼裝置,其特征在于,所述譯碼控制手段在所述視頻流為隔行掃描流,從頂場起依序對照視像顯示奇偶性進行視像顯示時,將所述譯碼時序信號的頂場加以屏蔽,在從底場起依序對照視像顯示奇偶性進行視像顯示時,將所述譯碼時序信號的底場加以屏蔽。
12.根據權利要求11所述的譯碼裝置,其特征在于,用具有2個數值的屏蔽信號parity_mask規定將所述譯碼時序信號頂場與底場中的哪一個加以屏蔽。
13.根據權利要求12所述的譯碼裝置,其特征在于,所述譯碼控制手段在parity_mask與視像顯示奇偶性不相等,所述視頻流的幀速率碼小于7,并且參數top_field_first等于視像顯示奇偶性的情況下,使parity_mask反轉,進行奇偶性修正。
14.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在譯碼開始時通常把規定該譯碼控制手段的初始狀態的具有兩個數值的初始狀態參數設定為第1值。
15.根據權利要求14所述的譯碼裝置,其特征在于,所述譯碼控制手段在所述初始狀態參數為第1值的情況下按照畫面層、片層、畫面層的順序對后續流的第1畫面進行譯碼。
16.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在譯碼開始時,通常在設定所述視頻流是逐行掃描流之后執行休眠處理。
17.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在所述視頻流從24幀的隔行掃描流切換為逐行掃描流和30幀的隔行掃描流中的某一個的第1遷移發生時,以及在與第1遷移時相反的方向進行視頻信號流的切換的第2遷移時,進行幀速率修正,在3∶2下拉時,把規定所述流的奇偶性的2值的參數從一個數值設定為另一個數值,進行奇偶性修正。
18.根據權利要求15所述的譯碼裝置,其特征在于,所述畫面層包含序列首部、GOP首部及畫面首部,所述片層包含片層首部以下的位流,以所述畫面層和所述片層構成一個圖像。
19.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在對所述畫面層進行譯碼時檢測出sequence_end時結束譯碼處理,在檢測出所述視頻流的sequence_end時按照畫面層、片層、畫面層的順序進行譯碼之后,執行休眠處理。
20.根據權利要求14所述的譯碼裝置,其特征在于,所述譯碼控制手段在所述初始狀態參數為第1值的情況下不進行輸出圖像設定。
21.根據權利要求7所述的譯碼裝置,其特征在于,所述譯碼控制手段在前面的譯碼時刻進行的譯碼處理沒有結束的下溢情況下,在譯碼時刻首先顯示已經譯碼的I畫面或P畫面。
22.根據權利要求17所述的譯碼裝置,其特征在于,所述譯碼控制手段在下溢時,而且下溢是在B畫面發生的情況下,接著下一個I畫面及P畫面中的某一個的畫面層及片層的譯碼,依序對后續的畫面層進行譯碼之后實施休眠處理。
全文摘要
本發明涉及將具有不同幀速率的多種流(隔行掃描方式和逐行掃描方式的)混合的視頻流(STv)以規定的譯碼時序(Vmc)進行譯碼后無縫再現的譯碼裝置(VDA),該裝置具備在對多個流(IS、PS)進行譯碼之前提取各幀速率的流解析器(Ddv、2),以及根據所提取的幀速率決定對視頻流(STv)的片層(SL)進行譯碼的時序(Vmc)的視頻譯碼控制部(CDV)。以所決定的時序(Vmc)對視頻流(STv)進行譯碼,即使是在視頻流(STv)中向具有不同的幀速率的流(IS、PS)切換時,也能夠無縫再現。
文檔編號H04N7/24GK1297653SQ00800451
公開日2001年5月30日 申請日期2000年3月29日 優先權日1999年3月31日
發明者后藤昌一, 中谷信太郎 申請人:松下電器產業株式會社