TWI610560B - 控制位元流解碼的方法及相關之位元流解碼電路 - Google Patents

控制位元流解碼的方法及相關之位元流解碼電路 Download PDF

Info

Publication number
TWI610560B
TWI610560B TW105114168A TW105114168A TWI610560B TW I610560 B TWI610560 B TW I610560B TW 105114168 A TW105114168 A TW 105114168A TW 105114168 A TW105114168 A TW 105114168A TW I610560 B TWI610560 B TW I610560B
Authority
TW
Taiwan
Prior art keywords
picture
discardable
decoding
discarding
bit stream
Prior art date
Application number
TW105114168A
Other languages
English (en)
Other versions
TW201740735A (zh
Inventor
楊雅婷
童怡新
Original Assignee
晨星半導體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 晨星半導體股份有限公司 filed Critical 晨星半導體股份有限公司
Priority to TW105114168A priority Critical patent/TWI610560B/zh
Priority to US15/341,123 priority patent/US20170324967A1/en
Publication of TW201740735A publication Critical patent/TW201740735A/zh
Application granted granted Critical
Publication of TWI610560B publication Critical patent/TWI610560B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本發明提供一種控制位元流解碼的方法及相關之位元流解碼電路。該位元流包括複數個畫面,而該方法包含:根據至少一先前畫面的一解碼時間產生一效能指標;根據該效能指標產生一棄置決策,其中該棄置決策指出是否需要棄置畫面;以及,根據該棄置決策決定是否棄置一目前畫面。

Description

控制位元流解碼的方法及相關之位元流解碼電路
本發明係關於一種控制位元流解碼的方法及相關之位元流解碼電路,尤指一種在播放視訊時動態評估解碼效能並據以適應性地決定是否棄置部份畫面以維持播放流暢的方法及相關之位元流解碼電路。
播放視訊已經成為現代電子產品最重要的功能之一。視訊是由多個畫面形成的;為方便傳輸儲存,各畫面會被編碼(包括壓縮)並集合至一位元流中,播放視訊就是要由位元流中解碼(包括解壓縮)出各畫面。不過,解碼需要耗用電子產品的系統資源,包括功率、記憶體頻寬以及處理器使用量(usage)等等。在以一電子產品播放視訊時,若遭遇到較難解碼的畫面(例如內容較為繁複多變的畫面),或該電子產品同時要提供系統資源給一或多個其他應用程式或背景服務,可供解碼的系統資源就會窘迫不足,降低解碼效能,無法按照正常播放速度及時解碼出應播放的畫面,並影響播放流暢度。
本發明的目的之一係提供一種控制位元流解碼的方法,該位元流包含複數個畫面,該方法包含:根據至少一先前畫面的一解碼時間產生一效能指標;根據該效能指標產生一棄置決策,其中該棄置決策指出是否需要棄置畫面;以及,根據該棄置決策決定是否棄置一目前畫面。
本發明的目的之一係提供一位元流解碼電路,包括一效能監測器、一棄置決策器與一解碼器。效能監測器根據至少一先前畫面的一解碼時間產生一效能指標;棄置決策器根據該效能指標產生一棄置決策,其中該棄置決策指出是否需要棄置畫面;解碼器根據該棄置決策決定是否棄置一目前畫面。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉較佳範例,並配合所附圖式,作詳細說明如下:
c1-c3‧‧‧序列
T0‧‧‧週期
0-12‧‧‧畫面
t0-t10、t4’-t10’‧‧‧時點
200‧‧‧電視控制晶片
201‧‧‧分工器
202‧‧‧位元流暫存器
203‧‧‧剖析器
204‧‧‧畫面可棄偵測器
205‧‧‧效能監測器
206‧‧‧棄置決策器
207‧‧‧圖框緩衝器
210‧‧‧位元流解碼電路
220‧‧‧解碼器
230‧‧‧控制單元
300、400、500、600‧‧‧流程
301-308、401-404、501-504、601-603‧‧‧步驟
b1-b3‧‧‧位元流
第1圖舉例說明視訊播放的各種情形。
第2圖示意的是根據本發明一範例的位元流解碼電路。
第3圖示意的是根據本發明一範例產生效能指標與棄置決策的流程。
第4圖示意的是根據本發明一範例產生可棄結果的流程。
第5圖示意的是根據本發明另一範例產生可棄結果的流程。
第6圖示意的是根據本發明一範例決定是否棄置目前畫面的 流程。
第7a至7c圖舉例說明不同架構的位元流。
請參考第1圖,其所示意的是視訊播放的不同情形。假設該視訊中包括畫面0至10;在理想情形下,畫面0至10應分別在規律間隔週期T0的時點t0至t10依序播放給使用者,如序列c1所示;舉例而言,若該視訊是每秒60圖框的視訊,則相鄰兩時點t0與t1間、t2與t1間的間隔週期T0應是1/60秒。然而,若在時點t3之後發生了解碼效能窘迫,則畫面4至10會分別延遲到時點t4’至t10’才能播放,無法及時於時點t4至t10呈現,如序列c2所示。因此,使用者會察覺到視訊播放卡頓而不順暢。
為了減輕解碼效能窘迫對播放流暢度的影響,本發明會計算一效能指標以反映解碼效能,並在解碼效能窘迫時適當地棄置一些畫面不予解碼(亦不予播放),以減輕對系統資源的需求,讓其他未被棄置的畫面能順利解碼並及時呈現。如序列c3的例子所示,一旦在時點t3後偵測到解碼效能窘迫,本發明可棄置後續的部份畫面,例如畫面5、7與9。因為棄置了這些畫面不用解碼,即使解碼所需的系統資源短缺,還是足以順利地在時點t6、t8與t10前解碼出其餘畫面6、8與10,使畫面6、8與10可及時在時點t6、t8與t10播出。相較於序列c2,在序列c3中,由於畫面6、8與10仍可及時呈現,故可有效降低解碼效能窘迫 對播放流暢度的影響。
請參考第2圖,其所示意的是根據本發明一範例的位元流解碼電路210,其可設置於一電視控制晶片(或是一圖形處理晶片)200中,配合電視控制晶片200中的一分工器(demux)201,並耦接一位元流暫存器202與一圖框緩衝器207。位元流解碼電路210中可包括一解碼器220、一剖析器203、一畫面可棄偵測器204、一效能監測器205與一棄置決策器206。例如,解碼器220可以是一硬體解碼電路;剖析器203、畫面可棄偵測器204、效能監測器205與棄置決策器206則可由一控制單元230(如一邏輯電路)執行軟體或韌體程式碼所實現。
連同第2圖,請一併參考第3圖至第6圖。效能監測器205與棄置決策器206的運作範例可用第3圖中的流程300說明,畫面可棄偵測器204的運作範例可用第4圖中的流程400與第5圖中的流程500說明,解碼器220的運作範例則可用第6圖中的流程600說明。
在電視控制晶片200中,分工器201用以將一影音位元流分為音訊位元流與視訊位元流,位元流暫存器202則可暫存視訊位元流;其中,視訊位元流包括有複數個已編碼畫面(未圖示)。剖析器203與解碼器220可存取位元流暫存器202中的視訊位元流。其中,剖析器203可存取各個已編碼畫面的標頭並予以剖析,並在開始剖析一畫面的標頭時產生一剖析開始訊號;根據標頭剖析的結果,剖析器203可為該畫面產生一對應的畫面 可棄參考資訊(詳後說明)。解碼器220可存取各個已編碼畫面,並根據一可棄結果與一棄置決策決定是要解碼一已編碼畫面以供播放,或是要棄置該已編碼畫面不予解碼(稍後以流程600說明);若解碼器220決定要解碼一畫面,則會在解碼完成時產生一解碼完成訊號,並將解碼完成的畫面暫存至圖框緩衝器207,再由圖框緩衝器207輸出至螢幕(未圖示),以呈現該畫面。若一已編碼畫面被解碼器220解碼,效能監測器205會根據該畫面對應的剖析開始訊號與解碼完成訊號計算該畫面的解碼時間(稍後以流程300說明),並據以產生一效能指標。
效能監測器205、棄置決策器206與畫面可棄偵測器204的運作則可概述如下。當剖析器203剖析一目前畫面的標頭並產生對應的畫面可棄參考資訊,效能監測器205會根據該目前畫面的至少一先前畫面的解碼時間產生一效能指標,棄置決策器206則根據該效能指標產生一棄置決策(稍後以流程300說明);其中,先前畫面是指視訊位元流中排列在該目前畫面之前的畫面,該棄置決策則指出是否需要棄置畫面。另一方面,畫面可棄偵測器204則根據該目前畫面對應的該畫面可棄參考資訊產生一對應的可棄結果(詳後以流程400、500舉例說明),其中該可棄結果指出該目前畫面是否可棄。然後,解碼器220便會根據該棄置決策與該可棄結果決定是否棄置該目前畫面而不予解碼。
如第3圖之流程300所示,效能監測器205與棄置決策器206的運作可用下列步驟說明。
步驟301:回應於剖析器203開始剖析一畫面P(c)(未圖示)之標頭時所產生的剖析開始訊號,效能監測器205開始計時。
步驟302:若由解碼器220收到解碼完成訊號,效能監測器205進行至步驟303,否則進行至步驟305。若收到解碼完成訊號,代表解碼器220已解碼畫面P(c)。
步驟303:回應於解碼器220完成解碼該畫面P(c)所產生的解碼完成訊號,效能監測器205結束計時,以產生該畫面P(c)對應的解碼時間T(c)(未圖示)。
步驟304:根據該畫面P(c)對應的解碼時間T(c),效能監測器205計算至少一先前畫面之解碼時間的移動平均作為效能指標I(c)(未圖示)。舉例而言,假設移動平均的畫面數為3,並假設在畫面P(c)之前解碼器220已依序解碼兩畫面P(a)與P(b),且棄置決策器206也已產生畫面P(a)與P(b)的解碼時間T(a)與T(b),則在解碼完畫面P(c)後,效能指標I(c)可計算為{T(a)+T(b)+T(c)}/3,或是{w1*T(a)+w2*T(b)+w3*T(c)}/(w1+w2+w3),其中w1、w2與w3為加權係數。
一範例中,移動平均的畫面數可以等於圖框緩衝器207中暫存的畫面數,或是根據圖框緩衝器207中暫存的畫面數來設定,例如說是隨暫存畫面數增加而增加移動平均的畫面數。當要播放一視訊時,位元流解碼電路210會根據該視訊的解析度(各畫面的像素數目)等資訊決定要為圖框緩衝器207配置幾個 畫面的暫存空間;例如,解析度越高,暫存畫面數也可以隨之設定為較多。假設暫存畫面數為3,則當要播放某一畫面時,播放順序在該畫面之後的兩後續畫面也已經被解碼並暫存至圖框緩衝器207;亦即,即使該畫面的解碼時間較長,若該兩後續畫面的解碼時間夠短,則此3畫面依然能依照理想時序及時播出。因此,每3個畫面的平均解碼時間可當作「是否能及時播出」的參考指標。移動平均的畫面數也可以是一常數。
或者,解碼畫面P(c)後的效能指標I(c)也可計算為{b1*I(b)+b2*T(c)}/(b1+b2),其中b1與b2為加權係數,I(b)則是先前在對畫面P(b)時進行步驟304時產生的效能指標。
步驟305:由步驟302轉至此步驟305代表畫面P(c)並未被解碼,故效能監測器205會將效能指標維持不變。假設在畫面P(c)之前解碼器220已解碼畫面P(b)且棄置決策器206已產生畫面P(b)的對應效能指標I(b),則在對畫面P(c)進行步驟305時,其效能指標I(c)會等於先前效能指標I(b)。
步驟306、307與308:棄置決策器206接收效能監測器205產生的效能指標I(c),並在步驟306判斷效能指標I(c)是否超出一預設範圍。若效能指標I(c)超出該預設範圍,棄置決策器206進行至步驟307,產生指出需要棄置畫面之棄置決策;若否,棄置決策器206會進行至步驟308,產生指出不需棄置畫面之棄置決策。一範例中,此預設範圍是以理想的相鄰畫面間隔週期T0(第1圖)為上界的範圍;亦即,若效能指標大於週期 T0,代表發生解碼效能窘迫,單一畫面的平均解碼時間已超過週期T0而無法及時播放,故產生「需要棄置」之棄置決策。反之,若效能指標小於週期T0,代表未發生解碼效能窘迫,單一畫面的平均解碼時間足以支援理想播放,故產生「不需棄置」之棄置決策。
由流程300可知,效能監測器205會根據畫面解碼時間動態地產生效能指標,棄置決策器206則會適應性地根據效能指標決定是否需要棄置畫面,以在解碼效能窘迫時棄置某些畫面來維持視訊播放的流暢度。不過,即使棄置決策器206已決定需要棄置畫面,由於畫面被編碼至視訊位元流時會相互參照,故還需由畫面可棄偵測器204根據各畫面間相互參照的關係來一一判定每一個單一畫面決定是否可棄置。第7a圖至第7c圖便舉例示意了不同的相互參照關係。
在第7a圖中,一視訊位元流b1包括畫面0至6,播放時是依序呈現畫面0、1、2、3、4、5與6;其中,畫面0為節點畫框(intra frame),畫面2、4則為預測畫框(predictive frame),畫面1、3、5則為雙向預測畫框(bi-predictive frame)。其中,畫面2係參照畫面0所編碼;亦即,若要解碼畫面2,需要先解碼畫面0。同理,畫面4參照畫面2,畫面6參照畫面4。畫面1係參照畫面0與2所編碼,亦即,若要解碼畫面1,需要先解碼畫面0與2,再根據畫面0與2解碼畫面1。同理,畫面3參照畫面2與4,畫面5參照畫面4與6。根據參照關係,畫面0、 2、4與6為層級0之畫面,畫面1、3、5則為層級1之畫面。若棄置低層級(層級0)之畫面2不予解碼,則高層級(層級1)的畫面1與3也無法被解碼;相對地,若棄置高層級的畫面1,則不會影響低層級畫面的解碼。
在第7b圖的位元流b2中,畫面3參照畫面0,畫面1與2均參照畫面0與3,畫面6參照畫面3,畫面4與5均參照畫面3與6。因此,畫面0、3、6、9屬於層級0,畫面1、2、4、5、7、8屬於層級1。在第7c圖的位元流b3中,畫面4參照畫面0,畫面2參照畫面0與4,畫面1參照畫面0與2,因此,畫面0、4、8、12為層級0,畫面2、6、10為層級1,畫面1、3、5、7、9、11為層級2。
一畫面的標頭會記載與該畫面參照關係相關的資訊,而當剖析器203剖析一畫面的標頭時,會將該相關資訊反映於該畫面對應的畫面可棄參考資訊。舉例而言,在某些視訊位元流中,各畫面的標頭會記載各該畫面的時序識別(temporal ID),指示各該畫面的層級;針對這些視訊位元流,剖析器203與畫面可棄偵測器204的運作可用流程400(第4圖)說明,其包括下列步驟:
步驟401:繼流程300中提及的畫面P(c)之後,視訊位元流中排列於後的次一畫面P(d)成為目前畫面。當剖析器203剖析該畫面P(d)之標頭時並產生對應的畫面可棄參考資訊時,剖析器203會以畫面P(d)的時序識別做為該畫面可棄參考資 訊,並傳送至畫面可棄偵測器204。
步驟402、403與404:在步驟402,畫面可棄偵測器204判斷畫面P(d)的時序識別是否符合一預設條件;若時序識別符合該預設條件,畫面可棄偵測器204進行至步驟403,產生指出該畫面P(d)為可棄之可棄結果;反之,若時序識別不符合該預設條件,畫面可棄偵測器204則進行至步驟404,產生指出該畫面P(d)為不可棄之可棄結果。一範例中,該預設條件可以是指視訊位元流的最高層級,以便將最高層級的畫面判斷為可棄,因為棄置高層級畫面不會影響低層級畫面的解碼。
以位元流b1為例(第7a圖),預設條件可以是層級1;亦即,若畫面P(d)為層級1的畫面1、3或5,則畫面可棄偵測器204會因為畫面P(d)的層級符合層級1而判定畫面P(d)為可棄。反之,若畫面P(d)為位元流b1中的畫面0、2、4或6,則畫面可棄偵測器204會因為畫面P(d)的層級不符合層級1而判定畫面P(d)為不可棄。類似地,以位元流b2為例(第7b圖),預設條件也可以是層級1;亦即,若畫面P(d)為層級1的畫面1、2、4、5、7或8,則畫面可棄偵測器204會在可棄結果中判定畫面P(d)為可棄。反之,若畫面P(d)為位元流b2中的層級0畫面0、3、6或9,則畫面可棄偵測器204會因為畫面P(d)的層級不符合層級1而判定畫面P(d)為不可棄。
對第7c圖中的位元流b3而言,步驟402的預設條件則可以是層級2;亦即,若畫面P(d)為位元流b3中的畫面1、 3、5、7、9或11,則畫面可棄偵測器204會因為畫面P(d)的層級符合層級2而在可棄結果中指示畫面P(d)為可棄。若畫面P(d)為位元流b3中的畫面0、2、4、6、8、10或12,由於其層級為0或1,畫面可棄偵測器204會因為畫面P(d)的層級不符合層級2而在可棄結果中指示畫面P(d)為可棄。
針對第7c圖中的位元流b3,預設條件的另一範例是包括最高的兩層級,即層級2與1。亦即,若畫面P(d)的層級符合層級2或1,例如是畫面1、2、3、5、6、7、9、10或11,就會被判定為可棄畫面;反之,若畫面P(d)的層級為0而不符合層級2或1,例如是畫面0、4、8或12,則會被判定為不可棄畫面。
除了畫面標頭記載有時序識別的視訊位元流,在另一些視訊位元流中,各畫面的標頭會包括一參考畫面指標,用以指出各該畫面是否為非參考(non-reference)畫面。若一畫面為非參考畫面,代表該畫面不是其他畫面的參考畫面,不會被其他畫面參照;換句話說,即使棄置該畫面不予解碼,也不會影響其他畫面的解碼。例如,視訊位元流b1中的畫面1、3與5,視訊位元流b2中的畫面1、2、4、5、7與8,以及視訊位元流b3中的畫面1、3、5、7、9與11等皆不是參考畫面。針對這類在各畫面標頭載有參考畫面指標的視訊位元流,剖析器203與畫面可棄偵測器204的運作可用流程500(第5圖)說明如下。
步驟501:繼流程300中提及的畫面P(c)之後,視 訊位元流中排列於後的次一畫面P(d)成為目前畫面。當剖析器203剖析該畫面P(d)之標頭時並產生對應的畫面可棄參考資訊時,剖析器203會以畫面P(d)的參考畫面指標做為該畫面可棄參考資訊,並傳送至畫面可棄偵測器204。
步驟502、503與504:在步驟502,畫面可棄偵測器204判斷畫面P(d)的參考畫面指標是否指出畫面P(d)不為參考畫面;若該參考畫面指標指出畫面P(d)不為參考畫面時,畫面可棄偵測器204進行至步驟503,產生指出該畫面P(d)為可棄之可棄結果;反之,若該參考畫面指標指出該畫面P(d)為參考畫面時,畫面可棄偵測器204進行至步驟504,產生指出該目前畫面為不可棄之可棄結果。
當畫面可棄偵測器204根據畫面P(d)的畫面可棄參考資料產生對應的可棄結果(如流程400或500),且棄置決策器206根據效能指標I(c)(延續流程300之說明)產生棄置決策時,解碼器220便會根據該棄置決策與該可棄結果決定是否棄置畫面P(d),如第6圖之流程600所示,其包括步驟601、602與603。在步驟601,解碼器220判斷棄置決策是否指出需要棄置畫面且可棄結果是否指出目前畫面(例如P(d))為可棄。若棄置決策指出需要棄置畫面,且可棄結果指出目前畫面為可棄,則解碼器220進行至步驟602,棄置目前畫面不予解碼;反之則進行至步驟603,開始解碼目前畫面。
以下舉例說明本發明技術的功效。在播放一個包括 8522張畫面、理想播放速度為每秒60圖框的視訊時,假設約有2/3的時間發生解碼效能窘迫,若未採用本發明技術,則能及時播放的畫面僅4142張,使視訊播放無法平順流暢。相較之下,若採用本發明技術,則會棄置1743張畫面,但其餘的6779張畫面均能及時播放,可有效減輕效能窘迫對視訊播放流暢度的影響。
一範例中,畫面可棄偵測器204可以有複數個用以決定目前畫面是否可棄之判斷準則,各判斷準則關聯於一數值區間,並根據效能指標所屬的數值區間選用關聯的判斷準則。例如,若代表單一畫面解碼時間之效能指標大於週期T0(第1圖)但小於2倍週期2*T0(即屬於一第一數值區間),畫面可棄偵測器204根據目前畫面時序識別的層級是否符合最高層級(第一判斷準則)來決定目前畫面是否可棄;若代表單一畫面解碼時間之效能指標大於2倍週期2*T0(即屬於一第二數值區間),則畫面可棄偵測器204根據目前畫面時序識別的層級是否符合最高層級或次高層級(第二判斷準則)來決定目前畫面是否可棄。以第7c圖的視訊位元流b3為例,若效能指標在第一數值區間,畫面可棄偵測器204會將最高層級的畫面1、3、5、7、9與11等判定為可棄,平均每兩張畫面棄置一張(即每四張畫面棄置兩張);若解碼效能又更進一步短缺而使效能指標升高至第二數值區間,畫面可棄偵測器204會將最高層級與次高層級的畫面1、2、3、5、7、9、10與11皆判定為可棄,以便棄置更多畫面,平均每四張 畫面棄置三張。
一範例中,不限於時序識別與參考畫面指標,畫面可棄偵測器204也可根據目前畫面標頭中的其他資訊決定目前畫面是否可棄。在某些視訊位元流中,各畫面的標頭未包括時序識別或參考畫面指標,但會記載各該畫面所參照的畫面,可作為各該畫面的畫面可棄參考資料。可棄偵測器204可根據視訊位元流中複數張初始畫面判斷各畫面相互參照的態樣,據以預測後續各畫面的參照關係,例如第7a圖位元流b1中是由畫面(2*i+1)參照畫面(2*i)與畫面(2*i+2)。如此,可棄偵測器204就可將畫面(2*i+1)判定為可棄。相關技術詳情可參考申請號104139947之台灣專利申請。
一範例中,剖析器203為目前畫面提供的畫面可棄資訊不僅可以是單一種類資訊(如時序識別或參考畫面指標),也可包含多種資訊,而畫面可棄偵測器204可綜合這些資訊來判定目前畫面是否可棄。例如,畫面可棄資訊可包括時序識別與目前畫面的播放順序,畫面可棄偵測器204則根據時序識別是否符合一預設層級與播放順序是否符合一預設規律綜合判定目前畫面是否可棄。以第7b圖的位元流b2為例,畫面可棄偵測器204可根據「目前畫面的層級是否為最高層級」與「目前畫面是否為播放順序上的畫面(3*i+1)」判斷目前畫面是否可棄;據此,若目前畫面為層級1的畫面1、4或7,則判定為可棄;若目前畫面為層級1的畫面2、5或8,或是層級0的畫面0、3、6或9,則 判定為不可棄。
一範例中,效能監測器205不僅可根據先前畫面解碼時間的移動平均來計算效能指標,也可根據功率、省電模式設定、解碼負載、記憶體頻寬與處理器使用量等資訊中的一或多個來計算。例如,當解碼器220解碼畫面P(c)之後,效能監測器205可向解碼器220取得解碼所用的記憶體頻寬M(c),並連同先前兩畫面P(a)與P(b)解碼使用的記憶體頻寬M(a)與M(b),將效能指標I(c)計算為e1*{T(a)+T(b)+T(c)}/3+e2*{M(a)+M(b)+M(c)}/3,亦即,結合記憶體頻寬的移動平均與解碼時間的移動平均以計算效能指標;其中,e1與e2為組合係數。
一範例中,當解碼器220要棄置目前畫面P(d)時(第6圖步驟602),解碼器220係使其在位元流暫存器202中的指標指向視訊位元流中次一個待解碼畫面(例如P(e),未圖示),以跳過目前畫面而不予解碼。
在對畫面P(c)進行第3圖流程300時,若畫面P(c)被棄置(未被解碼)而要進行至步驟305,步驟305的另一範例是由效能監測器205為未解碼畫面P(c)產生一個推測的解碼時間T’(c),並計算解碼時間T’(c)與位元流中複數先前畫面(如P(a)與P(b))之解碼時間(如T’(a)與T’(b))的移動平均(如{T’(a)+T’(b)+T’(c)}/3),以作為效能指標I(c);其中,各畫面(P(a)、P(b)、P(c))的解碼時間(T’(a)、T’(b)、T’(c))可以是由步驟303實際計時產生的實測解碼時間(若該畫面有被解碼), 或是推測的解碼時間(若該畫面被棄置而未被解碼)。
在為未解碼畫面P(c)產生推測的解碼時間T’(c)時,效能監測器205可統計畫面P(c)之前複數個已解碼畫面的實測解碼時間做統計與分類,並判斷畫面P(c)屬於那一類,以根據該類的實測解碼時間得知畫面P(c)的推測解碼時間。舉例而言,效能監測器205可針對100張已解碼的畫面統計「各畫面解碼前之位元數(耗用的記憶空間)」與「實測解碼時間」間的相關性,像是將解碼前位元數排序為前10大的已解碼畫面歸類於第一類,並以這10張已解碼畫面的平均解碼時間作為此第一類的解碼時間;再將解碼前位元數排序為次10大的已解碼畫面歸類於第二類,並以這10張已解碼畫面的平均解碼時間作為此第二類的解碼時間,以此類推。據此,效能監測器205就可根據畫面P(c)的解碼前位元數判斷出畫面P(c)屬於那一類,並以該類的解碼時間作為畫面P(c)的推測解碼時間。
總結來說,在播放視訊時,本發明可計算一效能指標以動態監測解碼效能,並在解碼效能窘迫時適當地丟棄部份畫面,以使其他畫面能依照理想時序及時呈現,避免效能窘迫所導致的播放卡頓不順。
綜上所述,雖然本發明已以較佳範例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者 為準。
300‧‧‧流程圖
301-308‧‧‧步驟

Claims (12)

  1. 一種控制位元流解碼的方法,該位元流包含複數個畫面,該方法包含:根據至少一先前畫面的一解碼時間產生一效能指標(performance indicator);根據該效能指標產生一棄置決策(dropping decision),其中該棄置決策指出是否需要棄置畫面;剖析一目前畫面的一標頭以產生該目前畫面之一畫面可棄參考資訊;以及根據該畫面可棄參考資訊產生一可棄結果,其中該可棄結果指出該目前畫面是否可棄;以及根據該棄置決策與該可棄結果決定是否棄置該目前畫面。
  2. 如請求項1的方法,其中,根據該至少一先前畫面的該解碼時間產生該效能指標之步驟包含:回應於一剖析器開始剖析一畫面之標頭所產生之一剖析開始訊號開始計時;以及回應於一解碼器完成解碼該畫面所產生之一解碼完成訊號結束計時,以產生該畫面的該解碼時間。
  3. 如請求項1的方法,其中,根據該至少一先前畫面的該解 碼時間產生該效能指標之步驟包含:根據該畫面的該解碼時間,計算該至少一先前畫面之該解碼時間的移動平均(moving average)作為該效能指標。
  4. 如請求項1的方法,其中,根據該效能指標產生該棄置決策之步驟包含:當該效能指標超出一預設範圍時,產生指出需要棄置畫面之該棄置決策。
  5. 如請求項1的方法,其中該畫面可棄參考資訊為一時序識別(temporal ID),根據該目前畫面的該畫面可棄參考資訊產生該可棄結果之步驟包含:當該時序識別符合一預設條件時,產生指出該目前畫面為可棄之該可棄結果;以及當該時序識別不符合該預設條件時,產生指出該目前畫面為不可棄之該可棄結果。
  6. 如請求項1的方法,其中該畫面可棄參考資訊為一參考畫面指標,其中該參考畫面指標指出該目前畫面是否為參考畫面(reference frame),根據該目前畫面的該畫面可棄參考資訊產生該可棄結果之步驟包含:當該參考畫面指標指出該目前畫面不為參考畫面時,產生指 出該目前畫面為可棄之該可棄結果;以及當該參考畫面指標指出該目前畫面為參考畫面時,產生指出該目前畫面為不可棄之該可棄結果。
  7. 一位元流解碼電路,運用於一包含複數畫面的位元流;該位元流解碼電路包含:一效能監測器,根據至少一先前畫面的一解碼時間產生一效能指標;一棄置決策器,根據該效能指標產生一棄置決策,其中該棄置決策指出是否需要棄置畫面;一剖析器,用以剖析一目前畫面的一標頭以產生該目前畫面之一畫面可棄參考資訊;一畫面可棄偵測器,根據該畫面可棄參考資訊產生一可棄結果,其中該可棄結果指出該目前畫面是否可棄;以及一解碼器,根據該棄置決策與該可棄結果決定是否棄置該目前畫面。
  8. 如請求項7的位元流解碼電路,其中,該效能監測器根據該至少一先前畫面的該解碼時間產生該效能指標之運作包含:回應於該剖析器開始剖析一畫面之標頭所產生之一剖析開始訊號,開始計時;以及回應於該解碼器完成解碼該畫面所產生之一解碼完成訊號 結束計時,以產生該畫面的該解碼時間。
  9. 如請求項7的位元流解碼電路,其中,該效能監測器根據該至少一先前畫面的該解碼時間產生該效能指標之運作包含:根據該畫面的該解碼時間,計算該至少一先前畫面之該解碼時間的移動平均作為該效能指標。
  10. 如請求項7的位元流解碼電路,其中,該棄置決策器根據該效能指標產生該棄置決策之運作包含:當該效能指標超出一預設範圍時,產生指出需要棄置畫面之該棄置決策。
  11. 如請求項7的位元流解碼電路,其中該畫面可棄參考資訊為一時序識別,該畫面可棄偵測器根據該目前畫面的該畫面可棄參考資訊產生該可棄結果之運作包含:當該時序識別符合一預設條件時,產生指出該目前畫面為可棄之該可棄結果;以及當該時序識別不符合該預設條件時,產生指出該目前畫面為不可棄之該可棄結果。
  12. 如請求項7的位元流解碼電路,其中該畫面可棄參考資訊為一參考畫面指標,其中該參考畫面指標指出該目前畫面是否 為參考畫面,而該畫面可棄偵測器根據該目前畫面的該畫面可棄參考資訊產生該可棄結果之運作包含:當該參考畫面指標指出該目前畫面不為參考畫面時,產生指出該目前畫面為可棄之該可棄結果;以及當該參考畫面指標指出該目前畫面為參考畫面時,產生指出該目前畫面為不可棄之該可棄結果。
TW105114168A 2016-05-06 2016-05-06 控制位元流解碼的方法及相關之位元流解碼電路 TWI610560B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW105114168A TWI610560B (zh) 2016-05-06 2016-05-06 控制位元流解碼的方法及相關之位元流解碼電路
US15/341,123 US20170324967A1 (en) 2016-05-06 2016-11-02 Method for controlling bitstream decoding and associated bitstream decoding circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105114168A TWI610560B (zh) 2016-05-06 2016-05-06 控制位元流解碼的方法及相關之位元流解碼電路

Publications (2)

Publication Number Publication Date
TW201740735A TW201740735A (zh) 2017-11-16
TWI610560B true TWI610560B (zh) 2018-01-01

Family

ID=60244205

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105114168A TWI610560B (zh) 2016-05-06 2016-05-06 控制位元流解碼的方法及相關之位元流解碼電路

Country Status (2)

Country Link
US (1) US20170324967A1 (zh)
TW (1) TWI610560B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201204050A (en) * 2010-06-22 2012-01-16 Mediatek Inc Methods and signal processing apparatuses for processing an input bitstream
US20120331106A1 (en) * 2011-06-24 2012-12-27 General Instrument Corporation Intelligent buffering of media streams delivered over internet
TW201304551A (zh) * 2011-07-05 2013-01-16 Nokia Corp 用於視訊編碼及解碼之方法及裝置
CN104717509A (zh) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 一种视频解码方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201204050A (en) * 2010-06-22 2012-01-16 Mediatek Inc Methods and signal processing apparatuses for processing an input bitstream
US20120331106A1 (en) * 2011-06-24 2012-12-27 General Instrument Corporation Intelligent buffering of media streams delivered over internet
TW201304551A (zh) * 2011-07-05 2013-01-16 Nokia Corp 用於視訊編碼及解碼之方法及裝置
CN104717509A (zh) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 一种视频解码方法及装置

Also Published As

Publication number Publication date
TW201740735A (zh) 2017-11-16
US20170324967A1 (en) 2017-11-09

Similar Documents

Publication Publication Date Title
US10659847B2 (en) Frame dropping method for video frame and video sending apparatus
JP4402219B2 (ja) ビデオ・データ中のフラッシュ・フレームの検出および符号化
CN109660805B (zh) 解码播放中音视频同步优化方法、存储介质、设备及系统
US10362264B2 (en) Profile for frame rate conversion
JP2950376B2 (ja) ピクチャーデコーディング同期化回路及びその方法
KR101681176B1 (ko) 비디오 시스템에서 의미 기반 트릭 모드 플레이를 위한 방법
CN109168083B (zh) 一种流媒体实时播放方法及装置
JP2008271387A (ja) シーン変化検出装置、符号化装置及びシーン変化検出方法
JP2010245822A (ja) 動画像符号化装置および動画像符号化方法
KR20110063004A (ko) 키 프레임 추출 장치 및 방법과 이를 이용한 방송 녹화 장치 및 방법
JP2012070190A (ja) 符号化方法、復号化方法、符号化装置及び復号化装置
JP2008252262A (ja) 符号化装置及び動画像の変化点検出方法
TWI610560B (zh) 控制位元流解碼的方法及相關之位元流解碼電路
US7586426B2 (en) Image coding apparatus and method thereof
CN110300326B (zh) 一种视频卡顿的检测方法、装置、电子设备及存储介质
CN105307013B (zh) 一种快进播放视频帧选择方法
JP5046907B2 (ja) 記録装置、その制御方法、プログラム
JP2007150569A (ja) 画像復号装置、および画像復号方法
JP2003324690A (ja) 映像記録再生装置
TW201347552A (zh) 用於在一視訊編碼器產生旁側資訊以區分封包資料之方法及系統
CN103004185B (zh) 影像声音变换装置及影像声音变换方法
JP2008016100A (ja) 再生装置及び再生方法
JP4373283B2 (ja) 映像音声復号方法、映像音声復号装置、映像音声復号プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体
CN114245231B (zh) 一种多视频同步跳转方法、装置、设备及可读存储介质
CN115103209B (zh) 实现监控视频倍速回放的方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees