(57)【要約】【課題】複数のストリームの復号処理を時分割して並列に行う際に、品質の保証を必要とするストリームの表示品質を保証するとともに、復号処理リソースを効率良く利用できるようにする。【解決手段】受付部１０１は、復号品質の保証を必要とするギャランティ型ストリームについては、最大復号処理リソース量ｘａと現在割り当てられている復号処理リソース量ｘｃとを加算し、加算結果が最大で利用可能な復号処理リソース量Ｘよりも小さい場合に復号開始依頼を受け付け、復号品質の保証を必要としないベストエフォート型ストリームについては、常に復号開始依頼を受け付ける。そして、切替部１０２は、ギャランティ型ストリームを復号対象のストリームとして、ベストエフォート型ストリームよりも優先的に切り替える。【選択図】図１
2010283683.tif 000002
【特許請求の範囲】
【請求項１】
入力される複数のストリームを並列に復号するストリーム復号装置であって、
前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付手段と、
前記受付手段によって復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替手段と、
前記切替手段によって切り替えられたストリームを復号する復号手段とを有し、
前記受付手段は、復号品質の保証を必要とする第１のストリームについては、前記復号品質を保証して前記復号手段による復号が可能な場合に前記復号開始依頼を受け付け、
前記切替手段は、前記第１のストリームを前記復号対象のストリームとして、復号品質の保証を必要としない第２のストリームよりも優先的に切り替えることを特徴とするストリーム復号装置。
【請求項２】
入力される複数のストリームを並列に復号するストリーム復号装置であって、
前記ストリームの属性情報に基づいて、復号品質の保証の有無を決定する品質決定手段と、
前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付手段と、
前記受付手段によって復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替手段と、
前記切替手段によって切り替えられたストリームを復号する復号手段とを有し、
前記受付手段は、前記品質決定手段によって復号品質の保証を必要とすると決定された第１のストリームについては、前記復号品質を保証して前記復号手段による復号が可能な場合に前記復号開始依頼を受け付け、
前記切替手段は、前記第１のストリームを前記復号対象のストリームとして、前記品質決定手段によって復号品質の保証を必要としないと決定された第２のストリームよりも優先的に切り替えることを特徴とするストリーム復号装置。
【請求項３】
前記品質決定手段は、表示を行うストリームについては、前記第１のストリームと決定し、表示を行われないストリームについては、前記第２のストリームと決定することを特徴とする請求項２に記載のストリーム復号装置。
【請求項４】
前記品質決定手段は、動画ストリームについては、前記第１のストリームと決定し、静止画ストリームについては、前記第２のストリームと決定することを特徴とする請求項２又は３に記載のストリーム復号装置。
【請求項５】
前記品質決定手段は、ネットワークの帯域が保証されているストリームについては、前記第１のストリームと決定し、ネットワークの帯域が保証されていないストリームについては、前記第２のストリームと決定することを特徴とする請求項２〜４の何れか１項に記載のストリーム復号装置。
【請求項６】
前記受付手段は、前記第２のストリームに対して復号処理優先度を付与し、
前記切替手段は、前記第１のストリームを復号対象のストリームとして優先的に切り替えた後、前記第２のストリームに対しては、前記復号処理優先度に従って復号対象のストリームを切り替えることを特徴とする請求項１〜５の何れか１項に記載のストリーム復号装置。
【請求項７】
入力される複数のストリームを並列に復号するストリーム復号方法であって、
前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付工程と、
前記受付工程において復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替工程と、
前記切替工程において切り替えられたストリームを復号する復号工程とを有し、
前記受付工程においては、復号品質の保証を必要とする第１のストリームについては、前記復号品質を保証して前記復号工程における復号が可能な場合に前記復号開始依頼を受け付け、
前記切替工程においては、前記第１のストリームを前記復号対象のストリームとして、復号品質の保証を必要としない第２のストリームよりも優先的に切り替えることを特徴とするストリーム復号方法。
【請求項８】
入力される複数のストリームを並列に復号するストリーム復号方法であって、
前記ストリームの属性情報に基づいて、復号品質の保証の有無を決定する品質決定工程と、
前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付工程と、
前記受付工程において復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替工程と、
前記切替工程において切り替えられたストリームを復号する復号工程とを有し、
前記受付工程においては、前記品質決定工程において復号品質の保証を必要とすると決定された第１のストリームについては、前記復号品質を保証して前記復号工程における復号が可能な場合に前記復号開始依頼を受け付け、
前記切替工程においては、前記第１のストリームを前記復号対象のストリームとして、前記品質決定工程において復号品質の保証を必要としないと決定された第２のストリームよりも優先的に切り替えることを特徴とするストリーム復号方法。
【請求項９】
入力される複数のストリームを並列に復号するようコンピュータに実行させるプログラムであって、
前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付工程と、
前記受付工程において復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替工程と、
前記切替工程において切り替えられたストリームを復号する復号工程とをコンピュータに実行させ、
前記受付工程においては、復号品質の保証を必要とする第１のストリームについては、前記復号品質を保証して前記復号工程における復号が可能な場合に前記復号開始依頼を受け付け、
前記切替工程においては、前記第１のストリームを前記復号対象のストリームとして、復号品質の保証を必要としない第２のストリームよりも優先的に切り替えるようコンピュータに実行させることを特徴とするプログラム。
【請求項１０】
入力される複数のストリームを並列に復号するようコンピュータに実行させるプログラムであって、
前記ストリームの属性情報に基づいて、復号品質の保証の有無を決定する品質決定工程と、
前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付工程と、
前記受付工程において復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替工程と、
前記切替工程において切り替えられたストリームを復号する復号工程とをコンピュータに実行させ、
前記受付工程においては、前記品質決定工程において復号品質の保証を必要とすると決定された第１のストリームについては、前記復号品質を保証して前記復号工程における復号が可能な場合に前記復号開始依頼を受け付け、
前記切替工程においては、前記第１のストリームを前記復号対象のストリームとして、前記品質決定工程において復号品質の保証を必要としないと決定された第２のストリームよりも優先的に切り替えるようコンピュータに実行させることを特徴とするプログラム。
【請求項１１】
請求項９又は１０に記載のプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はストリーム復号装置、ストリーム復号方法、プログラム及び記憶媒体に関し、特に、複数のストリームを時分割して並列に復号するために用いて好適な技術に関する。
【背景技術】
【０００２】
近年、放送及び通信のインフラが成熟したことに伴い、エンドユーザは多様な経路から膨大な数の映像・音声ストリームを容易に入手することが可能となっている。また、薄型ディスプレイやプロジェクタに代表されるように、表示装置が大型化することにより、複数のストリームを１つの表示装置上で同時に視聴したいという新たな要求が生じている。
【０００３】
このような状況の中、近年、家庭用テレビやレコーダでは、複数のストリームを単一のシステムで取り扱うことを可能とする技術が発達している。このシステムの中心となるのは、圧縮されたストリームの復号を行うストリーム復号モジュール（以下、デコーダと称す）である。例えばＤＳＰと称される専用プロセッサでは、複数のストリームを単一のプロセッサで時分割して並列に処理することが可能である。
【０００４】
また、情報圧縮技術が発達したことにより、映像・音声ストリームのフォーマットが多様化している。このような多様化に対応するため、デコーダでは、単一のモジュールでＭＰＥＧ２、Ｈ．２６４、ＪＰＥＧなどといった多様なフォーマットに対応可能になってきている。
【０００５】
ここで、例えば動画ストリームには、それぞれの画面間の表示間隔を表すフレームレートが設定されており、表示品質を保つためには一定時間内に一定量の復号処理を行う必要がある。一方、デコーダが提供する復号処理リソースは有限であるため、ストリームの表示品質を保つためには、デコーダが提供する復号処理リソースの範囲内でデコーダに復号処理を依頼しなければならない。特に、複数のストリームを同時に復号処理が可能なデコーダに対して復号処理を依頼する場合には、依頼した復号処理の総和が復号処理リソースの範囲内に収まる必要がある。
【０００６】
複数のストリームを単一のデコーダで復号処理する際に、デコーダの提供する復号処理リソースの範囲内でデコーダに復号処理を依頼する技術としては、例えば、特許文献１または特許文献２に開示されている。特許文献１に記載のＭＰＥＧデコーダでは、フレームレートなどのストリームシーケンスヘッダ情報に応じて予め割り当て量を決定し、デコードエラーの発生を抑制している。また、特許文献２に記載の動画像復号化装置では、必要となる復号処理リソース量の総和をシーケンスヘッダ情報より見積り、デコーダが提供する復号処理リソースと比較する。そして、比較した結果、復号処理リソースの不足が予測される場合には、優先度の低いストリームをダウンコンバートしている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−３０９３７１号公報
【特許文献２】特開２００２−１１２１９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の方法では、表示品質の保証と復号処理リソースの有効利用とが同時に実現されていない。以下、表示品質の保証を優先した場合に、復号処理リソースの有効利用が十分に実現されていない複数の例を挙げる。
【０００９】
ＭＰＥＧ２の放送ストリームにはＨＤ（High Definition）モードとＳＤ（Standard Definition）モードとが存在し、同一ストリームであっても放送時間帯によってこれらのモードが変化する。そのため、表示品質を保証するためにはＨＤモードをある程度余裕をもって復号処理できる復号処理リソースを常に確保しておく必要がある。その結果として、実際の放送ストリームの内容がＳＤモードであった場合には、確保したデコーダの処理能力に余裕ができ、復号処理リソースを十分に活用できないこととなる。
【００１０】
また、より細かな具体例としては、ＭＰＥＧ２ビデオストリームは、Ｉピクチャ、Ｐピクチャ及びＢピクチャで構成されており、通常Ｐピクチャ及びＢピクチャの復号処理はＩピクチャの復号処理よりも重い。そこで、Ｐピクチャ及びＢピクチャの復号処理に合わせてデコーダの復号処理リソースを確保すると、Ｉピクチャの処理時にはデコーダの処理能力に余裕ができ、復号処理リソースを十分に活用できないこととなる。
【００１１】
さらに、フレームレートや処理モードが変化しないストリームにおいても、含まれるコンテンツの内容の変化に応じて、必要となるデコーダの復号処理リソースが大きく変化する。表示品質を保証するためには、最大負荷に合わせてデコーダの復号処理リソースを確保する必要がある。したがって、負荷の低いシーンを復号化する場合には、確保したデコーダの処理能力に余裕ができ、復号処理リソースを十分に活用できないこととなる。
【００１２】
図１１は、表示品質の保証を優先した場合における複数のストリームに対する復号処理リソースの割り当て方法の概略を説明する図である。
図１１において、１１０１〜１１０４はデコーダに対して復号開始依頼が要求されたストリームである。図１１に示す例では、放送受信Ａストリーム１１０１、放送受信Ｂストリーム１１０２、放送受信Ｃストリーム１１０３、静止画デコードストリーム１１０４の順に復号開始依頼が要求されたものとする。
【００１３】
また、１１０５〜１１０７は、デコーダが各ストリームに復号処理リソースを割り当てる際の基準時間を表し、例えば放送受信Ａストリーム１１０１のフレームレートを考慮して１／３０ｓなどに設定される。
【００１４】
ここで、表示品質を保証するためには、すべての基準時間において復号処理リソースが不足しないことが求められる。図１１に示す例では、各ストリームの最大負荷を考慮すると、復号開始依頼を受け付け可能なストリームは、放送受信Ａストリーム１１０１、放送受信Ｂストリーム１１０２のみとなる。一方、基準時間ｔ２及び基準時間ｔ３においては、放送受信Ａストリーム１１０１、及び放送受信Ｂストリーム１１０２の復号処理が基準時間ｔ１での復号処理に比べ少ない。その結果、復号処理リソースの空き時間１１０８、１１０９が生じている。
【００１５】
このように、表示品質を保証するために各ストリームの最大負荷をもとに復号開始依頼の受け付け可否を判定すると、必要となる復号処理リソースを最大限に活用することができない。また、復号処理リソースに空き時間が発生した場合においても、他のストリームに復号処理を割り当てることはできない。
【００１６】
また、前述したパターンとは逆に、復号処理リソースの有効利用を優先して、表示品質の保証が十分に実現されない場合もある。このようなパターンは、例えば各ストリームに優先度を付加し、全てのストリームを一旦受け付けた後に、優先度に基づいて復号処理リソースを割り当てる方法が相当する。
【００１７】
図１２は、優先度を利用して復号処理リソースの有効利用を実現した場合における複数のストリームに対する復号処理リソースの割り当て方法の概略を説明する図である。
図１２において、１２０１〜１２０４はデコーダに対して復号開始依頼が要求されたストリームである。図１２に示す例では、復号処理の優先度順は、放送受信Ａストリーム１２０１、放送受信Ｂストリーム１２０２、放送受信Ｃストリーム１２０３、静止画デコードストリーム１２０４の順とする。
【００１８】
また、１２０５〜１２０７は、デコーダが各ストリームに復号処理リソースを割り当てる際の基準時間を表し、例えば放送受信Ａストリーム１２０１のフレームレートを考慮して１／３０ｓなどに設定される。
【００１９】
ここで、基準時間ｔ２及び基準時間ｔ３においては、放送受信Ａストリーム１２０１、及び放送受信Ｂストリーム１２０２の復号処理が軽いため、次に復号処理優先度の高い放送受信Ｃストリーム１２０３に復号処理リソースが割り当てられ、復号処理がなされる。しかしながら、放送受信Ｃストリーム１２０３を完全に復号処理するために十分な復号処理リソースは確保されず、その結果として不足時間１２０８、１２０９が生じている。ここで、放送受信Ｃストリーム１２０３が復号品質を保証すべきストリームであった場合には、不足時間が生じる復号処理は、その要求を満たさないこととなる。
【００２０】
このように、復号処理リソースの有効利用するために優先度を利用して復号処理リソースを割り当てると、復号品質を保証すべきストリームを部分的にしか復号処理しない可能性があり、表示品質が保証できない。
【００２１】
本発明は前述の問題点に鑑み、複数のストリームの復号処理を時分割して並列に行う際に、品質の保証を必要とするストリームの表示品質を保証するとともに、復号処理リソースを効率良く利用できるようにすることを目的としている。
【課題を解決するための手段】
【００２２】
本発明のストリーム復号装置は、入力される複数のストリームを並列に復号するストリーム復号装置であって、前記複数のストリームに対し、復号開始依頼をストリーム単位で受け付ける受付手段と、前記受付手段によって復号開始依頼が受け付けられたストリームの中から復号対象のストリームを切り替える切替手段と、前記切替手段によって切り替えられたストリームを復号する復号手段とを有し、前記受付手段は、復号品質の保証を必要とする第１のストリームについては、前記復号品質を保証して前記復号手段による復号が可能な場合に前記復号開始依頼を受け付け、前記切替手段は、前記第１のストリームを前記復号対象のストリームとして、復号品質の保証を必要としない第２のストリームよりも優先的に切り替えることを特徴とする。
【発明の効果】
【００２３】
本発明によれば、複数のストリームの復号処理を時分割して並列に行う場合において、ギャランティ型ストリームの表示品質を保証するとともに、復号処理リソースを有効に利用することができる。
【図面の簡単な説明】
【００２４】
【図１】第１の実施形態のストリーム復号装置の構成例を示すブロック図である。
【図２】受付部に入力されるストリームの詳細情報の一例を示す図である。
【図３】第１の実施形態における復号処理手順の一例を示すフローチャートである。
【図４】復号開始依頼を受け付ける処理手順の一例を示すフローチャートである。
【図５】復号終了依頼を受け付ける処理手順の一例を示すフローチャートである。
【図６】ストリームを選択する処理手順の一例を示すフローチャートである。
【図７】復号処理リソースの最大必要量の見積もり一覧例を示す図である。
【図８】受付可否判定結果の一例を示す図である。
【図９】第２の実施形態のストリーム復号装置の構成例を示すブロック図である。
【図１０】第２の実施形態の復号処理手順の一例を示すフローチャートである。
【図１１】復号処理リソースの割り当て方法の概略を説明する図である。
【図１２】復号処理リソースの割り当て方法の概略を説明する図である。
【図１３】図６に示した復号処理を適用したときの処理結果の一例を示す図である。
【図１４】復号処理を行った場合の映像の表示画面の一例を示す図である。
【図１５】サービス種別と復号品質種別との定義ファイルの一例を示す図である。
【発明を実施するための形態】
【００２５】
（第１の実施形態）
以下、本発明の第１の実施形態について図面を参照しながら説明する。なお、本発明の技術的範囲が本実施形態に限定されるものではない。
図１は、本実施形態におけるストリーム復号装置１００の構成例を示すブロック図である。
図１において、受付部１０１は、複数のストリームと、各ストリームの復号品質情報と、各ストリームに対する復号依頼とを受け取り、復号開始の依頼を選択的に受け付ける。ここで、復号品質情報とは、復号品質の保証を必要とする第１のストリーム（以下、ギャランティ型ストリーム）と、復号品質の保証を必要としない第２のストリーム（以下、ベストエフォート型ストリーム）との種別を表す情報である。この復号品質情報は、例えばストリーム復号装置１００に復号依頼を出すモジュールから与えられる。
【００２６】
復号処理が必要なストリームの中には、復号品質を保証すべきギャランティ型ストリームと、復号品質の保証を必要としないベストエフォート型ストリームとが存在する。ベストエフォート型ストリームの例としては、静止画像の復号処理では、フレームレートが存在しないため、復号処理に時間的な制約がない。また、ストリームのフォーマットを特定するようなプレデコード処理は、表示を伴わないため、同様に復号処理に時間的な制約がない。さらには、例えばインターネットを経由して取得するコンテンツの中には、所定のフレームレートに拘らずベストエフォートで表示することが許容されるストリームが存在する。これらのベストエフォート型ストリームは、復号処理リソースが十分に確保できていない状況下においても、部分的に復号処理が可能である。
【００２７】
切替部１０２は、受付部１０１において復号開始依頼を受け付けた複数のストリームに対して復号処理リソースを順次割り当て、その割り当てに従い復号対象のストリームを切り替える。デコード部１０３は、切替部１０２において復号対象としたストリームの復号処理を行う。制御部１０４は、ストリーム復号装置１００全体の制御を行う。
【００２８】
また、受付部１０１において受け付ける復号依頼は、例えばテレビのスイッチＯＮ・ＯＦＦやチャンネル変更などのユーザによる操作をトリガとし、復号開始依頼や復号終了依頼として与えられるものである。これらのユーザによる操作の入力を行う入力手段としては、例えばリモコン、キーボード、マウス、ディジタイザ、タッチパネル、ジョイスティックなどの多様な操作機器が想定されるが、本実施形態では、入力手段は何でもよい。
【００２９】
さらに、デコード部１０３の復号結果である出力ストリームを出力する出力手段としては、例えば映像出力手段としてモニタ、音声出力手段としてスピーカ、ヘッドホンなどの多様な出力機器が想定される。本実施形態では、入力手段と同様に、出力手段は何でもよい。
【００３０】
図２は、本実施形態において受付部１０１に入力されるストリームの詳細情報の一例を示す図である。
図２において、２０１〜２０４はそれぞれ受付部１０１に入力される入力ストリームであり、図２では復号開始依頼を受け付けた順に並べられている。
【００３１】
２０５はストリームＩＤであり、例えば受付部１０１によってストリームごとに一意のストリームＩＤが割り当てられている。図２に示す例では、復号開始依頼を受け付けた順に「０００１」から「０００４」までのストリームＩＤを割り当てている。２０６は復号品質種別であり、ストリームごとにギャランティ型、またはベストエフォート型の種別が与えられている。
【００３２】
２０７はサービス種別であり、各ストリームが所属するサービスの種別が与えられている。２０８はストリームタイプであり、例えば各ストリームの圧縮フォーマットが与えられている。また、２０９は対象ストリームのフレームレートであり、２１０、２１１はそれぞれ、対象ストリームの横サイズ、縦サイズである。
【００３３】
ここで、サービス種別２０７の情報はストリーム復号装置１００に復号処理を依頼するモジュールより取得されるものである。また、ストリームタイプ２０８の情報はストリーム復号装置１００の前段で多重化された信号を複数のストリームに分割するDemuxの処理結果より取得されるものである。さらに、フレームレート２０９、横サイズ２１０、及び縦サイズ２１１の情報は、受付部１０１に入力される入力ストリームの属性情報のシーケンスヘッダ情報からそれぞれ取得されるものである。
【００３４】
図３は、本実施形態における復号処理手順の一例を示すフローチャートである。以下、フローチャートに沿って、図２の具体例を参照しながら本実施形態の処理について説明する。
【００３５】
図３において、ストリーム復号装置１００の電源が投入されることにより処理を開始する。そして、ステップＳ３０１において、制御部１０４は、システムの初期化を行う。この初期化処理には、ストリーム復号装置１００の電源が入った場合の種々の制御が含まれている。例えば、デコード部１０３の復号処理に必要となるレジスタ値の設定や、ストリーム復号装置１００全体のメモリリソース、ハードウェアリソースの状態確認などが初期化処理に含まれている。
【００３６】
次に、ステップＳ３０２において、受付部１０１は、デコード部１０３が保持する最大で利用可能な復号処理リソース量Ｘの情報を取得する。本実施形態では、単位時間あたりに最大で利用可能な復号処理リソース量Ｘが４００Ｍcycle/secであるものとして、以降において説明する。
【００３７】
次に、ステップＳ３０３において、受付部１０１は、現在すでに割り当てられている復号処理リソース量ｘｃの初期値として０を設定する。そして、ステップＳ３０４において、受付部１０１は、新たな処理依頼を受け付けているか否かを判定する。この判定の結果、新たな処理依頼を受け付けている場合は、ステップＳ３０５に進む。一方、ステップＳ３０４の判定の結果、新たな処理依頼を受け付けていない場合は、ステップＳ３０９に進む。本実施形態では、図２に示すように、最初にストリーム２０１の復号開始依頼を受け付け、その後順次ストリーム２０２〜ストリーム２０４の復号開始依頼を受け付けたものとして、以降において説明する。
【００３８】
次に、ステップＳ３０５において、ステップＳ３０４において受け付けていると判定した新たな処理依頼の種類を判定する。この判定の結果、新たな処理依頼が復号開始依頼である場合は、ステップＳ３０６に進み、新たな処理依頼が復号終了依頼である場合はステップＳ３０７に進む。また、新たな処理依頼がその他の依頼である場合はステップＳ３０８に進む。図２に示した具体例では、ストリーム２０１〜ストリーム２０４について復号開始依頼を受け付けるため、順次ステップＳ３０６の処理に進むこととなる。
【００３９】
次に、ステップＳ３０６において、ステップＳ３０５で判定した復号開始依頼に基づき、受付部１０１は復号開始依頼を選択的に受け付ける。この処理の詳細な内容については、図４のフローチャートの説明において詳述する。
【００４０】
一方、ステップＳ３０７においては、ステップＳ３０５で判定した復号終了依頼に基づき、受付部１０１は復号終了依頼を受け付ける。この処理の詳細な内容については、図５のフローチャートの説明において詳述する。さらに、ステップＳ３０８においては、ステップＳ３０５で判定したその他の要求に基づき、種々の処理を行う。ステップＳ３０８において実施される処理としては、例えば、復号パラメータの設定などが挙げられる。
【００４１】
次に、ステップＳ３０９において、切替部１０２は、これまでに受付部１０１によって復号開始依頼を受け付けたストリームの中から、復号処理を行うストリームを選択する。この処理の詳細な内容については、図６のフローチャートの説明において詳述する。そして、ステップＳ３１０において、デコード部１０３は、ステップＳ３０９において選択されたストリームの復号処理を行う。
【００４２】
次に、ステップＳ３１１において、復号処理を終了するか否かを判定する。この判定の結果、復号処理を終了しない場合は、ステップＳ３０４に戻る。一方、ステップＳ３１１の判定の結果、復号処理を終了する場合は、ステップＳ３１２に進む。そして、ステップＳ３１２において、制御部１０４は、システムの終了処理を行い、処理を終了する。この終了処理には、ストリーム復号装置１００の電源ＯＦＦに先立つ種々の制御が含まれており、例えば、メモリリソース、ハードウェアリソースの終了処理を順次行う。
【００４３】
図４は、図３のステップＳ３０６における受付部１０１による復号開始依頼を選択的に受け付ける処理手順の一例を示すフローチャートである。
図４において、まず、ステップＳ４０１において、復号開始依頼が対象とするストリームがギャランティ型ストリームであるか否かを判定する。この判定の結果、ギャランティ型ストリームである場合はステップＳ４０２に進む。一方、ステップＳ４０１の判定の結果、ベストエフォート型ストリームである場合はステップＳ４０５に進む。図２に示した具体例では、ストリーム２０１からストリーム２０３の何れかの復号開始依頼を受け付けた場合には、対象とするストリームがギャランティ型ストリームであるため、ステップＳ４０２に進む。一方、ストリーム２０４の復号開始依頼を受け付けた場合には、ステップＳ４０５に進む。
【００４４】
次に、ステップＳ４０２において、ストリームの属性情報を基に、対象とするギャランティ型ストリームが必要とする最大復号処理リソース量ｘａの情報を取得する。このとき、最大復号処理リソース量ｘａは、例えば図７に示すような復号処理リソースの最大必要量の見積もり一覧を利用する。ここで、図７に示す復号処理リソースの最大必要量７０１は、デコード部１０３の復号処理能力を加味して予め算出され、システム初期化時に受付部１０１に保持される。
【００４５】
また、サービス種別によっては、同一ストリームであるにも関らず時間経過によってフレームレートやサイズが変更する場合がある。図７に示す復号処理リソースの最大必要量の見積もり一覧は、フレームレートやサイズが可変のストリームにも対応し、この可変を考慮した値を復号処理リソースの最大必要量として保持する。図２に示したストリーム２０１〜ストリーム２０３の場合は、行７０２及び行７０３を参照し、最大復号処理リソース量が２００Ｍcycle/secと算出される。
【００４６】
次に、ステップＳ４０３において、ステップＳ４０２で算出した最大復号処理リソース量ｘａと現在割り当てられている復号処理リソース量ｘｃとを加算し、加算結果と最大で利用可能な復号処理リソース量Ｘとを比較する。この比較の結果、最大で利用可能な復号処理リソース量Ｘの方が大きい場合は、ステップＳ４０４に進む。一方、ステップＳ４０３の判定の結果、加算結果の方が大きい場合は、ステップＳ４０６に進む。
【００４７】
図２に示した具体例の場合は、ストリーム２０１及びストリーム２０２の処理までは最大で利用可能な復号処理リソース量Ｘの方が大きいと判定されるため、ステップＳ４０４に進む。ところが、ストリーム２０３の処理時には、最大で利用可能な復号処理リソース量Ｘ＝４００Ｍcycle/secに対して加算結果が６００Ｍcycle/secとなり、加算結果の方が大きいため、ステップＳ４０６に進むこととなる。
【００４８】
次に、ステップＳ４０４において、現在割り当てられている復号処理リソース量ｘｃと、ステップＳ４０２で算出した最大復号処理リソース量ｘａとの和を、現在割り当てられている復号処理リソース量ｘｃとする。
【００４９】
そして、ステップＳ４０５において、対象としているストリームの復号開始依頼を受け付け、復号処理に必要な前処理を行い、処理を終了する。この前処理には、例えば対象のストリームをストリーム復号装置１００内で一時的に蓄積する処理や、出力するストリームを蓄積するためにメモリを確保する処理、デコード部１０３が復号処理を行うために必要なレジスタの設定などが含まれる。一方、ステップＳ４０６においては、対象としているギャランティ型ストリームの復号開始依頼を拒否する。
【００５０】
以上の処理ステップを経ることによって、本実施形態のストリーム復号装置１００の受付部１０１は、ギャランティ型ストリームとベストエフォート型ストリームとで復号開始依頼の受け付け処理を変更する。この結果、ギャランティ型ストリームについては復号処理リソースを十分に割り当て可能な場合に限り復号開始依頼を受け付け、ベストエフォート型ストリームについては復号処理リソースの割り当て状態に関わらず復号開始依頼を受け付けることができる。図２に示した具体例の場合は、図４に示す処理ステップを、図３に示す処理により繰り返すことによって、図８に示すような受付可否判定結果８０１を得る。
【００５１】
図５は、図３のステップＳ３０７における受付部１０１による復号終了依頼を受け付ける処理手順の一例を示すフローチャートである。
図５において、まず、ステップＳ５０１において、復号終了依頼が対象とするストリームがギャランティ型ストリームであるか否かを判定する。この判定の結果、ギャランティ型ストリームである場合は、ステップＳ５０２に進む。一方、ステップＳ５０１の判定の結果、ベストエフォート型ストリームである場合は、ステップＳ５０３に進む。
【００５２】
次に、ステップＳ５０２において、ストリームの属性情報を基に、対象とするギャランティ型ストリームの最大復号処理リソース量ｘａの情報を取得し、現在割り当てられている復号処理リソース量ｘｃより復号処理リソース量ｘａを減算する。そして、減算結果を現在割り当てられている復号処理リソース量ｘｃと設定する。
【００５３】
次に、ステップＳ５０３において、復号処理における後処理を行い、処理を終了する。この後処理には、例えば対象とするストリームに対して確保していたメモリの開放や、デコード部１０３が復号処理を中止するために必要なレジスタの設定などが含まれる。
【００５４】
図６は、図３のステップＳ３０９における切替部１０２による、復号処理を行うストリームを選択する処理手順の一例を示すフローチャートである。
図６において、まず、ステップＳ６０１において、既に図３のステップＳ３０６で復号開始依頼を受け付けているギャランティ型ストリームの中から、新たに１つを選択し、これを復号対象ストリームとする。図２に示す具体例の場合では、ストリーム２０１が選択されたものとして、以降の処理を説明する。
【００５５】
次に、ステップＳ６０２において、現在復号対象ストリームが復号可能であるか否かを判定する。この判定の結果、復号可能である場合は、ステップＳ６０８に進む。一方、ステップＳ６０２の判定の結果、現在復号が不可能である場合はステップＳ６０３に進む。ここで、現在復号可能であるか否かの判定には、例えば、切替部１０２におけるストリームを蓄積するメモリに、閾値以上のストリームが蓄積されているか否かなどの情報を用いる。図２に示した具体例の場合では、ストリーム２０１が復号可能であると判定されたものとして、以降において説明する。
【００５６】
次に、ステップＳ６０３において、復号開始依頼を受け付けた全てのギャランティ型ストリームについて復号可能か否かの判定を行ったか否かを判定する。この判定の結果、また、復号可能か否かの判定を行っていないギャランティ型ストリームがある場合は、ステップＳ６０１に戻る。一方、ステップＳ６０３の判定の結果、全てのギャランティ型ストリームについて復号可能か否かの判定を行った場合は、ステップＳ６０４に進む。
【００５７】
次に、ステップＳ６０４において、既に復号開始依頼を受け付けているベストエフォート型ストリームの中から、新たに１つを選択し、これを復号対象ストリームとする。そして、ステップＳ６０５において、現在復号対象ストリームが復号可能であるか否かを判定する。
【００５８】
この判定の結果、復号可能である場合は、ステップＳ６０８に進む。一方、ステップＳ６０５の判定の結果、現在復号が不可能である場合は、ステップＳ６０６に進む。現在復号が可能であるか否かの判定には、ステップＳ６０３と同様に、例えば、切替部１０２におけるストリームを蓄積するメモリに、閾値以上のストリームが蓄積されているか否かなどの情報を用いる。
【００５９】
次に、ステップＳ６０６において、復号開始依頼を受け付けた全てのベストエフォート型ストリームについて復号可能か否かの判定を行ったか否かを判定する。この判定の結果、また、復号可能か否かの判定を行っていないベストエフォート型ストリームがある場合は、ステップＳ６０４に戻る。一方、ステップＳ６０６の判定の結果、全てのベストエフォート型ストリームについて復号可能か否かの判定を行った場合は、ステップＳ６０７に進む。そして、ステップＳ６０７において、復号処理が実施可能なストリームが存在しなかったため、復号処理を実施するストリームをなしとする。
【００６０】
一方、ステップＳ６０８においては、復号対象ストリームを、復号処理を実施するストリームとして選択する。図２に示した具体例では、ストリーム２０１が復号処理を実施するストリームとして選択されることとなる。
【００６１】
以上の処理ステップを経ることによって、ストリーム復号装置１００の切替部１０２は、ギャランティ型ストリームを優先的に復号対象のストリームに選択する。そして、ギャランティ型ストリームの復号処理が不可能な場合のみベストエフォート型ストリームを復号対象のストリームに選択するようにしている。
【００６２】
図１３は、図２に示した具体例に対し、図６に示した復号処理を適用したときの処理結果の一例を示す図である。
図１３において、１３０１〜１３０４はストリーム復号装置１００に対して復号依頼がなされたストリームである。図１３に示す例では、放送受信Ａストリーム１３０１、放送受信Ｂストリーム１３０２、放送受信Ｃストリーム１３０３、及び静止画デコードストリーム１３０４はそれぞれ、図２に示したストリーム２０１からストリーム２０４に対応している。
【００６３】
また、１３０５〜１３０７は、デコード部１０３が各ストリームに復号処理リソースを割り当てる際の基準時間を表し、例えば、放送受信Ａストリーム１３０１のフレームレートを考慮して１／３０ｓなどに設定される。
【００６４】
ここで、基準時間ｔ２及び基準時間ｔ３においては、放送受信Ａストリーム１３０１、及び放送受信Ｂストリーム１３０２の復号処理が基準時間ｔ１の時と比べて軽い。そこで、ベストエフォート型ストリームとして復号開始依頼を受け付けていた静止画デコードストリーム１３０４に復号処理リソースを割り当て、復号処理を行う。その結果として、例えば、図１４に示すように、画面１４０１上に放送受信Ａストリーム１３０１の復号結果１４０２、放送受信Ｂストリーム１３０２の復号結果１４０３、及び静止画デコードストリーム１３０４の復号結果１４０４を出力することが可能となる。
【００６５】
ここで、静止画デコードストリーム１３０４については、十分な復号処理リソースが割り当てられていないものの、ストリーム２０４は復号品質の保証を必要としないベストエフォート型ストリームである。このため、静止画デコードストリーム１３０４の復号結果１４０４はユーザにとって有効な表示になり得るものである。
【００６６】
また、図１４に示した例は、映像ストリームの復号処理における具体例であるが、例えば音声ストリーム復号処理などのその他の処理に対しても同様の効果が得られることは言うまでもない。さらに、本実施形態の範囲には、同一装置内の複数の処理に本発明を適用した場合も含まれることは言うまでもない。
【００６７】
以上のように本実施形態におけるストリーム復号装置１００によれば、ベストエフォート型ストリームについては復号処理リソースに余裕がない場合でも復号依頼を受け付けておく。そして、ギャランティ型ストリームを優先的にデコードしつつ、復号処理リソースに余裕がない時にベストエフォート型ストリームをデコードするようにした。これにより、複数のストリームの復号処理を時分割して並列に行う場合において、ギャランティ型ストリームの表示品質を保証するとともに、復号処理リソースを有効に利用することができる。
【００６８】
なお、本実施形態においては、ギャランティ型ストリームを優先的にデコードし、復号処理リソースに余裕がない場合にベストエフォート型ストリームをデコードしたが、この時、復号対象となるベストエフォート型ストリームが複数存在する場合もある。そこで、受付部１０１は、ベストエフォート型ストリームに対しては、復号処理の優先度を示す復号処理優先度を付与する。そして、復号対象となるベストエフォート型ストリームが複数存在する場合に、切替部１０２は、この復号処理優先度に基づいて復号対象のデコードを選択するようにしてもよい。なお、復号処理優先度は、復号開始依頼を受け付けた順に優先度を付与するなど、どのような優先順位に設定してもよい。
【００６９】
（第２の実施形態）
以下、本発明の第２の実施形態について、第１の実施形態との差異を中心に図１０のフローチャートを参照しながら説明する。なお、本発明の技術的範囲が本実施形態に限定されるものではない。
図９は、本実施形態におけるストリーム復号装置９００の構成例を示すブロック図である。
図９において、品質決定部９０４は、入力されるストリームの属性情報を基に、ギャランティ型ストリームであるかベストエフォート型ストリームであるかの種別をストリーム単位で決定し、復号品質情報として受付部９０１に通知する。
【００７０】
受付部９０１は、複数のストリームと、各ストリームの復号品質情報と、各ストリームに対する復号依頼とを受け取り、復号開始の依頼を選択的に受け付ける。切替部９０２は、受付部９０１において復号開始依頼を受け付けた複数のストリームに対して復号処理リソースを順次割り当て、その割り当てに従い復号対象のストリームを切り替える。デコード部９０３は、切替部９０２において復号対象としたストリームの復号処理を行う。制御部９０５は、ストリーム復号装置９００全体の制御を行う。
【００７１】
また、受付部９０１において受け付ける復号依頼は、例えばテレビのスイッチＯＮ・ＯＦＦやチャンネル変更などのユーザ操作入力をトリガとし、復号開始依頼や復号終了依頼として与えられるものである。これらのユーザによる操作の入力を行う入力手段としては、例えばリモコン、キーボード、マウス、ディジタイザ、タッチパネル、ジョイスティックなどの多様な操作機器が想定されるが、本実施形態では、入力手段は何でもよい。
【００７２】
さらに、デコード部９０３の復号結果であるストリームを出力する出力手段としては、例えば映像出力手段としてモニタ、音声出力手段としてスピーカ、ヘッドホンなどの多様な出力機器が想定される。本実施形態では、入力手段と同様に、出力手段は何でもよい。
【００７３】
図１０は、本実施形態における復号処理手順の一例を示すフローチャートである。以下、フローチャートに沿って本実施形態の処理について説明する。
図１０において、ストリーム復号装置９００の電源が投入されることにより処理を開始する。そして、ステップＳ１００１において、制御部９０５は、システムの初期化を行う。この初期化処理には、ストリーム復号装置９００の電源が入った場合の種々の制御が含まれている。例えば、デコード部９０３の復号処理に必要となるレジスタ値の設定や、ストリーム復号装置全体のメモリリソース、ハードウェアリソースの状態確認などが初期化処理に含まれている。
【００７４】
次に、ステップＳ１００２において、受付部９０１は、デコード部９０３が保持する復号処理リソース量Ｘの情報を取得する。そして、ステップＳ１００３では、受付部９０１は、現在割り当てられている復号処理リソース量ｘｃの初期値として０を設定する。
【００７５】
次に、ステップＳ１００４において、受付部９０１は、新たな処理依頼を受け付けているか否かを判定する。この判定の結果、新たな処理依頼を受け付けている場合は、ステップＳ１００５に進む。一方、ステップＳ１００４の判定の結果、新たな処理依頼を受け付けていない場合は、ステップＳ１０１０に進む。
【００７６】
次に、ステップＳ１００５において、品質決定部９０４は、ステップＳ１００４において受け付けていると判定した新たな処理依頼が対象とするストリームの属性情報に基づいて復号品質種別を決定する。この復号品質種別の決定は、例えばストリームのサービス種別と復号品質種別とを対応付けた定義ファイルを利用する。
【００７７】
図１５は、ストリームのサービス種別と復号品質種別とを対応付けた定義ファイルの一例を示す図である。
図１５に示す具体例では、例えば行１５０１においては、動画ストリームである放送受信サービスがギャランティ型ストリームに対応付けられている。一方、行１５０２においては、静止画ストリームである静止画デコードサービスがベストエフォート型ストリームに対応付けられる。
【００７８】
また、図１５に示すように、ネットワークの帯域が保証されているネットワークコンテンツはギャランティ型ストリームに対応付けられ、ネットワークの帯域が保証されていないネットワークコンテンツはベストエフォート型ストリームに対応付けられている。
【００７９】
一方、ディスプレイにストリームを表示する以外に、ディスプレイに表示するのではなく、ストリームのフォーマットを特定するようなプレデコード処理等を行うために復号が必要な場合もある。属性情報にディスプレイ表示の有無の情報がある場合は、ディスプレイ表示を行うものがギャランティ型ストリームに対応付けられ、ディスプレイ表示を行わないものがベストエフォート型ストリームに対応付けられる。
【００８０】
次に、ステップＳ１００６において、ステップＳ１００４において受け付けていると判定した新たな処理依頼の種類を判定する。この判定の結果、新たな処理依頼が復号開始依頼である場合は、ステップＳ１００７に進み、新たな処理依頼が復号終了依頼である場合は、ステップＳ１００９に進む。また、新たな処理依頼がその他の依頼である場合は、ステップＳ１００９に進む。
【００８１】
次に、ステップＳ１００７において、ステップＳ１００６で判定した復号開始依頼に基づき、受付部９０１は復号開始依頼を選択的に受け付ける。この処理の内容については、第１の実施形態において説明した図４のフローチャートと同様の手順であるため、説明は省略する。
【００８２】
一方、ステップＳ１００８においては、ステップＳ１００６で判定した復号終了依頼に基づき、受付部９０１は復号終了依頼を受け付ける。この処理の内容についても、第１の実施形態において説明した図５のフローチャートと同様の手順であるため、説明は省略する。
【００８３】
さらに、ステップＳ１００９においては、ステップＳ１００６で判定したその他の要求に基づき、種々の処理を行う。ステップＳ１００９において実施される処理としては、例えば、復号パラメータの設定などが挙げられる。
【００８４】
次に、ステップＳ１０１０において、切替部９０２は、これまでに受付部９０１によって復号開始依頼を受け付けたストリームの中から、復号処理を行うストリームを選択する。この処理の内容については、第１の実施形態において説明した図６のフローチャートと同様の手順であるため、説明は省略する。そして、ステップＳ１０１１において、デコード部９０３は、ステップＳ１０１０において選択されたストリームの復号処理を行う。
【００８５】
次に、ステップＳ１０１２において、復号処理を終了するか否かを判定する。この判定の結果、復号処理を終了しない場合は、ステップＳ１００４に戻る。一方、ステップＳ１０１２の判定の結果、復号処理を終了する場合は、ステップＳ１０１３に進む。そして、ステップＳ１０１３において、制御部９０５は、システムの終了処理を行い、処理を終了する。この終了処理には、ストリーム復号装置９００の電源断に先立つ種々の制御が含まれており、例えば、メモリリソース、ハードウェアリソースの終了処理を順次行う。
【００８６】
以上のように本実施形態におけるストリーム復号装置９００によれば、ストリームのサービス種別より復号品質種別を決定し、ベストエフォート型ストリームについては復号処理リソースに余裕がない場合でも復号依頼を受け付けておく。そして、ギャランティ型ストリームを優先的にデコードしつつ、復号処理リソースに余裕がない時にベストエフォート型ストリームをデコードするようにした。これにより、複数のストリームの復号処理を時分割して並列に行う場合において、ギャランティ型ストリームの表示品質を保証するとともに、復号処理リソースを有効に利用することができる。
【００８７】
また、第１の実施形態と同様に、復号対象となるベストエフォート型ストリームが複数存在する場合には、復号処理優先度を付与して、復号処理優先度に基づいて復号対象のデコードを選択するようにしてもよい。さらに、第１の実施形態１及び第２の実施形態に示した処理手順を同一装置内で実現し、例えば動作モードを切り替えるなどして動作させるようにしてもよい。
【００８８】
（本発明に係る他の実施形態）
本発明の目的は、以下のように場合においても達成される。まず、前述した第１及び第２の実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶したコンピュータ読み取り可能な記憶媒体は本発明を構成することになる。
【符号の説明】
【００８９】
１００  ストリーム復号装置、１０１  受付部、１０２  切替部、１０３  デコード部、１０４  制御部
【図１】
2010283683.tif 000003
【図２】
2010283683.tif 000004
【図３】
2010283683.tif 000005
【図４】
2010283683.tif 000006
【図５】
2010283683.tif 000007
【図６】
2010283683.tif 000008
【図７】
2010283683.tif 000009
【図８】
2010283683.tif 000010
【図９】
2010283683.tif 000011
【図１０】
2010283683.tif 000012
【図１１】
2010283683.tif 000013
【図１２】
2010283683.tif 000014
【図１３】
2010283683.tif 000015
【図１４】
2010283683.tif 000016
【図１５】
2010283683.tif 000017