(57)【要約】【課題】複数の映像データから映像を選択して復号する際に，選択のイベントとは無関係に，タイムスタンプを連続して，映像を再生し続けることができるようにする。【解決手段】タイムスタンプ取得部１０７は，Ｎ個のストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得る。復号ストリーム設定部１０８は，復号するストリームと復号を開始するタイムスタンプを設定する。ストリーム転送部１０５は，設定されたタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを，ストリームバッファ１０１〜１０４から読み出して，デコーダバッファ１０６へ転送し，ストリーム復号部１０９は，それを復号して画像情報を生成する。【選択図】図１
2011066587.tif 000002
【特許請求の範囲】
【請求項１】
Ｎ個（Ｎ≧２）のストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置が実行する映像復号方法であって，
前記映像復号装置は，前記Ｎ個のストリームがそれぞれ蓄積されるＮ個のストリームバッファと，復号するストリームを格納する１個のデコーダバッファとを有し，
前記ストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得ステップを実行し，
復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定ステップと，
前記復号ストリーム設定ステップで設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを，前記Ｎ個のストリームバッファの１つから読み出して，前記デコーダバッファへ転送するストリーム転送ステップとを実行し，
前記デコーダバッファに蓄積されたストリームを復号して画像情報を作成するストリーム復号ステップを実行する
ことを特徴とする映像復号方法。
【請求項２】
Ｎ個（Ｎ≧２）のストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置が実行する映像復号方法であって，
前記映像復号装置は，前記Ｎ個のストリームがそれぞれ蓄積されるＮ個のストリームバッファと，復号するストリームを格納するＭ個（２≦Ｍ≦Ｎ）のデコーダバッファとを有し，
前記ストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得ステップを実行し，
Ｍ個の復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定ステップと，
前記復号ストリーム設定ステップで設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを，前記Ｎ個のストリームバッファの１つから読み出して，前記Ｍ個のデコーダバッファの１つへ転送する処理を，前記Ｍ個のデコーダバッファのそれぞれに対して行うストリーム転送ステップとを実行し，
前記Ｍ個のデコーダバッファに蓄積された各ストリームをそれぞれ復号して画像情報を作成するストリーム復号ステップを実行する
ことを特徴とする映像復号方法。
【請求項３】
請求項１または請求項２記載の映像復号方法であって，
前記タイムスタンプ取得ステップでは，
前記Ｎ個のストリームバッファに蓄積される各ストリームについて，ストリーム中の特定のビット配列を探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているタイムスタンプ情報を得る
ことを特徴とする映像復号方法。
【請求項４】
請求項１または請求項２記載の映像復号方法であって，
前記タイムスタンプ取得ステップでは，
前記Ｎ個のストリームバッファに蓄積される各ストリームについて，符号化データ中に予め設定されている，ストリーム読み出し位置情報とタイムスタンプ情報を復号することで，ストリーム読み出し位置におけるタイムスタンプ情報を得る
ことを特徴とする映像復号方法。
【請求項５】
請求項１または請求項２記載の映像復号方法であって，
前記タイムスタンプ取得ステップでは，
前記Ｎ個のストリームバッファに蓄積される各ストリームとは別に予め作成されたストリーム中に予め設定されている，ストリーム読み出し位置におけるタイムスタンプ情報を復号することで，ストリーム読み出し位置におけるタイムスタンプ情報を得る
ことを特徴とする映像復号方法。
【請求項６】
ストリーム識別子を割り当てられたＮ個（Ｎ≧２）のストリームが多重化された多重化ストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置が実行する映像復号方法であって，
前記映像復号装置は，前記多重化ストリームが蓄積される１個のストリームバッファと，復号するストリームを格納する１個のデコーダバッファとを有し，
前記ストリームバッファに蓄積される多重化ストリームについて，予め設定されている各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得ステップを実行し，
復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定ステップと，
前記復号ストリーム設定ステップで設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までの，ストリーム識別子に対応したストリームを，前記ストリームバッファから読み出して，前記デコーダバッファへ転送するストリーム転送ステップとを実行し，
前記デコーダバッファに蓄積されたストリームを復号して画像情報を作成するストリーム復号ステップを実行する
ことを特徴とする映像復号方法。
【請求項７】
ストリーム識別子を割り当てられたＮ個（Ｎ≧２）のストリームが多重化された多重化ストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置が実行する映像復号方法であって，
前記映像復号装置は，前記多重化ストリームが蓄積される１個のストリームバッファと，復号するストリームを格納するＭ個（２≦Ｍ≦Ｎ）のデコーダバッファとを有し，
ストリームバッファに蓄積される多重化ストリームについて，予め設定されている各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得ステップを実行し，
Ｍ個の復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定ステップと，
前記復号ストリーム設定ステップで設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までの，ストリーム識別子に対応したストリームを前記ストリームバッファから読み出して，前記Ｍ個のデコーダバッファの１つへ転送する処理を，前記Ｍ個のデコーダバッファのそれぞれに対して行うストリーム転送ステップとを実行し，
前記Ｍ個のデコーダバッファに蓄積された各ストリームをそれぞれ復号して画像情報を作成するストリーム復号ステップを実行する
ことを特徴とする映像復号方法。
【請求項８】
請求項６または請求項７記載の映像復号方法であって，
前記タイムスタンプ取得ステップでは，
前記ストリームバッファに蓄積される多重化ストリームについて，ストリーム中の特定のビット配列を探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているストリーム識別子とタイムスタンプ情報を得る
ことを特徴とする映像復号方法。
【請求項９】
請求項６または請求項７記載の映像復号方法であって，
前記タイムスタンプ取得ステップでは，
前記ストリームバッファに蓄積される多重化ストリームについて，符号化データ中に予め設定されている，ストリーム読み出し位置情報とストリーム識別子とタイムスタンプ情報を復号することで，ストリーム識別子とストリーム読み出し位置におけるタイムスタンプ情報を得る
ことを特徴とする映像復号方法。
【請求項１０】
請求項６または請求項７記載の映像復号方法であって，
前記タイムスタンプ取得ステップでは，
前記ストリームバッファに蓄積される各ストリームとは別に予め作成されたストリーム中に予め設定されている，ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を復号することで，ストリーム識別子とストリーム読み出し位置におけるタイムスタンプ情報を得る
ことを特徴とする映像復号方法。
【請求項１１】
Ｎ個（Ｎ≧２）のストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，
前記Ｎ個のストリームがそれぞれ蓄積されるＮ個のストリームバッファと，
復号するストリームを格納する１個のデコーダバッファと，
前記ストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得部と，
復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，
前記復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを，前記Ｎ個のストリームバッファの１つから読み出して，前記デコーダバッファへ転送するストリーム転送部と，
前記デコーダバッファに蓄積されたストリームを復号して画像情報を作成するストリーム復号部とを備える
ことを特徴とする映像復号装置。
【請求項１２】
Ｎ個（Ｎ≧２）のストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，
前記Ｎ個のストリームがそれぞれ蓄積されるＮ個のストリームバッファと，
復号するストリームを格納するＭ個（２≦Ｍ≦Ｎ）のデコーダバッファと，
前記ストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得部と，
Ｍ個の復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，
前記復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを，前記Ｎ個のストリームバッファの１つから読み出して，前記Ｍ個のデコーダバッファの１つへ転送する処理を，前記Ｍ個のデコーダバッファのそれぞれに対して行うストリーム転送部と，
前記Ｍ個のデコーダバッファに蓄積された各ストリームをそれぞれ復号して画像情報を作成するＭ個のストリーム復号部とを備える
ことを特徴とする映像復号装置。
【請求項１３】
ストリーム識別子を割り当てられたＮ個（Ｎ≧２）のストリームが多重化された多重化ストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，
前記多重化ストリームが蓄積される１個のストリームバッファと，
復号するストリームを格納する１個のデコーダバッファと，
前記ストリームバッファに蓄積される多重化ストリームについて，予め設定されている各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得部と，
復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，
前記復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までの，ストリーム識別子に対応したストリームを，前記ストリームバッファから読み出して，前記デコーダバッファへ転送するストリーム転送部と，
前記デコーダバッファに蓄積されたストリームを復号して画像情報を作成するストリーム復号部とを備える
ことを特徴とする映像復号装置。
【請求項１４】
ストリーム識別子を割り当てられたＮ個（Ｎ≧２）のストリームが多重化された多重化ストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，
前記多重化ストリームが蓄積される１個のストリームバッファと，
復号するストリームを格納するＭ個（２≦Ｍ≦Ｎ）のデコーダバッファと，
前記ストリームバッファに蓄積される多重化ストリームについて，予め設定されている各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得部と，
Ｍ個の復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，
前記復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までの，ストリーム識別子に対応したストリームを前記ストリームバッファから読み出して，前記Ｍ個のデコーダバッファの１つへ転送する処理を，前記Ｍ個のデコーダバッファのそれぞれに対して行うストリーム転送部と，
前記Ｍ個のデコーダバッファに蓄積された各ストリームをそれぞれ復号して画像情報を作成するＭ個のストリーム復号部とを備える
ことを特徴とする映像復号装置。
【請求項１５】
請求項１から請求項１０までのいずれか１項に記載の映像復号方法を，コンピュータに実行させるための映像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，複数の映像符号化データを同期して復号する映像復号方法，映像復号装置および映像復号プログラムに関するものである。
【背景技術】
【０００２】
ＤＶＤなどの記憶媒体には，複数の映像コンテンツを記録することができる。また，デジタル放送では，複数の映像チャンネルを放送することができる。このように近年の映像蓄積媒体や放送では，複数の映像データを同時に配布することができるようになっている。
【０００３】
このような映像コンテンツや映像チャンネルは，それぞれ独立した映像コンテンツであり，視聴者は所望のコンテンツを選択して再生表示することができる。実際には，まず映像ストリームがバッファに蓄積される。そして映像を再生する際には，バッファに蓄積されたストリームに対して，特定の映像データの先頭位置や，再生開始が可能な位置を探索し，探索された位置から映像データを復号して表示する。
【０００４】
例えば，デジタル放送でチャンネルを切り替えながら視聴する場合に，チャンネルを切り替えた際に，バッファに蓄積されたチャンネルの映像データの中で，再生開始位置を探索し，その探索された位置から映像データの復号を行い，復号された映像の表示を行う。この探索をする処理の間は，再生する画像データがないため，切り替え前のチャンネルの映像を停止した状態で表示する。
【０００５】
また，複数の映像コンテンツのうち，２つの映像コンテンツを同時に復号して表示することもある。この場合には，２つの復号器が独立に，それぞれの復号対象の符号化データを復号して表示する。
【０００６】
一方，複数のカメラ映像をまとめて圧縮する符号化方式として，多視点映像符号化（ＭＶＣ）が，国際標準符号化方式Ｈ．２６４  Ａｎｎｅｘ  Ｈとして標準化されている。ＭＶＣでは，複数の映像符号化データが多重化された形で圧縮符号化される。同じタイムスタンプのフレームの符号化データが連続して多重化される。すなわち，符号化データは複数の映像データを多重化したストリームになる。同じタイムスタンプのフレームが連続して多重化されているため，復号器はＭＶＣの符号化データを復号することで，同じタイムスタンプの複数のカメラ映像を連続して復号して出力することができる。
【０００７】
この多視点映像符号化（ＭＶＣ）の規格や特徴については，非特許文献１等に記載されている。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】大久保榮監修，角野眞也・菊池義浩・鈴木輝彦共編，「改訂三版Ｈ．２６４／ＡＶＣ教科書」，インプレスＲ＆Ｄ発行, 第１３章，2009．
【発明の概要】
【発明が解決しようとする課題】
【０００９】
複数の映像符号化データまたはＭＶＣのような多重化ストリームをバッファから読み込み，１つ以上の映像を復号して表示している途中で，別の１つ以上の映像を選択して復号する処理を想定する。このとき，選択前の映像のタイムスタンプと，選択後の映像のタイムスタンプとが連続して復号することを想定する。また，２つ以上の映像を復号する場合には，同じタイムスタンプの画像から，１つの画像を合成する処理を想定する。例えば４つ以上の映像データから２つの映像を再生している途中で，別の２つの映像を選択して復号する。ここで，２つの同じタイムスタンプの画像を横につなげることで一つの横長の画像を合成することを想定する。
【００１０】
従来の復号処理では，映像データを復号している途中に別の映像を選択すると，バッファに蓄積されたストリームについて再生開始位置を探索し，その探索された位置から映像データを読み込んで復号を行う。このとき，別の映像を復号するまでは，再生する画像情報がないため，選択前のチャンネルの映像を停止した状態で表示する。したがって，映像を選択して切り替えるときに，切り替える前の映像と切り替えた後の映像との間で，映像が静止してしまい，再生する映像の品質が劣化する問題があった。
【００１１】
本発明は，以上のような課題を解決し，複数の映像データから映像を選択して復号する際に，切り替え時の映像の品質を劣化させることなく，タイムスタンプを連続して，映像を再生し続けることができるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
本発明は，上記課題を解決するため，以下のような手段を用いる。
【００１３】
第１の発明は，複数（Ｎ個）のストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，各ストリームが蓄積されるＮ個のストリームバッファと，ストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得部と，ストリームを復号して画像情報を作成するストリーム復号部と，ストリーム復号部がストリームを読み出すデコーダバッファと，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，ストリームバッファから，復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを読み出して，デコーダバッファへ転送するストリーム転送部とを備えることを特徴とする。
【００１４】
この発明によれば，ストリームバッファとデコーダバッファの２種類のバッファを備えることで，複数の映像データをそれぞれのストリームバッファに一旦蓄積しておき，選択のイベントが起きた時には，ストリームバッファから選択されたストリームを取り出してデコーダバッファへのストリームの転送を行う。選択のイベントとは無関係に，デコーダはデコーダバッファのストリームを復号し続ける。これにより，タイムスタンプを連続して，映像を再生し続けることができる。
【００１５】
第２の発明は，複数（Ｎ個）のストリームで構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，各ストリームが蓄積されるＮ個のストリームバッファと，ストリームバッファに蓄積される各ストリームについて，予め設定されているストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得部と，ストリームを復号して画像情報を作成するＭ個（２≦Ｍ≦Ｎ）のストリーム復号部と，
ストリーム復号部がストリームを読み出すＭ個のデコーダバッファと，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，ストリームバッファから，復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを読み出して，デコーダバッファへ転送するストリーム転送部とを備えることを特徴とする。
【００１６】
この発明によれば，ストリーム復号部を２つ以上備えることで，ストリームバッファに蓄積されたデータから，２つ以上の映像データをデコーダバッファへ転送して，並列して復号することができる。
【００１７】
第３の発明は，上記第１または第２の発明の映像復号装置であって，タイムスタンプ取得部では，ストリームバッファに蓄積される各ストリームについて，ストリーム中の特定のビット配列を探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているタイムスタンプ情報を得ることを特徴とする。
【００１８】
この発明によれば，映像ストリーム中に予め，特定のビット配列を持つストリーム読み出し位置を設定し，その位置にタイムスタンプ情報を設定しておく。そのような映像ストリームについて，タイムスタンプ取得部がストリームバッファにあるストリーム中の特定のビット配列を探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているタイムスタンプ情報を得る。これにより，タイムスタンプ情報の取得処理を，符号化データの復号処理と並列して行うことができ，連続して復号処理を行うことができる。
【００１９】
第４の発明は，上記第１または第２の発明の映像復号装置であって，タイムスタンプ取得部では，ストリームバッファに蓄積される各ストリームについて，符号化データ中に予め設定されている，ストリーム読み出し位置情報とタイムスタンプ情報を復号することで，ストリーム読み出し位置におけるタイムスタンプ情報を得ることを特徴とする。
【００２０】
この発明によれば，映像ストリーム中に予め，映像符号化データとは別に，各ストリーム読み出し位置におけるタイムスタンプ情報を設定しておく。そのような映像ストリームについて，タイムスタンプ取得部がストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているタイムスタンプ情報を得る。これにより，タイムスタンプ情報の取得処理を，符号化データの復号処理と並列して行うことができ，連続して復号処理を行うことができる。
【００２１】
第５の発明は，上記第１または第２の発明の映像復号装置であって，タイムスタンプ取得部では，ストリームバッファに蓄積される各ストリームとは別に予め作成されたストリーム中に予め設定されている，ストリーム読み出し位置におけるタイムスタンプ情報を復号することで，ストリーム読み出し位置におけるタイムスタンプ情報を得ることを特徴とする。
【００２２】
この発明によれば，映像ストリームとは別のストリーム（タイムスタンプストリーム）中に予め，各ストリーム読み出し位置におけるタイムスタンプ情報を設定しておく。そのような映像ストリームとタイムスタンプストリームについて，タイムスタンプ取得部がタイムスタンプストリームを復号して，ストリーム読み出し位置におけるタイムスタンプ情報を得る。これにより，タイムスタンプ情報の取得処理を，符号化データの復号処理と並列して行うことができ，連続して復号処理を行うことができる。
【００２３】
第６の発明では，ストリーム識別子を割り当てられた複数（Ｎ個）のストリームが多重化されたストリーム（多重化ストリーム）で構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，多重化ストリームが蓄積されるストリームバッファと，ストリームバッファに蓄積される多重化ストリームについて，予め設定されている各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得部と，ストリームを復号して画像情報を作成するストリーム復号部と，ストリーム復号部がストリームを読み出すデコーダバッファと，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，ストリームバッファから，復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までの，ストリーム識別子に対応したストリームを読み出して，デコーダバッファへ転送するストリーム転送部とを備えることを特徴とする。
【００２４】
この発明によれば，ストリームバッファとデコーダバッファの２種類のバッファを備えることで，複数の映像符号化データを多重化した多重化ストリームをストリームバッファに一旦蓄積しておき，選択のイベントが起きた時には，ストリームバッファから選択されたストリームを取り出してデコーダバッファへのストリームの転送を行う。選択のイベントとは無関係に，デコーダはデコーダバッファのストリームを復号し続ける。これにより，タイムスタンプを連続して，映像を再生し続けることができる。
【００２５】
第７の発明は，ストリーム識別子を割り当てられた複数（Ｎ個）のストリームが多重化されたストリーム（多重化ストリーム）で構成される映像情報の符号化データを復号して画像情報を得る映像復号装置であって，多重化ストリームが蓄積されるストリームバッファと，ストリームバッファに蓄積される多重化ストリームについて，予め設定されている各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得部と，ストリームを復号して画像情報を作成するＭ個（２≦Ｍ≦Ｎ）のストリーム復号部と，ストリーム復号部がストリームを読み出すＭ個のデコーダバッファと，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部と，ストリームバッファから，復号ストリーム設定部で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までの，ストリーム識別子に対応したストリームを読み出して，デコーダバッファへ転送するストリーム転送部とを備えることを特徴とする。
【００２６】
この発明によれば，ストリーム復号部を２つ以上備えることで，ストリームバッファに蓄積されたデータから，２つ以上の映像データをデコーダバッファへ転送して，並列して復号することができる。
【００２７】
第８の発明は，上記第６または第７の発明の映像復号装置であって，タイムスタンプ取得部では，ストリームバッファに蓄積される多重化ストリームについて，ストリーム中の特定のビット配列を探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているストリーム識別子とタイムスタンプ情報を得ることを特徴とする。
【００２８】
この発明によれば，多重化ストリーム中に予め，特定のビット配列を持つストリーム読み出し位置を設定し，その位置にストリーム識別子とタイムスタンプ情報を設定しておく。そのような多重化ストリームについて，タイムスタンプ取得部がストリームバッファにあるストリーム中の特定のビット配列を探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているストリーム識別子とタイムスタンプ情報を得る。これにより，ストリーム識別子とタイムスタンプ情報の取得処理を，符号化データの復号処理と並列して行うことができ，連続して復号処理を行うことができる。
【００２９】
第９の発明は，上記第６または第７の発明の映像復号装置であって，タイムスタンプ取得部では，ストリームバッファに蓄積される多重化ストリームについて，符号化データ中に予め設定されている，ストリーム読み出し位置情報とストリーム識別子とタイムスタンプ情報を復号することで，ストリーム識別子とストリーム読み出し位置におけるタイムスタンプ情報を得ることを特徴とする。
【００３０】
この発明によれば，多重化ストリーム中に予め，映像符号化データとは別に，各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を設定しておく。そのような多重化ストリームについて，タイムスタンプ取得部がストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているストリーム識別子とタイムスタンプ情報を得る。これにより，ストリーム識別子とタイムスタンプ情報の取得処理を，符号化データの復号処理と並列して行うことができ，連続して復号処理を行うことができる。
【００３１】
第１０の発明は，上記第６または第７の発明の映像復号装置であって，タイムスタンプ取得部では，ストリームバッファに蓄積される各ストリームとは別に予め作成されたストリーム中に予め設定されている，ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を復号することで，ストリーム識別子とストリーム読み出し位置におけるタイムスタンプ情報を得ることを特徴とする。
【００３２】
この発明によれば，多重化ストリームとは別のストリーム（タイムスタンプストリーム）中に予め，各ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を設定しておく。そのような映像ストリームとタイムスタンプストリームについて，タイムスタンプ取得部がタイムスタンプストリームを復号して，ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得る。これにより，ストリーム識別子とタイムスタンプ情報の取得処理を，符号化データの復号処理と並列して行うことができ，連続して復号処理を行うことができる。
【発明の効果】
【００３３】
本発明によれば，複数の映像データから映像を選択して復号する際に，選択のイベントとは無関係に，デコーダはデコーダバッファのストリームを復号し続ける。これにより，タイムスタンプを連続して，映像を再生し続けることができる。
【図面の簡単な説明】
【００３４】
【図１】第１の例における映像復号装置の構成例１を示す図である。
【図２】映像復号処理フロー１を示す図である。
【図３】映像復号処理フロー２を示す図である。
【図４】映像復号処理フロー３を示す図である。
【図５】第１の例における映像復号装置の構成例２を示す図である。
【図６】ストリーム構成の例を示す図である。
【図７】第２の例における映像復号装置の構成例１を示す図である。
【図８】第２の例における映像復号装置の構成例２を示す図である。
【図９】第３の例における映像復号装置の構成例１を示す図である。
【図１０】第３の例における映像復号装置の構成例２を示す図である。
【図１１】ストリーム構成の例を示す図である。
【図１２】第４の例における映像復号装置の構成例１を示す図である。
【図１３】第４の例における映像復号装置の構成例２を示す図である。
【図１４】映像復号装置をソフトウェアプログラムにより実現する場合のシステム構成の一例を示す図である。
【発明を実施するための形態】
【００３５】
以下，図面を用いて，本発明の映像復号方法の実施例を説明する。
【００３６】
〔第１の例〕
第１の例では，４個（Ａ，Ｂ，Ｃ，Ｄ）のストリームで構成される映像情報の符号化データ（ストリーム）のうち１個のストリームを復号して画像情報を得る映像復号装置の例を示す。各ストリームの読み出し位置とタイムスタンプは予め設定してあり，映像符号化データとは別ストリーム（タイムスタンプストリーム）として，１つずつ作成してあるものとする。
【００３７】
図１に，第１の例の映像復号装置の構成例１を示す。ストリームＡが蓄積されるストリームバッファ１０１と，ストリームＢが蓄積されるストリームバッファ１０２と，ストリームＣが蓄積されるストリームバッファ１０３と，ストリームＤが蓄積されるストリームバッファ１０４と，各ストリームに対するタイムスタンプストリーム（Ａ，Ｂ，Ｃ，Ｄ）から，各ストリームのストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得部１０７と，ストリームを復号して画像情報を作成するストリーム復号部１０９と，ストリーム復号部１０９がストリームを読み出すデコーダバッファ１０６と，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部１０８と，ストリームバッファ（Ａ，Ｂ，Ｃ，Ｄ）１０１〜１０４から，復号ストリーム設定部１０８で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを読み出して，デコーダバッファ１０６へ転送するストリーム転送部１０５とから構成される。ストリームバッファ（Ａ，Ｂ，Ｃ，Ｄ）１０１〜１０４へは逐次ストリームが蓄積されて，バッファには常に十分な量のストリームが蓄積されているものとする。
【００３８】
以上の前提で，映像Ａ，Ｂ，Ｃ，Ｄのうち，以下の順序で１つの映像を読み出して復号するものとする。すなわち，選択のイベントは次のとおりであったとする。
（１）  時刻Ｔ１〜Ｔ２：映像Ａ
（２）  時刻Ｔ２〜Ｔ３：映像Ｂ
（３）  時刻Ｔ３〜Ｔ４：映像Ｃ
（４）  時刻Ｔ４〜Ｔ５：映像Ｄ
まず，ストリームバッファ１０１〜１０４からデコーダバッファ１０６へ転送するまでの処理を示す。図２にフローチャートを示す。タイムスタンプ取得部１０７は，タイムスタンプストリーム（Ａ，Ｂ，Ｃ，Ｄ）を復号して，各映像ストリームの読み出し位置とタイムスタンプ情報を予め得ておく（ステップＳ１０１，Ｓ１０２）。
【００３９】
復号ストリーム設定部１０８は，ストリームＡについて時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部１０５を設定する（ステップＳ１０３）。ストリーム転送部１０５は，タイムスタンプ取得部１０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ１０１から読み出して，デコーダバッファ１０６へ転送する（ステップＳ１０４）。
【００４０】
次に，復号ストリーム設定部１０８は，ストリームＢについて時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部１０５を設定する。ストリーム転送部１０５は，タイムスタンプ取得部１０７で得られた読み出し位置の情報を使い，時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームＢをストリームバッファ１０２から読み出して，デコーダバッファ１０６へ転送する。
【００４１】
映像Ｃと映像Ｄについても同様な処理を行い，映像Ｃについては時刻Ｔ３〜Ｔ４，映像Ｄについては時刻Ｔ４〜Ｔ５のストリームをそれぞれのストリームバッファ１０３，１０４から読み出して，デコーダバッファ１０６へ転送する。
【００４２】
このストリームバッファからデコーダバッファ１０６へ転送するまでの処理は，図３に示すフローチャートに従っても良い。復号ストリーム設定部１０８は，ストリームＡについて，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部１０５を設定する（ステップＳ２０１）。タイムスタンプ取得部１０７は，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリーム読み出し位置を得るまでタイムスタンプストリームＡの復号を実行し，タイムスタンプを取得する（ステップＳ２０２）。ストリーム転送部１０５は，タイムスタンプ取得部１０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームをストリームバッファ１０１から読み出して，デコーダバッファ１０６へ転送する（ステップＳ２０３）。
【００４３】
以上の動作を映像Ｂと映像Ｃと映像Ｄについて，同様に行う。
【００４４】
続いて，図４に示すフローチャートに従って，ストリーム復号部１０９は，デコーダバッファ１０６に蓄積されているストリームを読み出して復号する（ステップＳ３０１，Ｓ３０２）。
【００４５】
以上の処理により，映像Ａから映像Ｄまで，タイムスタンプを連続して，映像を復号して再生し続けることができる。
【００４６】
各ストリームの読み出し位置とタイムスタンプの情報は４個の映像ストリームに対して１つのストリーム（多重化タイムスタンプストリーム）として作成してあっても良い。この場合には，タイムスタンプ取得部１０７は４個のタイムスタンプストリームの代わりに，多重化タイムスタンプストリームを読み込んで，ストリーム読み出し位置におけるタイムスタンプ情報を得る。
【００４７】
タイムスタンプ取得部１０７は，タイムスタンプストリームを復号してタイムスタンプと読み出し位置を得たが，予め映像ストリーム中にタイムスタンプ情報を入れておき，それを利用しても良い。
【００４８】
この場合の映像復号装置の構成を，図５に構成例２として示す。構成例２では，タイムスタンプ取得部２０７が前述した構成例１と異なり，他の部分については構成例１と同様である。
【００４９】
構成例２の場合の映像ストリームの構成には，２種類のパターンが想定される。第１のストリーム構成を，図６（Ａ）にストリーム構成例１として示す。ストリーム構成例１では，読み出し位置に特定のビットパターンのスタートコードを設定しておき，そのスタートコードの近くにタイムスタンプ情報を設定する。この場合，タイムスタンプ取得部２０７は，ストリームバッファに蓄積される各ストリームについて，ストリーム中のスタートコードを探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているタイムスタンプ情報を得る。
【００５０】
第２のストリーム構成を，図６（Ｂ）にストリーム構成例２として示す。ストリーム構成例２では，予め設定した特定の位置Ｘの近くにタイムスタンプ情報と読み出し位置情報を設定する。Ｘの設定の仕方によっては，ストリームの先頭付近に設定することもできるし，ストリームの末尾付近に設定することもできる。また，それぞれのタイムスタンプ情報を別々の位置に設定しても良い。この場合，タイムスタンプ取得部２０７は，ストリームバッファに蓄積される各ストリームについて，符号化データ中に予め設定されている，タイムスタンプ情報と読み出し位置情報を復号することで，ストリーム読み出し位置におけるタイムスタンプ情報を得る。さらに，Ｘの値を映像ストリームの特定位置に含めておくこともできる。この場合には，まずＸの値を復号したのちに，タイムスタンプ情報と読み出し位置情報を復号する。
【００５１】
タイムスタンプ取得部２０７以外の処理は同様であり，図２，図３，図４のフローチャートに従って動作する。
【００５２】
〔第２の例〕
第２の例では，４個（Ａ，Ｂ，Ｃ，Ｄ）のストリームで構成される映像情報の符号化データ（ストリーム）のうち２個のストリームを復号して画像情報を得る映像復号装置の例を示す。各ストリームの読み出し位置とタイムスタンプは予め設定してあり，映像符号化データとは別ストリーム（タイムスタンプストリーム）として１つずつ作成してあるものとする。
【００５３】
図７に，第２の例の映像復号装置の構成例１を示す。ストリームＡが蓄積されるストリームバッファ３０１と，ストリームＢが蓄積されるストリームバッファ３０２と，ストリームＣが蓄積されるストリームバッファ３０３と，ストリームＤが蓄積されるストリームバッファ３０４と，各ストリームに対するタイムスタンプストリーム（Ａ，Ｂ，Ｃ，Ｄ）から，各ストリームのストリーム読み出し位置におけるタイムスタンプ情報を得るタイムスタンプ取得部３０７と，ストリームを復号して画像情報を作成するストリーム復号部（Ｐ，Ｑ）３１１，３１３と，ストリーム復号部（Ｐ，Ｑ）３１１，３１３がそれぞれストリームを読み出すデコーダバッファ（Ｐ，Ｑ）３１０，３１２と，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部３０８と，ストリームバッファ（Ａ，Ｂ，Ｃ，Ｄ）３０１〜３０４から，復号ストリーム設定部３０８で設定したタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを読み出して，デコーダバッファ３１０，３１２へ転送するストリーム転送部３０５とから構成される。ストリームバッファ（Ａ，Ｂ，Ｃ，Ｄ）３０１〜３０４へは逐次ストリームが蓄積されて，バッファには常に十分な量のストリームが蓄積されているものとする。
【００５４】
以上の前提で，映像Ａ，Ｂ，Ｃ，Ｄのうち，以下の順序で２つの映像を読み出して復号するものとする。
（１）  時刻Ｔ１〜Ｔ２：映像Ａと映像Ｂ
（２）  時刻Ｔ２〜Ｔ３：映像Ｃと映像Ｄ
まずストリームバッファ３０１〜３０４からデコーダバッファ３１０，３１２へ転送するまでの処理を示す。フローチャートは図２と同様である。タイムスタンプ取得部３０７は，タイムスタンプストリーム（Ａ，Ｂ，Ｃ，Ｄ）を復号して，各映像ストリームの読み出し位置とタイムスタンプ情報を予め得ておく（ステップＳ１０１，Ｓ１０２）。
【００５５】
復号ストリーム設定部３０８は，ストリームＡについて時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出し，続いてストリームＢについて時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部３０５を設定する（ステップＳ１０３）。ストリーム転送部３０５は，タイムスタンプ取得部３０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ３０１から読み出して，デコーダバッファ３１０へ転送し，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＢをストリームバッファ３０２から読み出して，デコーダバッファ３１２へ転送する（ステップＳ１０４）。
【００５６】
次に，復号ストリーム設定部３０８は，ストリームＣについて時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームを読み出し，ストリームＤについて時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部３０５を設定する。ストリーム転送部３０５は，タイムスタンプ取得部３０７で得られた読み出し位置の情報を使い，時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームＣをストリームバッファ３０３から読み出して，デコーダバッファ３１０へ転送し，時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームＤをストリームバッファ３０４から読み出して，デコーダバッファ３１２へ転送する。
【００５７】
このストリームバッファ３０１〜３０４からデコーダバッファ３１０，３１２へ転送するまでの処理は，図３に示すフローチャートに従っても良い。復号ストリーム設定部３０８は，ストリームＡについて，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部３０５を設定し，ストリームＢについて，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部３０５を設定する（ステップＳ２０１）。
【００５８】
タイムスタンプ取得部３０７は，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリーム読み出し位置を得るまでタイムスタンプストリームＡの復号を実行し，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリーム読み出し位置を得るまでタイムスタンプストリームＢの復号を実行する（ステップＳ２０２）。
【００５９】
ストリーム転送部３０５は，タイムスタンプ取得部３０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ３０１から読み出して，デコーダバッファ３１０へ転送し，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＢをストリームバッファ３０２から読み出して，デコーダバッファ３１２へ転送する（ステップＳ２０３）。
【００６０】
以上の動作を映像Ｃと映像Ｄについて同様に行う。ストリーム転送部３０５は，デコーダバッファ（Ｐ）３１０またはデコーダバッファ（Ｑ）３１２へストリームを転送するが，どちらのデコーダバッファへ転送しても良い。
【００６１】
続いて，図４に示すフローチャートに従って，ストリーム復号部（Ｐ）３１１は，デコーダバッファ３１０に蓄積されているストリームを読み出して復号する（ステップＳ３０１，Ｓ３０２）。同様にストリーム復号部（Ｑ）３１３は，デコーダバッファ３１２に蓄積されているストリームを読み出して復号する。ストリーム復号部３１１とストリーム復号部３１３は独立して処理を実行する。
【００６２】
以上の処理により，映像Ａから映像Ｄまで，タイムスタンプを連続して，映像を復号して再生し続けることができる。
【００６３】
第１の例と同様に，各ストリームの読み出し位置とタイムスタンプの情報は４個の映像ストリームに対して１つのストリーム（多重化タイムスタンプストリーム）として作成してあっても良い。この場合にはタイムスタンプ取得部３０７は４個のタイムスタンプストリームの代わりに，多重化タイムスタンプストリームを読み込んでストリーム読み出し位置におけるタイムスタンプ情報を得る。
【００６４】
また，第１の例と同様に，タイムスタンプ取得部３０７は，タイムスタンプストリームを復号してタイムスタンプと読み出し位置を得たが，予め映像ストリーム中にタイムスタンプ情報を入れておき，それを利用しても良い。
【００６５】
この場合の映像復号装置の構成を，図８に構成例２として示す。映像ストリームの構成は，第１の例と同様に，図６（Ａ）または図６（Ｂ）の構成になる。図８に示すタイムスタンプ取得部４０７以外の処理は，図７に示した構成例１と同様であり，図２，図３，図４のフローチャートに従って動作する。
【００６６】
〔第３の例〕
第３の例では，４個（Ａ，Ｂ，Ｃ，Ｄ）の映像ストリームが予め多重化された多重化ストリームから，１個の映像ストリームを復号して画像情報を得る映像復号装置の例を示す。多重化ストリーム中の各映像ストリームはストリーム識別子で区別される。多重化ストリームの読み出し位置とストリーム識別子とタイムスタンプは予め設定してあり，多重化ストリームとは別ストリーム（多重化タイムスタンプストリーム）として作成してあるものとする。
【００６７】
図９に，第３の例の映像復号装置の構成例１を示す。多重化ストリームが蓄積されるストリームバッファ５０１と，多重化タイムスタンプストリームから，ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得部５０７と，ストリームを復号して画像情報を作成するストリーム復号部５０９と，ストリーム復号部５０９がストリームを読み出すデコーダバッファ５０６と，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部５０８と，ストリームバッファ５０１から，復号ストリーム設定部５０８で設定したストリーム識別子とタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを読み出して，デコーダバッファ５０６へ転送するストリーム転送部５０５とから構成される。ストリームバッファ５０１へは逐次多重化ストリームが蓄積されて，バッファには常に十分な量のストリームが蓄積されているものとする。
【００６８】
以上の前提で，第１の例と同様に，映像Ａ，Ｂ，Ｃ，Ｄのうち，以下の順序で１つの映像を読み出して復号するものとする。
（１）  時刻Ｔ１〜Ｔ２：映像Ａ
（２）  時刻Ｔ２〜Ｔ３：映像Ｂ
（３）  時刻Ｔ３〜Ｔ４：映像Ｃ
（４）  時刻Ｔ４〜Ｔ５：映像Ｄ
まず，ストリームバッファ５０１からデコーダバッファ５０６へ転送するまでの処理を示す。フローチャートは図２と同様である。タイムスタンプ取得部５０７は，多重化タイムスタンプストリームを復号して，各映像ストリーム（Ａ，Ｂ，Ｃ，Ｄ）の読み出し位置とストリーム識別子とタイムスタンプ情報を予め得ておく（ステップＳ１０１，Ｓ１０２）。
【００６９】
復号ストリーム設定部５０８は，ストリームＡについて時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部５０５を設定する（ステップＳ１０３）。ストリーム転送部５０５は，タイムスタンプ取得部５０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ５０１から読み出して，デコーダバッファ５０６へ転送する（ステップＳ１０４）。
【００７０】
次に，復号ストリーム設定部５０８は，ストリームＢについて時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部５０５を設定する。ストリーム転送部５０５は，タイムスタンプ取得部５０７で得られた読み出し位置の情報を使い，時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームＢをストリームバッファ５０１から読み出して，デコーダバッファ５０６へ転送する。
【００７１】
映像Ｃと映像Ｄについても同様な処理を行い，映像Ｃについては時刻Ｔ３〜Ｔ４，映像Ｄについては時刻Ｔ４〜Ｔ５のストリームを，ストリームバッファ５０１から読み出して，デコーダバッファ５０６へ転送する。
【００７２】
このストリームバッファ５０１からデコーダバッファ５０６へ転送するまでの処理は，図３に示すフローチャートに従っても良い。復号ストリーム設定部５０８は，ストリームＡについて，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部５０５を設定する（ステップＳ２０１）。タイムスタンプ取得部５０７は，ストリームＡの時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリーム読み出し位置を得るまで多重化タイムスタンプストリームの復号を実行する（ステップＳ２０２）。ストリーム転送部５０５は，タイムスタンプ取得部５０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ５０１から読み出して，デコーダバッファ５０６へ転送する（ステップＳ２０３）。
【００７３】
以上の動作を映像Ｂと映像Ｃと映像Ｄについて同様に行う。
【００７４】
続いて，図４に示すフローチャートに従って，ストリーム復号部５０９は，デコーダバッファ５０６に蓄積されているストリームを読み出して復号する（ステップＳ３０１，Ｓ３０２）。
【００７５】
以上の処理により，映像Ａから映像Ｄまで，タイムスタンプを連続して，映像を復号して再生し続けることができる。
【００７６】
タイムスタンプ取得部５０７は，多重化タイムスタンプストリームを復号してストリーム識別子とタイムスタンプと読み出し位置を得たが，予め多重化ストリーム中にストリーム識別子とタイムスタンプ情報を入れておき，それを利用しても良い。
【００７７】
この場合の映像復号装置の構成を，図１０に構成例２として示す。この場合の映像ストリームの構成には，２種類のパターンが想定される。第１のストリーム構成を，図１１（Ａ）にストリーム構成例３として示す。構成例３では，読み出し位置に特定のビットパターンのスタートコードを設定しておき，そのスタートコードの近くにストリーム識別子とタイムスタンプ情報を設定する。この場合，タイムスタンプ取得部６０７は，ストリームバッファ６０１に蓄積される多重化ストリームについて，ストリーム中のスタートコードを探索することで，ストリーム読み出し位置を特定し，そのストリーム読み出し位置に予め設定されているストリーム識別子とタイムスタンプ情報を得る。
【００７８】
第２のストリーム構成を，図１１（Ｂ）にストリーム構成例４として示す。構成例４では，予め設定した特定の位置Ｘの近くにストリーム識別子とタイムスタンプ情報と読み出し位置情報を設定する。Ｘの設定の仕方によっては，ストリームの先頭付近に設定することもできるし，ストリームの末尾付近に設定することもできる。また，それぞれのタイムスタンプ情報を別々の位置に設定しても良い。この場合，タイムスタンプ取得部６０７は，ストリームバッファ６０１に蓄積される多重化ストリームについて，符号化データ中に予め設定されている，ストリーム読み出し位置情報とストリーム識別子とタイムスタンプ情報を復号することで，ストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得る。さらに，Ｘの値を映像ストリームの特定位置に含めておくこともできる。この場合には，まずＸの値を復号したのちに，ストリーム識別子とタイムスタンプ情報を復号する。
【００７９】
タイムスタンプ取得部６０７以外の処理は，前述した図９に示す構成例１の場合と同様であり，図２，図３，図４のフローチャートに従って動作する。
【００８０】
〔第４の例〕
第４の例では，４個（Ａ，Ｂ，Ｃ，Ｄ）の映像ストリームが予め多重化された多重化ストリームから，２個の映像ストリームを復号して画像情報を得る映像復号装置の例を示す。多重化ストリーム中の各映像ストリームは，ストリーム識別子で区別される。多重化ストリームの読み出し位置とストリーム識別子とタイムスタンプは予め設定してあり，多重化ストリームとは別ストリーム（多重化タイムスタンプストリーム）として作成してあるものとする。
【００８１】
図１２に，第４の例の映像復号装置の構成例１を示す。多重化ストリームが蓄積されるストリームバッファ７０１と，多重化タイムスタンプストリームから，各ストリームのストリーム読み出し位置におけるストリーム識別子とタイムスタンプ情報を得るタイムスタンプ取得部７０７と，ストリームを復号して画像情報を作成するストリーム復号部（Ｐ，Ｑ）７１１，７１３と，ストリーム復号部（Ｐ，Ｑ）７１１，７１３がそれぞれストリームを読み出すデコーダバッファ（Ｐ，Ｑ）７１０，７１２と，復号するストリームと復号を開始するタイムスタンプを設定する復号ストリーム設定部７０８と，ストリームバッファ７０１から，復号ストリーム設定部７０８で設定したストリーム識別子とタイムスタンプに対応する読み出し位置から次の読み出し位置までのストリームを読み出して，デコーダバッファへ転送するストリーム転送部７０５とから構成される。ストリームバッファ７０１へは逐次ストリームが蓄積されて，バッファには常に十分な量のストリームが蓄積されているものとする。
【００８２】
以上の前提で，映像Ａ，Ｂ，Ｃ，Ｄのうち，以下の順序で２つの映像を読み出して復号するものとする。
（１）  時刻Ｔ１〜Ｔ２：映像Ａと映像Ｂ
（２）  時刻Ｔ２〜Ｔ３：映像Ｃと映像Ｄ
まず，ストリームバッファ７０１からデコーダバッファ７１０，７１２へ転送するまでの処理を示す。フローチャートは図２と同様である。タイムスタンプ取得部７０７は，多重化タイムスタンプストリームを復号して，各映像ストリームの読み出し位置とストリーム識別子とタイムスタンプ情報を予め得ておく（ステップＳ１０１，Ｓ１０２）。
【００８３】
復号ストリーム設定部７０８は，ストリームＡについて時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出し，続いてストリームＢについて時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部７０５を設定する（ステップＳ１０３）。ストリーム転送部７０５は，タイムスタンプ取得部７０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ７０１から読み出して，デコーダバッファ（Ｐ）７１０へ転送し，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＢをストリームバッファ７０１から読み出して，デコーダバッファ（Ｑ）７１２へ転送する（ステップＳ１０４）。
【００８４】
次に，復号ストリーム設定部７０８は，ストリームＣについて時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームを読み出し，ストリームＤについて時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部７０５を設定する。ストリーム転送部７０５は，タイムスタンプ取得部７０７で得られた読み出し位置の情報を使い，時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームＣをストリームバッファ７０１から読み出して，デコーダバッファ（Ｐ）７１０へ転送し，時刻Ｔ２から時刻Ｔ３までのタイムスタンプに対応するストリームＤをストリームバッファ７０１から読み出して，デコーダバッファ（Ｑ）７１２へ転送する。
【００８５】
このストリームバッファ７０１からデコーダバッファ７１０，７１２へ転送するまでの処理は，図３に示すフローチャートに従っても良い。復号ストリーム設定部７０８は，ストリームＡについて，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部７０５を設定し，ストリームＢについて，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームを読み出すようにストリーム転送部７０５を設定する（ステップＳ２０１）。タイムスタンプ取得部７０７は，ストリームＡの時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリーム読み出し位置を得るまで多重化タイムスタンプストリームの復号を実行し，ストリームＢの時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリーム読み出し位置を得るまでタイムスタンプストリームの復号を実行する（ステップＳ２０２）。ストリーム転送部７０５は，タイムスタンプ取得部７０７で得られた読み出し位置の情報を使い，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＡをストリームバッファ７０１から読み出して，デコーダバッファ（Ｐ）７１０へ転送し，時刻Ｔ１から時刻Ｔ２までのタイムスタンプに対応するストリームＢをストリームバッファ７０１から読み出して，デコーダバッファ（Ｑ）７１２へ転送する（ステップＳ２０３）。
【００８６】
以上の動作を映像Ｃと映像Ｄについて同様に行う。ストリーム転送部７０５は，デコーダバッファ（Ｐ）７１０またはデコーダバッファ（Ｑ）７１２へストリームを転送するが，どちらのデコーダバッファへ転送しても良い。
【００８７】
続いて，図４に示すフローチャートに従って，ストリーム復号部（Ｐ）７１１は，デコーダバッファ（Ｐ）７１０に蓄積されているストリームを読み出して復号する（ステップＳ３０１，Ｓ３０２）。同様にストリーム復号部（Ｑ）７１３は，デコーダバッファ（Ｑ）７１２に蓄積されているストリームを読み出して復号する。ストリーム復号部（Ｐ）７１１とストリーム復号部（Ｑ）７１３は独立して処理を実行する。
【００８８】
以上の処理により，映像Ａから映像Ｄまで，タイムスタンプを連続して，映像を復号して再生し続けることができる。
【００８９】
また，第３の例と同様に，タイムスタンプ取得部７０７は，タイムスタンプストリームを復号してタイムスタンプと読み出し位置を得たが，予め映像ストリーム中にストリーム識別子とタイムスタンプ情報を入れておき，それを利用しても良い。
【００９０】
この場合の映像復号装置の構成を，図１３に構成例２として示す。映像ストリームの構成は第３の例と同様に，図１１（Ａ）または図１１（Ｂ）の構成になる。タイムスタンプ取得部８０７以外の処理は，図１２で説明した構成例１の場合と同様であり，図２，図３，図４のフローチャートに従って動作する。
【００９１】
以上の映像復号の処理は，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【００９２】
図１４は，以上説明した映像復号装置をソフトウェアプログラムにより実現する場合のシステム構成の一例を示す図である。
【００９３】
ＣＰＵ１０は，映像復号プログラムの命令をフェッチして実行する処理装置である。ＣＰＵ１０には，システムバスを介して映像ストリーム入力装置１１，プログラム記憶装置１２，メモリ１４，表示制御装置１５，入力装置１７が接続されている。
【００９４】
映像ストリーム入力装置１１は，符号化された映像ストリームをネットワーク通信によりまたは放送受信により入力する。プログラム記憶装置１２は，ハードディスク装置の外部記憶装置であって，ＣＰＵ１０に映像復号処理を行わせるための映像復号プログラム１３が格納されている。
【００９５】
映像復号プログラム１３は，システムの立ち上げ時にメモリ１４にロードされ，映像ストリームの復号時にＣＰＵ１０に読み込まれて実行される。また，メモリ１４には，映像ストリーム入力装置１１が入力した映像ストリームが蓄積されるストリームバッファや，復号するストリームが格納されるデコーダバッファが設けられる。
【００９６】
復号された映像は，表示制御装置１５を介して表示装置１６に表示される。入力装置１７は，キーボードやリモコンその他の入力装置であり，映像を選択する選択イベントの入力などに用いられる。
【符号の説明】
【００９７】
１０１〜１０４，２０１〜２０４，３０１〜３０４，４０１〜４０４，５０１，６０１，７０１，８０１  ストリームバッファ
１０５，２０５，３０５，４０５，５０５，６０５，７０５，８０５  ストリーム転送部
１０６，２０６，３１０，３１２，４１０，４１２，５０６，６０６，７１０，７１２，８１０，８１２  デコーダバッファ
１０７，２０７，３０７，４０７，６０７，７０７，８０７  タイムスタンプ取得部
１０８，２０８，３０８，４０８，５０８，６０８，７０８，８０８  復号ストリーム設定部
１０９，２０９，３１１，３１３，４１１，４１３，５０９，６０９，７１１，７１３，８１１，８１３  ストリーム復号部
【図１】
2011066587.tif 000003
【図２】
2011066587.tif 000004
【図３】
2011066587.tif 000005
【図４】
2011066587.tif 000006
【図５】
2011066587.tif 000007
【図６】
2011066587.tif 000008
【図７】
2011066587.tif 000009
【図８】
2011066587.tif 000010
【図９】
2011066587.tif 000011
【図１０】
2011066587.tif 000012
【図１１】
2011066587.tif 000013
【図１２】
2011066587.tif 000014
【図１３】
2011066587.tif 000015
【図１４】
2011066587.tif 000016