JP2012100162A - 画像デコード装置及びデコードプログラム - Google Patents

画像デコード装置及びデコードプログラム Download PDF

Info

Publication number
JP2012100162A
JP2012100162A JP2010247673A JP2010247673A JP2012100162A JP 2012100162 A JP2012100162 A JP 2012100162A JP 2010247673 A JP2010247673 A JP 2010247673A JP 2010247673 A JP2010247673 A JP 2010247673A JP 2012100162 A JP2012100162 A JP 2012100162A
Authority
JP
Japan
Prior art keywords
picture
decoding
decoded
storage area
data
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2010247673A
Other languages
English (en)
Inventor
Yusuke Kikuchi
祐介 菊地
Tomohiro Hasegawa
智宏 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2010247673A priority Critical patent/JP2012100162A/ja
Priority to CN2011100666057A priority patent/CN102469312A/zh
Priority to US13/052,357 priority patent/US8649617B2/en
Publication of JP2012100162A publication Critical patent/JP2012100162A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/005Reproducing at a different information rate from the information rate of recording
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】必要なメモリ容量を増大させることなく倍速再生時に滑らかな再生を行うことができる画像デコード装置及びデコードプログラムを提供する。
【解決手段】画像デコード装置は、予測符号化された符号化ストリームが入力され、前記符号化ストリームの各ピクチャを参照画像を参照しながらデコードしてデコードデータを出力するデコード部と、前記デコード部のデコードの制御並びに2画面分の前記参照画像、前記デコード部からの前記デコードデータ及び表示に用いる前記デコードデータを格納する4画面分の記憶領域を有するメモリ部のメモリ管理を行うものであって、倍速再生時に1画面期間において倍速数に応じた数のピクチャを前記デコード部にデコードさせると共に、倍速再生時に前記表示に用いる前記デコードデータが前記記憶領域に保持されるように前記4画面分の記憶領域間で格納されたデータの入れ替えを行う制御部とを具備する。
【選択図】図1

Description

本発明の実施形態は、画像デコード装置及びデコードプログラムに関する。
従来、ディジタル化された動画像信号は、記憶及び伝送に際して、MPEG(Moving Picture Experts Group)−2、MPEG−4、H.264やVC−1等の符号化方式を用いて符号化されることが多い。
画像デコード装置において、符号化されたストリームを倍速再生することがある。画像デコード装置は、符号化ストリームからデコードするピクチャを間引く(スキップする)ことで、倍速再生が可能である。例えば、2枚につき1枚のピクチャのみをデコードして表示出力することで、2倍速再生が可能である。
ところが、P,Bピクチャをデコードするためには、その参照画像であるI,Pピクチャをデコードする必要がある。従って、Bピクチャについては倍速数に応じて適宜スキップ可能であるが、I,Pピクチャについては、スキップに際して参照関係を考慮する必要がある。
動き補償予測符号化では、動きが大きい画像については、両方向予測符号化するよりも片方向予測符号化した方が符号量が低減されることがある。このような場合には、符号化ストリームにおいてBピクチャが存在せずに、Pピクチャが連続することがある。Pピクチャをスキップすると以降のPピクチャは復号化できないので、倍速再生時には、倍速数に応じて連続的にPピクチャをデコードし、連続的にPピクチャをスキップさせることになる。従って、Pピクチャが連続したストリームを倍速再生する場合には、画像がぎくしゃくした動きになってしまうことがある。
特開平10−84558号公報
本発明の実施形態は、必要なメモリ容量を増大させることなく倍速再生時に滑らかな再生を行うことができる画像デコード装置及びデコードプログラムを提供することを目的とする。
実施形態の画像デコード装置は、予測符号化された符号化ストリームが入力され、前記符号化ストリームの各ピクチャを参照画像を参照しながらデコードしてデコードデータを出力するデコード部と、前記デコード部のデコードの制御並びに2画面分の前記参照画像、前記デコード部からの前記デコードデータ及び表示に用いる前記デコードデータを格納する4画面分の記憶領域を有するメモリ部のメモリ管理を行うものであって、倍速再生時に1画面期間において倍速数に応じた数のピクチャを前記デコード部にデコードさせると共に、倍速再生時に前記表示に用いる前記デコードデータが前記記憶領域に保持されるように前記4画面分の記憶領域間で格納されたデータの入れ替えを行う制御部とを具備したことを特徴とする。
本発明の一実施の形態に係る画像デコード装置を示すブロック図。 従来技術における2倍速再生を説明するための説明図。 従来技術における2倍速再生を説明するための説明図。 横軸に時間をとり縦軸にDTSをとって、デコードタイミングを説明するための説明図。 図4に対応した図表。 符号化フレームを解析して得られるピクチャテーブルを示す図表。 制御部13においてデコードするピクチャを決定するためのフローを示すフローチャート。 制御部13においてデコードするピクチャを決定するためのフローを示すフローチャート。 通常再生時及び倍速再生時の1枚目のデコード時のメモリ管理を説明するためのフローチャート。 倍速再生時の2枚目のデコード時のメモリ管理を説明するためのフローチャート。 符号化フレームのピクチャタイプとDTSとの関係を示す図表。 メモリ部15の各バッファfb0〜fb3の内容の変化を時間の経過に従って示す説明図。 符号化フレームのピクチャタイプとDTSとの関係を示す図表。 メモリ部15の各バッファfb0〜fb3の内容の変化を時間の経過に従って示す説明図。
以下、図面を参照して本発明の実施の形態について詳細に説明する。図1は本発明の一実施の形態に係る画像デコード装置を示すブロック図である。
図1において、画像デコード装置10の入力バッファ11には、入力動画像の符号化ストリームが入力される。入力バッファ11からの符号化ストリームはストリーム解析部12に供給される。ストリーム解析部12は、順次入力される符号化ストリーム中の各ピクチャのピクチャタイプ及びデコード時刻情報(DTS)を解析して、各ピクチャ及び解析結果を制御部13に出力する。
制御部13には、STCカウンタ16からシステム内の時刻情報STC(System Time Clock)も与えられる。制御部13は、再生モードに基づいて各部を制御する。即ち、制御部13は、再生モードに応じて各ピクチャをデコーダ14に供給すると共に、STCに基づくタイミングで各ピクチャのデコードをデコーダ14に指示する。デコーダ14は制御部13に制御されて、入力されたピクチャをデコードし、デコード結果をメモリ部15に与えて記憶させる。メモリ部15は、前方参照用バッファfb0、後方参照用バッファfb1、デコード用バッファfb2及び表示用バッファfb3の各1フレーム分のメモリを有している。
本実施の形態においては、制御部13は、通常再生モードだけでなく倍速再生モードで各部を制御することができる。制御部13は、倍速再生時においてはデコーダ14を制御して、倍速再生数に応じたピクチャを選択してデコードさせると共に、1フレーム期間に倍速再生数に応じたピクチャ数のピクチャをデコードさせることができるようになっている。更に、制御部13は、メモリ部15を制御して、各バッファfb0〜fb3に記憶されているデコードデータをバッファfb0〜fb3内で入れ替えて記憶させるようになっている。
次に、図2乃至図10を参照して、本実施の形態における倍速再生時のデコード方法について説明する。なお、図6乃至図10のデコード方法は、図6乃至図10の方法に沿ってコンピュータを動作させるプログラムによって実現することができる。
図2及び図3は従来技術における2倍速再生を説明するための説明図である。
図2(a)は所定の入力動画像を符号化して得られる符号化ストリームを示している。図2(a)の符号化ストリームはI,P,Bが夫々Iピクチャ、Pピクチャ、Bピクチャを示し、添え字によって入力動画像の動画シーケンスに対応するフレーム番号を示している。P,Bピクチャのデコードには、参照画像が必要であり、符号化ストリームのピクチャ順序は動画シーケンスと異なる。例えば、B3,B4ピクチャのデコードには、I2,P5ピクチャのデコード画像を参照画像として用いる必要があり、I2,P5ピクチャの後にB3,B4ピクチャが伝送される。
図2(b)は破線部分によって2倍速再生時のスキップ画像を示している。理想的には、2倍速再生では、例えばフレーム番号0,2,4,…のフレームを再生すればよい。しかしながら、B4ピクチャの再生のためにはP5ピクチャを再生する必要があり、このため、B4ピクチャに代えてP5ピクチャをデコードして再生出力する。即ち、図2(b)の例では、フレーム番号0,2,5,6,8,11,…のフレームが順次再生出力される。図2の例では、スキップ間隔は若干不均一となるが、再生画像にはそれ程の不自然さはない。
これに対し、図3(a)は比較的動きが多い入力動画像を符号化して得られる符号化ストリームの例を示している。この例では、Bピクチャが採用されずに、Pピクチャが連続する。図3(b)は図3(a)の符号化ストリームが入力された従来の画像デコード装置において、2倍速再生を行う場合のスキップ画像を破線にて示している。上述したように、理想的には例えばフレーム番号0,2,4,…のフレームを再生すればよいが、Pピクチャのデコードにはその参照画像となるI,Pピクチャをデコードする必要がある。Pピクチャをスキップした場合には、以後のPピクチャをデコードすることはできない。このため、図3(b)の例では、Iピクチャに続く連続したPピクチャをデコードして再生出力する必要がある。即ち、図3(b)の例では、フレーム番号0,1,2,3,4,5,12,…のフレームが順次再生出力される。図3の例では、スキップ間隔が大きくなり、再生画像はぎくしゃくしてしまう。
そこで、1フレーム期間に表示と参照画像生成のために2つのピクチャをデコードすることで、スキップ間隔を略均一にした倍速再生を可能にすることが考えられる。
図4は横軸に時間をとり縦軸にDTSをとって、デコードタイミングを説明するための説明図である。なお、図4は図3と異なる例を示している。また、図5は図4に対応した図表であり、符号化ストリームの各ピクチャに対応するDTS(デコード時刻情報)と、STC(システムクロック)と、再生時刻との関係を示す。
画像デコード装置においては、一定期間おきに、システム内部の時刻情報(STC)を参照し、STCの値がデコード対象となるフレームに設定されたデコード時刻情報(DTS)に達すると、デコードを行うようになっている。
図4及び図5は、STCが90KHzカウンタによって構成され、フレームレートが30フレーム/秒であって、1フレーム毎にSTCが(90000/30)=3000増加する例を示しており、通常再生時においてSTCが3000増加する毎に、各ピクチャのデコードタイミングに到達することを示している。即ち、通常再生時には、各ピクチャは、時刻V1,V2,V3,…のタイミングで順次デコードされて再生出力される。
これに対し、2倍速再生時には、各時刻V1,V2,V3,…にSTCが6000ずつ増加することになる。図4及び図5に示すように、各時刻において、画像デコード装置は、複数のフレームのピクチャの再生が可能である。例えば、時刻V4の時点において、入力バッファにはP3ピクチャ〜I’6ピクチャが供給されるので、画像デコード装置は、これらのピクチャのいずれかを復号することができる。
画像デコード装置において、各時刻に1つのピクチャのみをデコードして再生出力するものとすると、図4及び図5の例では、倍速再生時に、I0,P1,P3,I’6,P’7,…がデコードされて再生出力されることになり、図3(b)の例と同様に、動きがぎくしゃくする再生画像が得られてしまう。
ところで、画像デコード装置においては、P,Bピクチャを復号可能なように、十分なメモリバンド幅が設定されている。メモリアクセスがデコード時の負荷に与える影響は大きく、Bピクチャの復号に比べてPピクチャの復号時の負荷は十分に小さく、通常、画像デコード装置は1フレーム期間に2つのPピクチャをデコード(以下、多フレームデコードともいう)する能力を有する。そこで、Pピクチャについては、参照画像用と再生用とで各時刻に2つのピクチャをデコードすることが考えられる。
例えば、図4及び図5の例において、時刻V2でP1,P2ピクチャをデコードする。P1ピクチャのデコードは、P2ピクチャのデコード時の参照画像を得るために行われる。これにより、スキップ間隔を略均等にした倍速再生を可能にすることが考えられる。
しかしながら、この場合には、1フレーム期間に2つのピクチャがデコードされるので、デコードデータを保持するために必要なメモリ容量が増大してしまうという欠点がある。本実施の形態においては、メモリ容量の増大を防ぐためのメモリ書き込み方法を採用する。
図6乃至図8は本実施の形態においてデコードするピクチャを選択する方法を説明するためのものである。図6の説明図は符号化フレームを解析して得られるピクチャテーブルを示している。ピクチャテーブルは、各ピクチャのヘッダ情報を解析することで得られる。
ストリーム解析部12は、入力バッファ11に入力されたストリーム中のヘッダ情報をデコード前に解析し、入力順に図6のピクチャテーブルを生成する。各ピクチャにはインデックス(index)を付け、各ピクチャのピクチャタイプ(picture_coding_type)及びDTSの情報が抽出される。なお、各ピクチャは種々のヘッダ情報を有しているが、図6では図示を省略する(破線)。
デコード又はスキップされたピクチャについては、ピクチャテーブルから削除される。ストリーム解析部12は、ピクチャテーブルをリングバッファとして管理し、最終エントリの次は先頭エントリに戻って書き込みが行われる。なお、図6はフレーム単位で情報を管理する例を示しているが、フィールド単位で管理してもよい。
図7及び図8は制御部13においてデコードするピクチャを決定するためのフローを示すフローチャートである。図7及び図8のフローは、通常再生時及び倍速再生時のいずれの場合も共通に用いられる。
上述したように、本実施の形態においては、倍速再生時には、1フレーム期間に、倍速再生数に応じた枚数のピクチャをデコードする。図7は通常再生時及び倍速再生時において1枚目にデコードするピクチャを選択するためのものである。図4及び図5に示したように、倍速再生時には、1フレーム期間にデコード可能なピクチャが複数となる。図8は倍速再生時において2枚目以降のデコードピクチャを選択するためのものである。
図7のステップS11において、制御部13は、インデックスのための変数iに未処理ピクチャの先頭indexの値rpを代入する。変数decodeは、デコード候補ピクチャのindexを示しており、制御部13は、この変数decodeに−1を代入する。また、制御部13は、デコード候補がIピクチャ又はPピクチャの場合に1となる変数ipに0を代入する。
ステップS12では、制御部13は、インデックスiのピクチャテーブルが空になっているか又はインデックスiのピクチャテーブルのDTSがSTCよりも大きいか否かを判定する。制御部13は、インデックスiのピクチャテーブルが空でなく、且つSTCがインデックスiのピクチャテーブルのDTS以上である場合には、処理をステップS17に移行し、ipが0であるか否かを判定する。ipが0の場合には、制御部13は、ステップS18において、インデックスiのピクチャタイプがBピクチャでないか否かを判定する。Bピクチャでない場合には、制御部13は、ステップS19において変数ipに1を代入し、変数decodeにiを代入し(ステップS20)、iを99を上限としてインクリメントする(ステップS22)。
なお、制御部13は、ステップS18において、ピクチャタイプがBピクチャであると判定した場合には、ipに1を代入することなくステップS20に処理を進める。また、制御部13は、ステップS17においてipが0でない場合には、ステップS21においてピクチャタイプがIピクチャであるか否かを判定し、Iピクチャの場合には処理をステップS20に移行し、Iピクチャでない場合には処理をステップS22に移行する。
制御部13は、ステップS12において、インデックスiのピクチャテーブルが空になっているか又はインデックスiのピクチャテーブルのDTSがSTCよりも大きいか否かを判定し、この条件を満たす場合において、変数decodeが−1の場合には(ステップS13)、制御部13は、デコードは不能であるものと判断して、ステップS16においてデコードを行うことなく処理を終了する。
変数decodeが−1でない場合には、制御部13は、ステップS20において変数decodeに代入されたiに基づいてインデックスiのテーブルのピクチャをデコードする(ステップS14)。制御部13は、ステップS15において、未処理ピクチャの先頭インデックスrpを99を上限としてインクリメントして処理を終了する。
即ち、図7の処理は、DTS≦STCであるピクチャを、I>P>Bの優先順でデコードし、且つ、I,Bピクチャについては最後に入力されたピクチャを優先してデコードし、Pピクチャについては最初に入力されたピクチャを優先してデコードすることを意味する。
倍速再生時には、制御部13は、1フレーム期間に倍速数に応じた数のピクチャのデコードをデコーダ14に指示する。2枚目以降にデコードするピクチャについては、図8に示すフローに従って選択を行う。制御部13は、ステップS31において、1枚目でBピクチャをデコードしたか否かを判定する。1枚目でBピクチャをデコードした場合には、制御部13は、ステップS38においてデコード行うことなく処理を終了する。なお、1枚目でBピクチャをデコードした場合には、その時点でデコード可能なPピクチャは存在しないので、ステップS31の判定処理は省略してもよい。
1枚目でI,Pピクチャをデコードした場合には、制御部13は、次のステップS32において、変数iにrpを代入し、ステップS33において、インデックスiのピクチャテーブルが空になっているか又はインデックスiのピクチャテーブルのDTSがSTCよりも大きいか否かを判定する。この条件を満足する場合には、デコード可能なピクチャは存在しないので、制御部13はステップS38においてデコードを行うことなく処理を終了する。
制御部13は、次のステップS33において、インデックスiのピクチャテーブルが空でなく、且つSTCがインデックスiのピクチャテーブルのDTS以上であると判定した場合には、ステップS34において、インデックスiのピクチャがPピクチャか否かを判定する。
制御部13は、ステップS34において、Pピクチャでないと判定した場合には、ステップS35において、iを99を上限としてインクリメントして処理をステップS33に戻す。
制御部13は、ステップS34においてPピクチャであると判定した場合には、処理をステップS36に移行して、インデックスiのピクチャをデコードし、変数rpを99を上限としてインクリメントして(ステップS37)処理を終了する。
即ち、図8の処理は、直前にデコードしたピクチャの次のPピクチャをデコードすることを意味する。
図8のフローに従って、1フレーム期間に複数枚のピクチャのデコードを行った場合には、従来と同様のメモリ管理を行うとデコードデータを格納するためのメモリを余分に用意する必要がある。そこで、本実施の形態においては、図9及び図10のフローチャートによるメモリ管理を行うことによって、メモリ容量を増大することなく多フレームデコードを行って倍速再生を可能にする。
図9は通常再生時及び倍速再生時の1枚目のデコード時のメモリ管理を説明するためのフローチャートである。
図1に示すように、メモリ部15としては、4フレーム分のバッファfb0〜fb3が必要である。なお、通常再生時においても、4フレーム分のバッファfb0〜fb3が必要であり、本実施の形態は、メモリ部15の容量を増大させることなく、倍速再生を可能にするものである。
デコーダ14によってデコードされたピクチャがI,Pピクチャの場合には、そのデコードデータは参照画像として、前方参照用バッファfb0又は後方参照用バッファfb1に供給されて記憶される。
デコーダ14によってデコードされたピクチャがBピクチャの場合には、そのデコードデータはデコード用バッファfb2に供給されて記憶される。更に、デコードされるフレームの順序と表示順とが異なることから、デコードデータを表示タイミングまで保持するための表示用バッファfb3が必要である。
制御部13は、ステップS41において、デコード対象のピクチャがBピクチャか否かを判定する。Bピクチャの場合には、制御部13は、表示用バッファfb3に現フレーム期間において表示されるデコードデータが格納されているか否かを判定する(ステップS42)。表示用バッファfb3のデータが現フレーム期間に表示される場合には、制御部13はステップS43において表示用バッファfb3の内容をデコード用バッファfb2の内容とを入れ換えた後、デコードデータをデコード用バッファfb2に書込む(ステップS44)。表示用バッファfb3に格納されているデータが現フレームで表示されない場合には、制御部13は、ステップS43でバッファ内容の入れ替えを行うことなく、デコードデータをデコード用バッファfb2に書込む(ステップS44)。次のステップS45において、制御部13は、デコード用バッファfb2のデコードデータを次のフレーム期間に表示する。
デコード対象のピクチャがI,Pピクチャである場合には、制御部13は、処理をステップS41からステップS46に移行する。後述するように、I,Pピクチャについてはそのデコードデータを例えば後方参照用バッファfb1に書込むようになっている(ステップS52)。このため、制御部13は、ステップS46において、前方参照用バッファfb0と後方参照用バッファfb1の内容を入れ替えることで、デコード時点において後方参照用バッファfb1に書込まれているデコードデータについては、参照画像として前方参照用バッファfb0に転送する。
次のステップS47において、制御部13は、表示用バッファfb3のデータが現フレーム期間に表示されるか否かを判断する。表示用バッファfb3のデータが現フレーム期間に表示される場合には、制御部13はステップS49において後方参照用バッファfb1の内容とデコード用バッファfb2の内容とを入れ換えた後、デコードデータを後方参照用バッファfb1に書込む(ステップS52)。
表示用バッファfb3に格納されているデータが現フレームで表示されない場合には、制御部13は、次のステップS48で、後方参照用バッファfb1の内容と表示用バッファfb3の内容とを入れ換えた後、表示用バッファfb3に格納されているデータが現フレームで表示されるか否かを判定する。
表示用バッファfb3のデータが現フレーム期間に表示されない場合には、制御部13はステップS51において表示用バッファfb3の内容とデコード用バッファfb2の内容とを入れ換えた後、デコードデータを後方参照用バッファfb1に書込む(ステップS52)。表示用バッファfb3に格納されているデータが現フレームで表示される場合には、制御部13は、ステップS51でバッファ内容の入れ替えを行うことなく、デコードデータを後方参照用バッファfb1に書込む。
次のステップS53において、制御部13は、変数low_delayが1であるかいなかを判定し、low_delayが1の場合には、次フレーム期間に後方参照用バッファfb1の内容を表示し、low_delayが1でない場合には、次フレーム期間に前方参照用バッファfb0の内容を表示する。
図10は倍速再生時の2枚目のデコード時のメモリ管理を説明するためのフローチャートである。
制御部13は、ステップS61において、前方参照用バッファfb0の内容と後方参照用バッファfb1の内容とを入れ替える。次のステップS62において、制御部13は、後方参照用バッファfb1のデータが現フレーム又は次フレーム期間に表示されるか否かを判断する。後方参照用バッファfb1のデータが現フレーム又は次フレーム期間に表示されない場合には、制御部13はステップS66において、デコードデータを後方参照用バッファfb1に書込む。
制御部13は、ステップS62において、後方参照用バッファfb1のデータが現フレーム又は次フレーム期間に表示されると判断した場合には、次のステップS63において、デコード用バッファfb2のデータが現フレーム又は次フレーム期間に表示されるか否かを判断する。
デコード用バッファfb2のデータが現フレーム又は次フレーム期間に表示される場合には、制御部13はステップS64において後方参照用バッファfb1の内容と表示用バッファfb3の内容とを入れ換えた後、デコードデータを後方参照用バッファfb1に書込む(ステップS66)。
デコード用バッファfb2に格納されているデータが現フレーム又は次フレーム期間で表示されない場合には、制御部13は、次のステップS65で、後方参照用バッファfb1の内容とデコード用バッファfb2の内容とを入れ換えた後、デコードデータを後方参照用バッファfb1に書込む(ステップS66)。
次に、このように構成された実施の形態の動作について図11乃至図14を参照して説明する。図11及び図13は夫々符号化フレームのピクチャタイプとDTSとの関係を示し、図12及び図14はメモリ部15の各バッファfb0〜fb3の内容の変化を時間の経過に従って示す説明図である。なお、図12及び図14において、S43,S44,S46,S48,S49,S51,S52,S61,S64,S65,S66は、図9及び図10の対応する手順において実施されることを示している。
図11乃至図14において、I,P,Bは夫々Iピクチャ、Pピクチャ、Bピクチャを示し、添え字は、フレーム番号を示している。また、図12及び図14においては、Fb0〜Fb3は、バッファfb0〜fb3の内容を示しており、ピクチャタイプ及びフレーム番号によってそのピクチャのデコードデータを示している。図12及び図14においては、dec、dspは、夫々、デコードするピクチャ、表示するピクチャを示している。また、図12及び図14は、縦軸にSTCの値(stc)を時間の流れに対応させて示しており、各バッファfb0〜fb3の内容の変化を時間の流れに沿って1行毎に示している。なお、図12及び図14では、太線はフレーム期間の区切りを示し、破線太線は1枚目と2枚目のデコードの区切りを示している。
図11及び図12はPピクチャが連続する符号化フレームの例である。図11は、符号化フレームのピクチャI0,P1,P2,…,P8,…と各ピクチャのDTSとの関係を示している。
図12は図11の例におけるメモリ管理を示している。I0ピクチャが入力されると、制御部13は、デコーダ14にこのI0ピクチャをデコードさせる。I0ピクチャのデコードデータは、図9のステップS52において、バッファfb1に書込まれる。
STCが6000になると、図11に示すように、P1,P2ピクチャのデコードが可能である。制御部13は、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、P1ピクチャをデコードする。このP1ピクチャはバッファfb1に書込まれる。
本実施の形態においては、このフレーム期間において、P2ピクチャのデコードも行う。このデコードの前に、ステップS61において、fb0,fb1のデータを入れ替え、ステップS64においてfb1とfb3の内容を入れ替える。P2ピクチャのデコードデータは、ステップS66においてバッファfb1に書込まれる。
STCが12000になると、P3,P4ピクチャのデコードが可能である。制御部13は、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、ステップS49において、バッファfb1,fb2の内容を入れ替える。次いで、制御部13は、P3ピクチャをデコードする。このP3ピクチャはバッファfb1に書込まれる(ステップS52)。
この時点において、バッファfb3には、I0ピクチャのデコードデータが格納されており、制御部13はこのデータを表示部17に与えて表示させる。
また、このフレーム期間において、制御部13はP4ピクチャのデコードも行う。このデコードの前に、ステップS61において、fb0,fb1のデータを入れ替え、ステップS65においてfb1とfb2の内容を入れ替える。P4ピクチャのデコードデータは、ステップS66においてバッファfb1に書込まれる。
STCが18000になると、P5,P6ピクチャのデコードが可能である。制御部13は、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、ステップS48において、バッファfb1,fb3の内容を入れ替え、ステップS51において、バッファfb3,fb2の内容を入れ替える。次いで、制御部13は、P5ピクチャをデコードする。このP5ピクチャはバッファfb1に書込まれる(ステップS52)。
この時点において、バッファfb3には、P2ピクチャのデコードデータが格納されており、制御部13はこのデータを表示部17に与えて表示させる。
また、このフレーム期間において、制御部13はP6ピクチャのデコードも行う。このデコードの前に、制御部13は、ステップS61において、fb0,fb1のデータを入れ替え、ステップS65においてfb1とfb2の内容を入れ替える。P4ピクチャのデコードデータは、ステップS66においてバッファfb1に書込まれる。
以後、同様の動作が繰り返される。こうして、図12に示すように、全てのピクチャをデコードし、4つのバッファfb0〜fb3の内容を入れ替えながらデコードデータをバッファfb1に書込む。これにより、表示用バッファfb3には、倍速数に応じた均一なスキップ間隔のフレームのデコードデータを記憶させ、2倍速で表示順に出力して表示させることができる。
図13及び図14はBピクチャが含まれる符号化フレームの例である。図13は、符号化フレームのピクチャI2,B0,B1,P5,B3,B4,P6,…,P10と各ピクチャのDTSとの関係を示している。即ち、図13の符号化フレームは、一部においてBピクチャが混在し、一部においてPピクチャが連続している。
図14は図13の例におけるメモリ管理を示している。I2ピクチャが入力されると、制御部13は、デコーダ14にこのI2ピクチャをデコードさせる。I2ピクチャのデコードデータは、図9のステップS52において、バッファfb1に書込まれる。
STCが6000になると、図13に示すように、B0,B1ピクチャのデコードが可能である。図7に示すように、制御部13は、I,Bピクチャについては最後に入力されたピクチャ、即ち、B1ピクチャを優先してデコードする。ステップS43において、バッファfb2,fb3の内容を入れ替えた後、B1ピクチャがデコードされる。このB1ピクチャはバッファfb1に書込まれる。
STCが12000になると、P5,B3ピクチャのデコードが可能である。図7に示すように、制御部13は、I,P,BピクチャについてはI>P>Bの優先順位でピクチャを選択する。即ち、制御部13は、P5ピクチャを優先してデコードする。制御部13は、P5ピクチャのデコード前に、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、ステップS48において、バッファfb1,fb3の内容を入れ替え、ステップS51において、バッファfb3,fb2の内容を入れ替える。次いで、制御部13は、P5ピクチャをデコードする。このP5ピクチャはバッファfb1に書込まれる(ステップS52)。
この時点において、バッファfb3には、B1ピクチャのデコードデータが格納されており、制御部13はこのデータを表示部17に与えて表示させる。
STCが18000になると、B4,P6ピクチャのデコードが可能である。この場合においても、制御部13は、P6ピクチャを優先的にデコードする。P6ピクチャのデコード前に、制御部13は、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、ステップS48において、バッファfb1,fb3の内容を入れ替える。次いで、制御部13は、P6ピクチャをデコードする。このP6ピクチャはバッファfb1に書込まれる(ステップS52)。
この時点において、バッファfb3には、I2ピクチャのデコードデータが格納されており、制御部13はこのデータを表示部17に与えて表示させる。
STCが24000になると、P7,P8ピクチャのデコードが可能である。制御部13は、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、ステップS48において、バッファfb1,fb3の内容を入れ替える。次いで、制御部13は、P7ピクチャをデコードする。このP5ピクチャはバッファfb1に書込まれる(ステップS52)。
この時点において、バッファfb3には、P5ピクチャのデコードデータが格納されており、制御部13はこのデータを表示部17に与えて表示させる。
本実施の形態においては、このフレーム期間において、制御部13はP8ピクチャのデコードも行う。このデコードの前に、制御部13は、ステップS61において、fb0,fb1のデータを入れ替え、ステップS65においてfb1とfb2の内容を入れ替える。次いで、制御部13は、P8ピクチャをデコードし、このデコードデータはステップS66においてバッファfb1に書込まれる。
STCが30000になると、P9,P10ピクチャのデコードが可能である。制御部13は、ステップS46において、バッファfb0,fb1の内容を入れ替えた後、ステップS48において、バッファfb1,fb3の内容を入れ替え、ステップS51において、バッファfb3,fb2の内容を入れ替える。次いで、制御部13は、P9ピクチャをデコードする。このP9ピクチャはバッファfb1に書込まれる(ステップS52)。
この時点において、バッファfb3には、P6ピクチャのデコードデータが格納されており、制御部13はこのデータを表示部17に与えて表示させる。
また、このフレーム期間において、制御部13はP10ピクチャのデコードも行う。このデコードの前に、ステップS61において、fb0,fb1のデータを入れ替え、ステップS65においてfb1とfb2の内容を入れ替える。次いで、制御部13は、P10ピクチャをデコードし、このデコードデータは、ステップS66においてバッファfb1に書込まれる。
以後、同様の動作が繰り返される。こうして、図14に示すように、平均的には倍速数に応じたスキップ間隔のピクチャについて、4つのバッファfb0〜fb3の内容を入れ替えながらデコードデータをバッファfb1に書込むことができる。これにより、表示用バッファfb3には、略倍速数に応じたスキップ間隔のフレームのデコードデータを記憶させ、2倍速で表示順に出力して表示させることができる。
このように本実施の形態においては、倍速再生時において倍速数に応じたピクチャを選択すると共に、1フレーム期間において倍速数に応じた枚数のピクチャをデコードする。そして、メモリ部の4フレーム分のバッファの内容を入れ替えながらデコードデータを記憶させることにより、倍速数に応じたピクチャのデコードデータを表示タイミングに対応させて表示用バッファに格納することを可能にする。これにより、スキップ間隔を略均一化した倍速再生が可能であり、倍速再生画像がぎくしゃくすることを防止することができる。
なお、図9乃至図14の例は、表示に用いるデコードデータを表示用バッファに必ず格納するようにしたものである。表示に用いるデータを他のバッファから直接表示部に与える場合等においては、図9乃至図14に示すメモリ管理以外の管理方法を採用することができることは明らかである。
10…画像デコード装置、11…入力バッファ、12…ストリーム解析部、13…制御部、14…デコーダ、15…メモリ部、16…STCカウンタ、17…表示部、fb0〜fb3…バッファ。

Claims (5)

  1. 予測符号化された符号化ストリームが入力され、前記符号化ストリームの各ピクチャを参照画像を参照しながらデコードしてデコードデータを出力するデコード部と、
    前記デコード部のデコードの制御並びに2画面分の前記参照画像、前記デコード部からの前記デコードデータ及び表示に用いる前記デコードデータを格納する4画面分の記憶領域を有するメモリ部のメモリ管理を行うものであって、倍速再生時に1画面期間において倍速数に応じた数のピクチャを前記デコード部にデコードさせると共に、倍速再生時に前記表示に用いる前記デコードデータが前記記憶領域に保持されるように前記4画面分の記憶領域間で格納されたデータの入れ替えを行う制御部と
    を具備したことを特徴とする画像デコード装置。
  2. 前記制御部は、倍速再生時に2枚目にデコードするピクチャとして、Pピクチャを選択する
    ことを特徴とする請求項1に記載の画像デコード装置。
  3. 前記メモリ部が前方参照画像及び後方参照画像からなる前記2画面分の前記参照画像を格納する第1格納領域及び第2格納領域、及び前記デコードデータ及び表示に用いる前記デコードデータを格納する第3格納領域及び第4格納領域を含む場合において、
    前記制御部は、
    倍速再生時の2枚目にデコードするピクチャのデコード時に、
    第1格納領域と第2格納領域とで格納されたデータを入れ替え、
    第2格納領域に格納されたデータが現フレーム又は次フレーム期間に表示されるか否かを判断し、表示されない場合にはデコードデータを第2格納領域に書込み、表示される場合には第3格納領域のデータが現フレーム又は次フレーム期間に表示されるか否かを更に判断し表示される場合には第2格納領域と第4格納領域とで格納されたデータを入れ換えた後デコードデータを第2格納領域に書込み表示されない場合には第2格納領域と第3格納領域とで格納されたデータを入れ換えた後デコードデータを第2格納領域に書込む
    ことを特徴とする請求項1又は2に記載の画像デコード装置。
  4. 予測符号化された符号化ストリームが入力され、前記符号化ストリームの各ピクチャのピクチャタイプを解析する手順と、
    倍速再生時に倍速数及び前記ピクチャタイプに基づいてデコードするピクチャを選択する手順と、
    選択されたピクチャをデコードする手順と、
    2画面分の前記参照画像、デコードされて得られる前記デコードデータ及び表示に用いる前記デコードデータを格納する4画面分の記憶領域を有するメモリ部を制御して、倍速再生時に前記表示に用いる前記デコードデータが前記記憶領域に保持されるように前記4画面分の記憶領域間で格納されたデータの入れ替えを行う手順と、
    前記メモリ部に前記デコードデータを記憶させる手順と、
    をコンピュータに実行させるためのデコードプログラム。
  5. 前記4画面分の記憶領域間で格納されたデータの入れ替えを行う手順は、
    前記2画面分の前記参照画像を格納する記憶領域間で格納されたデータの入れ替えを行う手順と、
    前回のデコード時のデコードデータを表示に用いる場合には、当該デコードデータが保持されるように前記記憶領域間で格納されたデータの入れ替えを行う手順と、
    を含むことを特徴とする請求項4に記載のデコードプログラム。
JP2010247673A 2010-11-04 2010-11-04 画像デコード装置及びデコードプログラム Pending JP2012100162A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010247673A JP2012100162A (ja) 2010-11-04 2010-11-04 画像デコード装置及びデコードプログラム
CN2011100666057A CN102469312A (zh) 2010-11-04 2011-03-18 图像解码装置及解码程序
US13/052,357 US8649617B2 (en) 2010-11-04 2011-03-21 Image decoding apparatus and non-transitory computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010247673A JP2012100162A (ja) 2010-11-04 2010-11-04 画像デコード装置及びデコードプログラム

Publications (1)

Publication Number Publication Date
JP2012100162A true JP2012100162A (ja) 2012-05-24

Family

ID=46019690

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010247673A Pending JP2012100162A (ja) 2010-11-04 2010-11-04 画像デコード装置及びデコードプログラム

Country Status (3)

Country Link
US (1) US8649617B2 (ja)
JP (1) JP2012100162A (ja)
CN (1) CN102469312A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018142984A (ja) * 2013-08-09 2018-09-13 ソニー株式会社 送信装置および送信方法
US11368744B2 (en) 2013-08-09 2022-06-21 Sony Corporation Device and associated method for using layer description and decoding syntax in multi-layer video

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1084558A (ja) 1996-07-19 1998-03-31 Hitachi Ltd ディジタル圧縮画像復号表示装置
CN1183778C (zh) * 1998-02-13 2005-01-05 松下电器产业株式会社 图象解码装置及记录媒体
JP3825719B2 (ja) * 2002-06-13 2006-09-27 三洋電機株式会社 画像再生方法、画像再生装置、および画像記録装置
JP4140709B2 (ja) * 2003-02-05 2008-08-27 松下電器産業株式会社 画像信号再生装置および画像信号再生方法
EP1713283A2 (en) * 2005-04-15 2006-10-18 Sony Corporation Video decoder with random access technique
JP5011017B2 (ja) * 2007-07-30 2012-08-29 株式会社日立製作所 画像復号化装置
CN101600092A (zh) * 2009-06-12 2009-12-09 中兴通讯股份有限公司 网络视频录像的生成和播放方法及***

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018142984A (ja) * 2013-08-09 2018-09-13 ソニー株式会社 送信装置および送信方法
JP2021132396A (ja) * 2013-08-09 2021-09-09 ソニーグループ株式会社 送信装置および送信方法
US11368744B2 (en) 2013-08-09 2022-06-21 Sony Corporation Device and associated method for using layer description and decoding syntax in multi-layer video
JP7095775B2 (ja) 2013-08-09 2022-07-05 ソニーグループ株式会社 送信装置および送信方法
JP2022126774A (ja) * 2013-08-09 2022-08-30 ソニーグループ株式会社 受信装置
JP7338745B2 (ja) 2013-08-09 2023-09-05 ソニーグループ株式会社 受信装置

Also Published As

Publication number Publication date
US8649617B2 (en) 2014-02-11
US20120114258A1 (en) 2012-05-10
CN102469312A (zh) 2012-05-23

Similar Documents

Publication Publication Date Title
US8275247B2 (en) Method and apparatus for normal reverse playback
TWI238002B (en) Method for selecting the de-interlacing algorithm of dynamic image
JP4476261B2 (ja) 復号装置および復号方法
US20100166081A1 (en) Video stream processing apparatus and control method, program and recording medium for the same
KR20060109339A (ko) 프로그램, 복호 장치, 복호 방법, 및 기록 매체
JP3356078B2 (ja) 圧縮ストリーム復号装置および圧縮ストリーム復号方法
JP2009273133A (ja) 階層的映像符号化のための参照フレーム管理装置および方法
JP2009296081A (ja) 映像再生装置
JP2010538500A (ja) 特殊再生用のビデオデータの生成方法
JP2012100162A (ja) 画像デコード装置及びデコードプログラム
JP2004112769A (ja) 復号制御装置、および復号制御方法、情報処理装置、および情報処理方法、並びにプログラム
JP2008271546A (ja) 復号装置および復号方法、情報処理装置および情報処理方法
JP2008252874A (ja) 動画像符号化方法、動画像復号化方法、動画像符号化装置及び動画像復号化装置
US8031266B2 (en) Method and apparatus for video decoding and de-interlacing
JP6221820B2 (ja) 符号化装置、符号化方法および符号化プログラム
JP2005295426A (ja) 映像情報記録装置および映像情報記録方法ならびに映像情報再生装置および映像情報再生方法
JPWO2008129648A1 (ja) フレームレート変換装置、フレームレート変換方法及び動画像符号化装置
JP2006319645A (ja) 映像再生装置及び方法及びプログラム及び記憶媒体
JP5355176B2 (ja) 動画保存装置及びその制御方法
JP2005236386A (ja) 画像処理装置
US8681269B2 (en) Video reproduction apparatus and video reproducing method
JP2010154075A (ja) トランスコード表示装置及び方法
KR101336820B1 (ko) 다채널 트릭 모드에 특화된 복호화 장치 및 방법
JP2005269283A (ja) ディジタル画像の再生方法及び再生装置
JP2007235271A (ja) 映像復号装置