(57)【特許請求の範囲】
【請求項１】
プロセッサがビデオデータを含むデータストリームを受信するステップと、
前記プロセッサが前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別するステップと、
前記プロセッサが前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別するステップと、
前記プロセッサが前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームから復号可能ユニットの複数のシーケンスを優先順位付けするステップと、
前記プロセッサが利用可能な電力の量と利用可能な処理能力の量とを評価するステップと、
前記プロセッサが利用可能な電力の前記量と利用可能な処理能力の前記量とに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理するステップと、
を備え、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号することを含む、データストリームを処理する方法。
【請求項２】
前記プロセッサが前記様々な構文解析演算および復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けるステップをさらに備える、請求項１に記載の方法。
【請求項３】
前記プロセッサが前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けするステップをさらに備える、請求項２に記載の方法。
【請求項４】
前記プロセッサが前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力および利用可能な処理能力を満たすかまたは超えないように、グループを選択するステップをさらに備える、請求項２に記載の方法。
【請求項５】
前記プロセッサが低電力モードの前記階層リストをユーザに提示するステップと、
前記プロセッサが前記ユーザによって選択された前記低電力モードを示す入力を受信するステップと、
前記プロセッサが前記入力に応答して構文解析演算および復号演算のグループを選択するステップと
をさらに備える、請求項３に記載の方法。
【請求項６】
プロセッサがビデオデータを含むデータストリームを受信するステップと、
前記プロセッサが前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別するステップと、
前記プロセッサが前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別するステップと、
前記プロセッサが前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームから復号可能ユニットの複数のシーケンスを優先順位付けするステップと、
前記プロセッサが前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理するステップと、
を備え、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、データストリームを処理する方法。
【請求項７】
前記プロセッサが前記様々な構文解析演算および復号演算を、各グループが前記ビデオの視覚的品質の程度または経験品質の程度に対応するグループに関連付けるステップをさらに備える、請求項６に記載の方法。
【請求項８】
前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けするステップをさらに備える、請求項７に記載の方法。
【請求項９】
前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度および経験品質の所望の程度を満たすように、グループを選択するステップをさらに備える、請求項７に記載の方法。
【請求項１０】
前記プロセッサが品質モードの前記階層リストをユーザに提示するステップと、
前記プロセッサが前記ユーザによって選択された前記品質モードを示す入力を受信するステップと、
前記プロセッサが前記入力に応答して構文解析演算および復号演算のグループを選択するステップと
をさらに備える、請求項８に記載の方法。
【請求項１１】
ビデオデータを含むデータストリームを受信することと、
前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別することと、
前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別することと、
前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームからの復号可能ユニットの複数のシーケンスを優先順位付けすることと、
利用可能な電力の量と利用可能な処理能力の量とを評価することと、
利用可能な電力の前記量と利用可能な処理能力の前記量とに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理することと
を行うように動作可能な命令のセットを実行するように構成されたプロセッサを備え、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、データストリームを処理するための装置。
【請求項１２】
前記プロセッサが、
前記様々な構文解析演算および復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けるための命令を実行するようにさらに構成された、請求項１１に記載の装置。
【請求項１３】
前記プロセッサが、
前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けするための命令を実行するようにさらに構成された、請求項１２に記載の装置。
【請求項１４】
前記プロセッサが、
前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力および利用可能な処理能力を満たすかまたは超えないように、グループを選択するための命令を実行するようにさらに構成された、請求項１２に記載の装置。
【請求項１５】
前記プロセッサが、
低電力モードの前記階層リストをユーザに提示することと、
前記ユーザによって選択された前記低電力モードを示す入力を受信することと、
前記入力に応答して構文解析演算および復号演算のグループを選択することと
を行うための命令を実行するようにさらに構成された、請求項１３に記載の装置。
【請求項１６】
ビデオデータを含むデータストリームを受信することと、
前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別することと、
前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別することと、
前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームからの復号可能ユニットの複数のシーケンスを優先順位付けすることと、
前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理することと、
を行うように動作可能な命令のセットを実行するように構成されたプロセッサを備え、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、データストリームを処理するための装置。
【請求項１７】
前記プロセッサが、
前記様々な構文解析演算および復号演算を、各グループが前記ビデオの視覚的品質の程度または経験品質の程度に対応するグループに関連付けるための命令を実行するようにさらに構成された、請求項１６に記載の装置。
【請求項１８】
前記プロセッサが、
前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けするための命令を実行するようにさらに構成された、請求項１７に記載の装置。
【請求項１９】
前記プロセッサが、
前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度および経験品質の所望の程度を満たすように、グループを選択するための命令を実行するようにさらに構成された、請求項１７に記載の装置。
【請求項２０】
前記プロセッサが、
品質モードの前記階層リストをユーザに提示することと、
前記ユーザによって選択された前記品質モードを示す入力を受信することと、
前記入力に応答して構文解析演算および復号演算のグループを選択することと
を行うための命令を実行するようにさらに構成された、請求項１８に記載の装置。
【請求項２１】
ビデオデータを含むデータストリームを受信するための手段と、
前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別するための手段と、
前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別するための手段と、
前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームからの復号可能ユニットの複数のシーケンスを優先順位付けするための手段と、
利用可能な電力の量と利用可能な処理能力の量とを評価するための手段と、
利用可能な電力の前記量と利用可能な処理能力の前記量とに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理するための手段と
を備え、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、データストリームを処理するための装置。
【請求項２２】
前記様々な構文解析演算および復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けるための手段をさらに備える、請求項２１に記載の装置。
【請求項２３】
前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けするための手段をさらに備える、請求項２２に記載の装置。
【請求項２４】
前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力および利用可能な処理能力を満たすかまたは超えないように、グループを選択するための手段をさらに備える、請求項２２に記載の装置。
【請求項２５】
低電力モードの前記階層リストをユーザに提示するための手段と、
前記ユーザによって選択された前記低電力モードを示す入力を受信するための手段と、
前記入力に応答して構文解析演算および復号演算のグループを選択するための手段と
をさらに備える、請求項２３に記載の装置。
【請求項２６】
ビデオデータを含むデータストリームを受信するための手段と、
前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別するための手段と、
前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別するための手段と、
前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームからの復号可能ユニットの複数のシーケンスを優先順位付けするための手段と、
前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理するための手段と、
を備え、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、データストリームを処理するための装置。
【請求項２７】
前記様々な構文解析演算および復号演算を、各グループが前記ビデオの視覚的品質の程度または経験品質の程度に対応するグループに関連付けるための手段をさらに備える、請求項２６に記載の装置。
【請求項２８】
前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けするための手段をさらに備える、請求項２７に記載の装置。
【請求項２９】
前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度およびユーザ経験品質の所望の程度を満たすように、グループを選択するための手段をさらに備える、請求項２７に記載の装置。
【請求項３０】
品質モードの前記階層リストをユーザに提示するための手段と、
前記ユーザによって選択された前記品質モードを示す入力を受信するための手段と、
前記入力に応答して構文解析演算および復号演算のグループを選択するための手段と
をさらに備える、請求項２８に記載の装置。
【請求項３１】
プロセッサによって実行されたとき、前記プロセッサに、
ビデオデータを含むデータストリームを受信することと、
前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別することと、
前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別することと、
前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームからの復号可能ユニットの複数のシーケンスを優先順位付けすることと、
利用可能な電力の量と利用可能な処理能力の量とを評価することと、
利用可能な電力の前記量と利用可能な処理能力の前記量とに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理することと、を行わせる命令を記憶し、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、コンピュータ可読記憶媒体。
【請求項３２】
プロセッサによって実行されたとき、前記プロセッサに、
前記様々な構文解析演算および復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けさせる命令をさらに備える、請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３３】
プロセッサによって実行されたとき、前記プロセッサに、
前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けさせる命令をさらに備える、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項３４】
プロセッサによって実行されたとき、前記プロセッサに、
前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力および利用可能な処理能力を満たすかまたは超えないように、グループを選択させる命令をさらに備える、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項３５】
プロセッサによって実行されたとき、前記プロセッサに、
低電力モードの前記階層リストをユーザに提示することと、
前記ユーザによって選択された前記低電力モードを示す入力を受信することと、
前記入力に応答して構文解析演算および復号演算のグループを選択することと
を行わせる命令をさらに備える、請求項３３に記載のコンピュータ可読記憶媒体。
【請求項３６】
プロセッサによって実行されたとき、前記プロセッサに、
ビデオデータを含むデータストリームを受信することと、
前記データストリームを生成するために使用されるトランスポートプロトコルとビデオ符号化プロトコルとを識別することと、
前記トランスポートプロトコルと前記ビデオ符号化プロトコルとによって必要とされる様々な構文解析演算および復号演算を識別することと、
前記識別された構文解析演算及び復号演算に基づいて選択的構文解析及び選択的復号の少なくとも１つのために前記データストリームからの復号可能ユニットの複数のシーケンスを優先順位付けすることと、
前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析演算および復号演算を管理することとを行わせる命令を記憶し、前記様々な構文解析演算及び復号演算を管理することは前記データストリームに対して前記構文解析演算及び復号演算を選択的に実行することを含み、前記シーケンスの各々は１つ以上の復号可能ユニットを含み、前記復号可能ユニットの各々はピクチャ、スライス及びマクロブロックの１つ以上を含み、選択的構文解析又は復号は電力消費目標に対応する結果の視覚的品質を最大にするために低優先度シーケンスよりも高い精度又は視覚的品質で少なくとも１つの高優先度シーケンスを構文解析又は復号する、コンピュータ可読記憶媒体。
【請求項３７】
プロセッサによって実行されたとき、前記プロセッサに、
前記様々な構文解析演算および復号演算を、各グループが前記ビデオの視覚的品質の程度または経験品質の程度に対応するグループに関連付けさせる命令をさらに備える、請求項３６に記載のコンピュータ可読記憶媒体。
【請求項３８】
プロセッサによって実行されたとき、前記プロセッサに、
前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けさせる命令をさらに備える、請求項３７に記載のコンピュータ可読記憶媒体。
【請求項３９】
プロセッサによって実行されたとき、前記プロセッサに、
前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度および経験品質の所望の程度を満たすように、グループを選択させる命令をさらに備える、請求項３７に記載のコンピュータ可読記憶媒体。
【請求項４０】
プロセッサによって実行されたとき、前記プロセッサに、
品質モードの前記階層リストをユーザに提示することと、
前記ユーザによって選択された前記品質モードを示す入力を受信することと、
前記入力に応答して構文解析演算および復号演算のグループを選択することと
を行わせる命令をさらに備える、請求項３７に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、ビデオ処理の分野に関し、より詳細には、ビデオ処理及び復号における電力及び計算負荷管理のための技法に関する。
【背景技術】
【０００２】
ビデオデータ中に含まれるデジタル情報の量は膨大であり、ビデオカメラのパフォーマンスの進歩とともに増加する傾向がある。ビデオデータの処理は、ビデオ対応デバイス、及び、特に、セルラー電話、携帯情報端末（ＰＤＡ）、ラップトップコンピュータなど、ワイヤレス通信デバイスの電力及び計算リソースに大きな負担をかける。
【０００３】
ビデオ圧縮は主に空間的及び時間的冗長性を低減するが、ソースビデオがキャプチャされた（又は場合によっては、記憶から抽出された）後、再構成されたビデオがディスプレイにおいて表示（消費）される前に必要とされる、幾つかの前処理演算及び後処理演算がある。ビデオ処理は、主に、電力要件（バッテリー、通話時間など）に正比例する必要とされる算術演算のために、メモリ（記憶及びデータ転送）及び計算負荷に大きな負担をかける。
【０００４】
ビデオ中の冗長性の量が与えられれば、そのような演算の量の比例低減が予想されるはずである。圧縮比は桁数が多い（１００：１〜１０００：１）ので、実装オーバーヘッドにもかかわらず、処理すべきビデオデータの量の著しい低減を達成することができる。空間時間的冗長性は、圧縮メタデータを使用して識別され、電力を節約する、冗長演算の低減に対応し得る。様々なレベルの冗長性は、プロセッサに対する様々なレベルの消費電力及び計算負荷につながる。
【０００５】
従って、ビデオ処理及び復号における電力及び計算負荷管理のための技法が必要である。
【発明の概要】
【０００６】
関連出願
本出願は、本出願と同日に出願された、POWER AND COMPUTATIONAL LOAD MANAGEMENT TECHNIQUES IN VIDEO PROCESSINGと題する米国特許出願（一時的に代理人整理番号第ＩＤＦ０７１９７９Ｕ２号によって参照される）に関し、すべて本出願の譲受人に譲渡され、それらの全文の各々が全ての目的のために参照により本明細書に明確に組み込まれる、２００８年８月１９日に出願された米国仮出願第６１／０９０，１７６号及び２００８年１１月１４日に出願された米国仮出願第６１／１１４，９８５号の利益を主張する。
【０００７】
本明細書では、ビデオ処理及び復号においてプロセッサに対する電力消費量及び計算負荷を管理するための技法について説明する。一構成では、ビデオデータを含んでいるビットストリームから情報を抽出し、コンパイルするように動作可能な命令のセットを有するプロセッサを備える装置を提供する。プロセッサは、ビットストリームを生成するために使用される１つ以上のプロトコルを識別し、次いで、プロトコルによって必要とされる様々なパース演算及び復号演算を識別するように動作可能である。識別されると、次いで、本装置に利用可能な電力の量に基づいて、又は利用可能な処理能力に基づいて、ビットストリームのためのパース演算及び復号演算を管理することができる。一例によれば、ビットストリームの識別されたパース演算及び復号演算は、それらの全体が実行されるわけではなく、代わりに、利用可能な電力の量又は処理能力に基づいて選択的に実行され得る。
【０００８】
別の構成によれば、ビデオデータを含んでいるビットストリームから情報を抽出し、コンパイルするように動作可能な命令のセットを有するプロセッサを備える装置を提供する。プロセッサは、ビットストリームを生成するために使用される１つ以上のプロトコルを識別し、次いで、プロトコルによって必要とされる様々な構文解析(parsing)及び復号演算を識別するように動作可能である。識別されると、ビデオの視覚的品質又はユーザ経験の品質に基づいてビットストリームのための構文解析及び復号演算を管理する。本装置はまた、プロセッサに結合されたメモリを含む。
【０００９】
別の態様では、ビデオを有するビットストリームから情報を抽出し、コンパイルするように動作可能な命令のセットを有するプロセッサを備える集積回路（ＩＣ）を提供する。プロセッサは、ビットストリームを生成するために使用される１つ以上のプロトコルを識別し、プロトコルによって必要とされる様々な構文解析及び復号演算を識別し、次いで、利用可能な電力の量又は利用可能な処理能力に基づいてビットストリームのための構文解析及び復号演算を管理するように動作可能である。別の構成によれば、ビデオの視覚的品質又はユーザ経験(experience)の品質に基づいて構文解析及び復号演算を管理する。本集積回路はまた、プロセッサに結合されたメモリを含む。
【００１０】
別の構成では、プロセッサに、ビデオデータを含んでいるビットストリームから情報を抽出させ、コンパイルさせるための命令を有するコンピュータ可読媒体を含むコンピュータプログラム製品を提供する。命令は、さらに、プロセッサに、ビットストリームを生成するために使用される１つ以上のプロトコル、並びにプロトコルによって必要とされる様々な構文解析及び復号演算を識別させ、次いで、利用可能な電力の量又は利用可能な処理能力に基づいて構文解析及び復号演算を管理させる。別の構成によれば、ビデオの視覚的品質又はユーザ経験の品質に基づいて構文解析及び復号演算を管理する。
【００１１】
構成のさらなる態様は、様々な構文解析及び復号演算を、各グループが予測電力要件又は予測処理能力要件を有するグループに編成するプロセッサを含む。プロセッサは、次いで、グループの予測電力又は処理能力要件が利用可能な電力又は利用可能な処理能力を満たすか又は超えないように、グループを選択する。代替的に、そのグループに関連する構文解析及び復号演算によって与えられるビデオの視覚的品質又はユーザ経験の品質に基づいて、様々な構文解析及び復号演算をグループに編成することができる。
【００１２】
概要は、本開示の全範囲を表すものではなく、本開示の全範囲を表すものと解釈すべきでもなく、これら及び追加の態様は、特に添付の図面とともに発明を実施するための形態を読めばより容易に明らかになろう。
【図面の簡単な説明】
【００１３】
【図１】ワイヤレスデバイスの概略ブロック図。
【図２Ａ】データストリームを示す図。
【図２Ｂ】ビデオレイヤデータを示す図。
【図２Ｃ】一般的なＭＰＥＧフォーマットを示す図。
【図２Ｄ】復号可能ユニットをもつ一般的なＭＰＥＧビットストリームを示す図。
【図３Ａ】電力管理モジュール並びにビデオエンコーダ及びデコーダエンジンのブロック図。
【図３Ｂ】電力管理モジュールとともに使用するデコーダエンジンのブロック図。
【図４】復号可能ユニットの優先電力管理（ＰＭ）シーケンスを復号するための電力及び計算負荷を予測するためのプロセスのフローチャート。
【図５】トランスポートレイヤ（ＴＬ）構文解析器及び処理ユニットを示す図。
【図６】ＴＬ情報抽出器及びコンパイラを示す図。
【図７】受信タイムスライスを示す図。
【図８】復号可能ユニット発生器のＴＬ優先ＰＭシーケンスを示す図。
【図９】ＴＬ復号ＭＩＰＳ及び電力予測器(power projector)を示す図。
【図１０】電力及び計算負荷管理を用いて復号するためのプロセスを示す図。
【図１１】ＴＬモード中のマルチレイヤ低電力モードセット発生器を示す図。
【図１２】ビデオシーケンス／ピクチャレイヤ（ＶＳ／ＰＬ）構文解析器及び処理ユニットを示す図。
【図１３】ＶＳ／ＰＬ抽出器及びコンパイラを示す図。
【図１４】受信タイムスライス中のＶＳ／ＰＬ情報を示す図。
【図１５】復号対象ＶＳ／ＰＬ優先シーケンス発生器を示す図。
【図１６】ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器によってＭＩＰＳを推定するためのプロセスのフローチャート。
【図１７】ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器を示す図。
【図１８】ＶＳ／ＰＬモード中のマルチレイヤ低電力モードセット発生器を示す図。
【図１９】スライス／マクロブロックレイヤ（Ｓ／ＭＢＬ）構文解析器及び処理ユニットを示す図。
【図２０】Ｓ／ＭＢＬ抽出器及びコンパイラを示す図。
【図２１】復号対象Ｓ／ＭＢＬ優先シーケンス発生器を示す図。
【図２２】Ｓ／ＭＢＬモード中のマルチレイヤ低電力モードセット発生器を示す図。
【図２３】電力管理演算のハイレベルブロック図。
【図２４】例示的な標準（通常）復号プロセスを順番に示す図。
【図２５】電力管理演算を用いるＴＬ復号プロセスのフローチャートを示す図。
【図２６】電力管理演算を用いるＶＳ／ＰＬ復号プロセスのフローチャートを示す図。
【図２７】ＶＳ／ＰＬ情報抽出プロトコルのブロック図。
【図２８】ＶＳ／ＰＬ情報抽出プロトコルによるビットストリームからのＶＳ／ＰＬ被復号ユニットのブロック図。
【図２９】電力管理演算を用いるＳ／ＭＢＬ復号プロセスのフローチャートを示す図。
【図３０】Ｓ／ＭＢＬ情報抽出プロトコルのブロック図。
【図３１】Ｓ／ＭＢＬ情報抽出プロトコルによるビットストリームからのＳ／ＭＢＬ被復号ユニットのブロック図。
【図３２】選択された電力管理モードに従う最終スライス及びマクロブロック復号のブロック図。
【図３３】マルチレイヤ電力管理モードの階層構成のブロック図。
【発明を実施するための形態】
【００１４】
理解を容易にするために、適切な場合、各図に共通である同じ要素を区別するためにサフィックスを付加する場合があることを除いて、可能な場合、そのような要素を示すために同じ参照符号を使用している。図面中の画像は、説明のために簡略化されており、一定の縮尺で示されていない。構成の特徴は、さらなる具陳なしに他の構成に有利に組み込むことができることが企図される。
【００１５】
添付の図面は、開示の例示的な構成を示し、従って、他の等しく有効な構成を認め得る本開示の範囲を限定するものと見なすべきではない。
【００１６】
「例示的」という単語は、本明細書では「例、事例、又は例示の働きをすること」を意味するために使用する。本明細書で「例示的」として説明するいかなる構成又は設計も、必ずしも他の構成又は設計よりも好ましい又は有利であると解釈すべきではなく、「コア」、「エンジン」、「機械」、「プロセッサ」及び「処理ユニット」という用語は互換的に使用される。
【００１７】
本明細書で説明する技法は、無線通信、コンピューティング、パーソナル電子機器、ハンドセットなどのために使用できる。無線通信のためのこれらの技法の例示的な使用について以下で説明する。
【００１８】
図１に、無線通信システムにおける無線機器１０の構成のブロック図を示す。無線機器１０はハンドセットとすることができる。無線機器１０又はハンドセットは、セルラー又はカメラ電話、端末、ワイヤレス搭載携帯情報端末（ＰＤＡ）、無線通信機器、ビデオゲーム機、ラップトップコンピュータ、ビデオ対応デバイス又は何らかの他の無線搭載デバイスとすることができる。無線通信システムは、符号分割多元接続（ＣＤＭＡ）システム、グローバル・システム・フォー・モバイル・コミュニケーションズ（ＧＳＭ（登録商標））システム、又は何らかの他のシステムとすることができる。
【００１９】
無線機器１０は、受信経路及び送信経路を介して双方向通信を行うことが可能である。受信経路上で、基地局によって送信された信号は、アンテナ１２によって受信され、受信機（ＲＣＶＲ）１４に供給される。受信機１４は、受信信号を調整し、デジタル化し、さらなる処理のためにサンプルをデジタルセクション２０に供給する。送信経路上で、送信機（ＴＭＴＲ）１６は、デジタルセクション２０から送信すべきデータを受信し、データを処理し、調整し、変調信号を発生し、変調信号はアンテナ１２を介して基地局に送信される。
【００２０】
デジタルセクション２０は、例えば、モデムプロセッサ２２、ビデオプロセッサ２４、コントローラ／プロセッサ２６、ディスプレイプロセッサ２８、ＡＲＭ／ＤＳＰ３２、グラフィックス処理ユニット（ＧＰＵ）３４、内部メモリ３６、及び外部バスインターフェース（ＥＢＩ）３８など、様々な処理ユニットと、インターフェースユニットと、メモリユニットとを含む。モデムプロセッサ２２は、データ送信及び受信（例えば、変調及び復調）のための処理を実行する。ビデオプロセッサ２４は、カムコーダ、ビデオ再生、及びビデオ会議などのビデオアプリケーションのためのビデオコンテンツ（例えば、静止画像、動画、及び移動テキスト）に対する処理を実行する。ビデオプロセッサ２４はビデオ符号化及び復号演算又はコーデック演算を実行する。ビデオ符号化及び復号演算は、デジタル部２０中の別のプロセッサによって実行されるか、又はデジタル部２０中の様々なプロセッサにわたって共有され得る。コントローラ／プロセッサ２６は、デジタル部２０内の様々な処理ユニット及びインターフェースユニットの演算を指示することができる。ディスプレイプロセッサ２８は、ディスプレイユニット３０上でのビデオ、グラフィックス、及びテキストの表示を可能にするための処理を実行する。ＡＲＭ／ＤＳＰ３２は、無線機器１０のための様々なタイプの処理を実行することができる。グラフィックス処理ユニット３４はグラフィックス処理を実行する。
【００２１】
ＧＰＵ３４は、例えば、公開されている文献「OpenGL Specification, Version 1.0」２００５年７月２８日に準拠する。この文献は、セルラー電話及び他の上記の無線通信装置などの携帯及び移動機器に好適な２Ｄベクターグラフィックスのための規格である。さらに、ＧＰＵ３４はまた、OpenGL2.0、OpenGL ES2.0、又はD3D9.0グラフィックス規格に準拠することができる。
【００２２】
本明細書で説明する技法は、デジタル部２０中のプロセッサのいずれか、例えば、ビデオプロセッサ２４のために使用できる。内部メモリ３６は、デジタル部２０内の様々なユニットのためのデータ及び／又は命令を記憶する。ＥＢＩ３８は、バス又はデータラインＤＬを通したデジタル部２０（例えば、内部メモリ３６）とメインメモリ４０との間のデータの転送を可能にする。
【００２３】
デジタル部２０は、１つ以上のＤＳＰ、マイクロプロセッサ、ＲＩＳＣなどを用いて実装できる。デジタル部２０はまた、１つ以上の特定用途向け集積回路（ＡＳＩＣ）又は何らかの他のタイプの集積回路（ＩＣ）上に作製できる。
【００２４】
本明細書で説明する技法は様々なハードウェアユニットにおいて実装できる。例えば、本技法は、ＡＳＩＣ、ＤＳＰ、ＲＩＳＣ、ＡＲＭ、デジタル信号処理機器（ＤＳＰＤ）、プログラマブル論理機器（ＰＬＤ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、及び他の電子ユニットにおいて実装できる。
【００２５】
無線機器１０又は他のビデオ対応機器に送信されなければならないか、又はそれによって処理されなければならない情報の量を低減するために、未加工ビデオデータを圧縮することができる。圧縮は、例えば、ISO/IECのMoving Picture Expert Group MPEG-2及びMPEG-4、ITU-TのH.264/AVCなど（AVCはAdvanced Video Codingを表す）による規格を含む、産業に適合したビデオ圧縮規格及び通信規格のうちの１つ又は複数に準拠するビデオ符号化技法を使用して実行できる。アドビーフラッシュ（Adobe Flash）プレーヤにおいて使用されるＶＰ６などの非標準圧縮方法に準拠するビデオ符号化技法を使用して、圧縮ビデオデータを発生させることもできる。この構成では、未加工及び圧縮ビデオデータは、無線又は有線インターフェース又はそれらの組合せを使用して、無線機器１０又は他のビデオ対応機器に、それから、又はその内部で送信できる。代替的に、圧縮データはＤＶＤなどのメディアに記憶できる。
【００２６】
圧縮ビデオデータは、例えば、実時間トランスポート（Real Time Transport Protocol）仕様においてＩＥＴＦによって定義されたインターネットプロトコル（ＩＰ）を使用するトランスポートプロトコルを使用する送信のためのペイロードフォーマットでカプセル化される。
【００２７】
図２Ａに、無線機器１０又は他のビデオ対応機器によって送信又は処理されなければならないデータストリーム及び対応するプロトコルのブロック図を示す。データストリーム２１４１は、例えば、トランスポートプロトコル仕様２１４５によって指定されたようにカプセル化されたトランスポートレイヤデータ２１４２と、ビデオレイヤデータ２１４３とからなる。トランスポートレイヤデータは、対応するトランスポートプロトコルで指定されたデータ表現のフォーマット又はシンタックス（syntax）又はセマンティクス（semantics）に従い、ビデオレイヤデータは、圧縮規格などのビデオ符号化プロトコル２１４４で指定されたビデオデータの表現のためのフォーマット又はシンタックス又はセマンティクスに従う。
【００２８】
トランスポートプロトコル２１４５は、送信又は記憶のために、例えば、ＭＰ４のようなファイルフォーマット、又はＲＴＰ又はＵＤＰ又はＩＰなどのトランスポートフォーマットでビデオレイヤデータをカプセル化する。ビデオ符号化プロトコル２１４４は、ＭＰＥＧ−２又はＭＰＥＧ−４又はＨ．２６４／ＡＶＣなどのビデオ符号化規格若しくは実質ビデオ（Real Video）又はウィンドウズ（登録商標）メディア（Windows（登録商標） Media）などの他のビデオコーデックとすることができる。トランスポートレイヤデータのシンタックス及びセマンティクスはトランスポートプロトコルによって支配又は指定され、ビデオレイヤデータのシンタックス及びセマンティクスはビデオ符号化プロトコルによって支配又は指定される。
【００２９】
図２Ｂに、ビデオレイヤデータ２１４３のフォーマットを示す。ビデオレイヤデータは、シーケンス又はグループオフピクチャ（ＧＯＰ）又はピクチャレイヤデータ２２４３と、スライス又はマクロブロック（ＭＢ）レイヤデータ２２５４と、ブロックレイヤデータ２２４７とを備える。
【００３０】
受信機において、データストリームが受信されたとき、従来のシステムでは、ビデオプロセッサは、対応するトランスポートプロトコル仕様及びビデオ符号化プロトコル又は標準規格によって指定された順序でデータストリームを構文解析し、復号する。トランスポート構文解析器は、本明細書では通常パース演算と呼ばれるトランスポートプロトコル仕様に対応する順序でカプセル化を解く。ビデオデコーダは、本明細書では通常復号演算と呼ばれるビデオ符号化プロトコル又は標準規格によって指定された順序でビデオレイヤデータを構文解析し、復号する。
【００３１】
以下で説明するシステム及び方法では、ビデオプロセッサは、データストリームの一部を選択的に構文解析及び／又は復号若しくは処理し、構文解析及び／又は復号演算並びに処理演算の順序は、利用可能な電力、利用可能な計算処理能力又は視覚的品質に基づく。
【００３２】
図２Ｃに、一般的なＭＰＥＧパケットフォーマット５０を示す。ＭＰＥＧパケットフォーマットはデータストリーム２１４１の一例である。ＭＰＥＧパケットフォーマット５０は複数のＭＰＥＧレイヤ５２、５４、５６、５８、６０、６２及び６４を含む。ＭＰＥＧレイヤは、トランスポートレイヤ５２と、シーケンスレイヤ５４と、グループオフピクチャ（ＧＯＰ）レイヤ５６と、ピクチャレイヤ５８と、スライスレイヤ６０と、マクロブロック（ＭＢ）レイヤ６２と、ブロックレイヤ６４とを含む。図２Ａでは、レイヤは、復号及び処理を必要とするレイヤの階層順を表すために積み重ねられた状態で示されている。本明細書では、説明のために、シーケンスレイヤ５４とピクチャレイヤ５８は、本明細書で説明する電力負荷管理のために互いにグループ化され、ビデオシーケンス／ピクチャレイヤ（ＶＳ／ＰＬ）７０と呼ばれる。幾つかの規格では、シーケンスレイヤ又はピクチャレイヤのみが存在するか、若しくはレイヤの組合せが存在することがある。さらに、スライスレイヤ６０とマクロブロック（ＭＢ）レイヤ６２は、本明細書で説明する電力負荷管理のために互いにグループ化されて、スライス／ＭＢレイヤ（Ｓ／ＭＢＬ）７２を形成する。幾つかの規格では、レイヤのうちの１つ又は複数を省略するか又は組み合わせることができる。
【００３３】
ＭＰＥＧ圧縮では、ビデオフレームを符号化し、イントラ符号化（Ｉ）フレーム、予測符号化（Ｐ）フレーム、及び双方向予測符号化（Ｂ）フレームのうちの１つ又は複数を含み得るグループオフピクチャ（ＧＯＰ）にフォーマットすることができる。幾つかのＢフレームは参照フレームとすることができる。非参照Ｂフレームをｂフレームと呼ぶことがある。諒解され得るように、規格における全てのフレーム及びフレームの構成について説明することは差し控える。
【００３４】
図２Ｄに、復号可能ユニットをもつ一般的なＭＰＥＧビットストリームを示す。ビットストリームは、シーケンスレイヤ５４において、シーケンスヘッダ５４Ａと、それに続くシーケンスデータ５４Ｂとを含む。シーケンスレイヤ５４は復号可能ユニットである。シーケンスデータ５４Ｂは、ピクチャ１、ピクチャ２、ピクチャ３、．．．．、ピクチャ（Ｎ−１）及びピクチャＮとして示される複数のピクチャを含むピクチャレイヤ５８を含む。各ピクチャは復号可能ユニットである。各ピクチャは、ピクチャヘッダ５８Ａとピクチャデータ５８Ｂとを含む。ピクチャデータ５８Ｂはスライスレイヤ６０を含む。スライスレイヤ６０は、スライス１、スライス２、スライス３、．．．．、スライス（Ｍ−１）及びスライスＭとして示される複数のスライスを含む。各スライスは復号可能ユニットである。スライスは、スライスヘッダ６０Ａと、それに続くスライスデータ６０Ｂとを含む。スライスのスライスデータ６０Ｂはマクロブロックレイヤ６２を含む。マクロブロックレイヤ６２は、ＭＢ１、ＭＢ２、ＭＢ３、．．．、ＭＢ（Ｐ−１）及びＭＢ  Ｐとして示される複数のマクロブロックを含む。各マクロブロックは復号可能ユニットである。各マクロブロックは、ＭＢヘッダ６２ＡとＭＢデータ６２Ｂとを含む。幾つかの復号可能ユニットは別の復号可能ユニットに依存する。従って、優先順位付けは従属復号可能ユニットを考慮に入れることになる。その上、各レイヤ中の復号可能ユニットのうちの１つ又は複数は可分である。
【００３５】
図３Ａに、電力管理モジュール１００並びにビデオ符号器エンジン１０２及びビデオ復号器エンジン１０４のブロック図を示す。電力管理モジュール１００はマルチレベル低電力モードセット発生器１１４を有する。マルチレベルモードセット発生器１１４は、ＭＰＥＧフォーマットの階層（段階化）レイヤに従って構成された複数の低電力モードを有する。複数の低電力モードは、各レイヤにおける精度(granularity)及び／又は視覚的品質の改善のために選択的に復号できる復号可能ユニットの優先電力管理（ＰＭ）シーケンスに基づく。精度は、所定の電力消費量ターゲットに対して得られる視覚的品質を最大にするために実行できる構文解析演算又は復号演算の程度を指し得る。ＰＭシーケンスは、電力管理を可能にする復号演算又は構文解析演算のシーケンスである。ＰＭシーケンスは、選択的復号演算及び／又は構文解析演算の先行処理（look-ahead processing）によって所定の電力に対する視覚的品質を最大にすることを試みる。マルチレベル低電力モードセット発生器１１４は複数のレイヤモードを有する。この構成では、複数のレイヤモードは、ＴＬモードと、ＶＳ／ＰＬモードと、ＳＬ／ＭＢモードとを含む。諒解され得るように、本明細書で説明する技法は、ＭＰＥＧフォーマットに限定されるものではなく、他のビデオ圧縮及び／又はトランスポートプロトコルフォーマットとともに使用できる。
【００３６】
一実施形態では、ビデオデータを含むデータストリームからの情報を抽出し、コンパイルし、この情報に基づいて、電力管理を可能にするデータストリームのための復号演算及び構文解析演算のシーケンス（ＰＭシーケンス）を優先順位付けする。
【００３７】
別の実施形態では、優先順位付けは、復号演算と構文解析演算とのうちの少なくとも１つの先行処理に基づく。さらに別の実施形態では、優先ＰＭシーケンスの各々のための電力と計算負荷とのうちの少なくとも１つの予測を計算する。別の実施形態では、電力管理シーケンスを優先順位付けすることは、視覚的品質と精度（granularity）とのうちの少なくとも１つに基づく。
【００３８】
これらの実施形態は、優先順位に基づいて優先電力管理シーケンスを選択的に復号するための低電力モード又は品質モードの階層リストを発生することをさらに備える。様々な低電力モード又は品質モードは、様々な程度の視覚的品質に対応する。低電力モードの選択は、利用可能な電力又は計算負荷に応答することができる。さらに、優先電力管理シーケンスのうちの１つ以上の選択的復号は、選択された低電力モードに応答することができる。別の実施形態では、選択的復号は、優先電力管理シーケンスのための電力と計算負荷とのうちの少なくとも１つの予測を計算することに基づくことができる。
【００３９】
例示的な構成では、予測モードによって示される冗長性の程度は、例えば、レイヤの段階的セットを生じ、これは低／低減電力動作モードの段階的セットにマッピングできる。Ｈ．２６４予測モードを使用する１つのフォーマットは、インター予測モード及びイントラ予測モードに対応する減少順のビデオ中の冗長性のレベルが、スキップモードと、ダイレクトモードと、インター予測モードと、イントラ予測モードとを含むことに基づく。モードの順序はまた、損なわれたとき（これらのモードに対応するＭＢの復号及び再構成の際に不正確さが導入されたとき）の視覚的品質の異なる程度に対応する。これらの概念は他のビデオ符号化規格及びフォーマットに拡張できる。
【００４０】
電力最適化ビデオ処理に向けてビデオ中の冗長性を利用するために、デコーダエンジン１０４のみを含むか、エンコーダエンジン１０２のみを含むか、又はエンコーダエンジンとデコーダエンジンにわたって調整される、幾つかの態様を電力負荷管理のために採用することができる。デコーダエンジンのみ（ＤＯ）解法の場合、ＤＯ解法は、機器１０において復号又はレンダリング中に適用することができ、エンコーダアグノスティックである。解法は、適合カテゴリーと非適合カテゴリーとに分けられ得る。適合カテゴリー解法は、規格適合性を維持するビデオストリームを出力するであろう。ここでは、厳密な適合要件が満たされるべきである。非適合解法では、この解法の利点は、視覚的品質に対する影響を最小にするためのフレキシビリティと（適合解法に比較して）複雑度のより大きい低減である。
【００４１】
エンコーダエンジン１０２のみ（ＥＯ）解法の場合、全ての複雑度低減方法は符号化中に組み込まれ、デコーダアグノスティックである。ＥＯ解法では、全ての符号化関数は処理能力の観点からバイアスされる。随意に、処理能力のコスト関数が、レート歪み（ＲＤ）電力最適化と呼ばれるＲＤ最適化に含まれる。
【００４２】
ジョイントエンコーダデコーダエンジン（ＪＥＤ）解法の場合、符号化中に電力低減方法が組み込まれるか又は採用され、デコーダエンジンは、（電力／負荷／コストの）低減の増大を可能にするための適切な相互アクションを実行する。ＪＥＤ解法では、エンコーダエンジンは、上記で説明したＤＯ解法方法を適用するためにデコーダエンジンの機能を認識しており、デコーダエンジンにおいて使用するために、ビットストリーム（ユーザフィールド又は補足拡張情報（ＳＥＩ）メッセージ）又はサイドチャネル中に適切なアクションのためのインジケータを組み込む。電力低減のセットに基づく前もって同意されたプロトコルが、電力／負荷／コストの低減の増大のためにエンコーダエンジンとデコーダエンジンの両方によって採用されるであろう。
【００４３】
ＤＯ解法は、デコーダエンジンが符号化プロセスを認識していないオープンエンド型アプリケーションに適用する。例には、モバイルＴＶ、ビデオオンデマンド（ＶＯＤ）、ＰＭＰなどが含まれるであろう。ＥＯ解法は、低電力機器を駆動するために電力フレンドリーなビットストリームが必要とされるビデオサーバにおいて適用されるであろう。ＥＯ解法はまた、ソースの複数の符号化バージョンが発生され、ネットワークサーバがネットワーク／チャネル状態に基づいてそれらを適応的に選択し、それらの間で切り替わるシナリオにおいて有用である。ＪＥＤ解法は、ＤＯ又はＥＯ解法方法に比較して、所定の品質のための電力低減に関して最も多くの利得を与える。ＪＥＤ解法は、通信／制御パス（リアルタイム又はアプリオリ（apriori））が可能である、クローズ又は対話型アプリケーションに適用する。
【００４４】
以下の説明は、ＤＯ解法を対象とし、ビデオ復号における実装及び演算複雑度を調整するためのマルチレイヤフレームワーク構成を与える。モバイルＴＶ、ポータブルマルチメディアプレーヤ（ＰＭＰ）、（ムービー／ＤＶＤプレーヤ）などの様々なアプリケーションによって拡張されたビデオ再生が必要とされる場合、ビデオ復号及びレンダリング演算における負荷管理が可能である。マルチレイヤフレームワーク構成において実施される、本明細書で説明する技法は、任意のビデオ又はマルチメディアアプリケーションに拡張され得る。
【００４５】
負荷又は電力管理は、限定はしないが、遅延、電力消費量、及び毎秒百万命令又はプロセッササイクル（ＭＩＰＳ）有用性を含むランタイム複雑度の調整を参照する。調整は、利用可能な処理、電力及び時間リソースを想定して、ユーザ経験、特に、ビデオ品質を最適化することを含む。調整はまた、例えば、オーディオ品質、応答時間、グラフィックスの品質など、ビデオ品質以外の他の性能ファクタを包含し得る、ユーザの経験品質（ＱｏＥ）を最適化するために行われ得る。マルチレイヤフレームワーク構成は、（１つ以上の）アプリケーションによるビデオデコーダ実装形態に対する瞬時の要求に対する予備的応答と反動的応答の両方に対して、精度の様々なレベルにおいてそのような調整を可能にする。利用可能な情報及び電力（バッテリー）レベル又は所望の視覚的品質に基づいて、代替の実行又は制御／データフローパスが推奨される。上記に鑑みて、本明細書で行う説明は、主に、デコーダエンジン１０４によって実行されるＤＯ演算を対象とする。デコーダエンジン１０４によるビデオ復号の後に、ディスプレイプロセッサ２８中のレンダリングステージ２８Ａ（図２３）によって実行されるレンダリングが続き得る。復号／レンダリングは連続プロセスである必要はない。例えば、複数のスライスを並行して復号することができ、画像の列を並行して、又は連続的とは見なされ得ない波形様式でレンダリングすることができる。とはいえ、復号の後に連続してレンダリングを行うのが標準であるが、一構成では、これらの演算は並行化される。レンダリングは、一般に、後処理（色空間変換、スケーリングなど）と、それに続く、表示すべき画像の合成と、表示プロセス（ディスプレイバッファへの転送、このバッファからの読込み、及び表示するための書込み）とを含む。例示のために、復号の後に連続プロセスにおいてレンダリングが行われ、復号は時間順に行われる（タイミングは、復号のための復号タイムスタンプと、レンダリング／表示のための提示タイムスタンプとに基づく）。しかしながら、このプロセス（復号及びレンダリング）への入力は、（おそらくファインダの場合を除いて）必ずしも視覚的品質に関して重要性の順に優先順位付けされない（すなわち、瞬間デコーダリフレッシュ（ＩＤＲ）フレーム、フレーム内（Ｉ）フレーム及び予測（Ｐ）フレームが点在する）ビデオビットストリームである。また、ビデオビットストリームをデコーダエンジン１０４に配信するトランスポートレイヤプロトコルは、パケット／シーケンス番号の順にデコーダエンジン１０４に提示されるパケットで配信する。ビットストリームを受信順で処理することにより、フレームドロップが生じることがあり、（バッテリーを節約するためにユーザ起動されたか、若しくは利用可能な又は割り当てられた電力に基づいてシステムによって変調された）低電力動作のために出力ビデオの品質を抑圧することはできない。プロセッササイクル、ＭＩＰＳの不足、並びに／若しくは累積遅延及び待ち時間により、一般にサイズがより大きいキーフレームがドロップされて、長い継続時間の間ビデオがストールすることになり得る。
【００４６】
エンコーダエンジン１０２は、ビデオデータを取得又は発生し、ＭＰＥＧ規格、Ｈ．２６４又は他の規格に従って圧縮する。ビデオデータは、符号化が、機器１０の画質、電力、及び／又は計算負荷要件、並びに／若しくは出力ビデオインターフェースの送信機能、帯域幅、若しくは機器１０又はビデオ対応機器の他の特性（例えば、無線又は有線インターフェース）を満たすように、ビデオ情報の選択された部分を抽出するために処理される。さらに、符号化は、（受信者による）復号が、品質、電力及び／又は計算要件並びに受信者のデコーダエンジン又は受信機１４の機能を満たすようなものとすることができる。
【００４７】
図３Ｂに、電力管理モジュール１００とともに使用するデコーダエンジン１０４のブロック図を示す。デコーダエンジン１０４は、電力管理又は低電力モードが必要でないときにビットストリームを復号するための標準（通常）シーケンス復号処理ユニット１０５を含む。デコーダエンジン１０４はまた、トランスポートレイヤ（ＴＬ）構文解析器及び処理ユニット１０６と、ビデオシーケンス／ピクチャレイヤ（ＶＳ／ＰＬ）構文解析器及び処理ユニット１０８と、スライス／ＭＢレイヤ（Ｓ／ＭＢＬ）構文解析器及び処理ユニット１１０と、ブロックレイヤ構文解析器及び処理ユニット１１２とを含む。例示的な構成では、ブロックレイヤ６４における電力及び計算負荷管理については説明しない。
【００４８】
以下の説明からわかるように、ＴＬ構文解析器及び処理ユニット１０６はトランスポートレイヤ５２を構文解析し、処理する。ＶＳ／ＰＬ構文解析器及び処理ユニット１０８は、少なくともシーケンスレイヤ５４及びピクチャレイヤ５８を構文解析し、処理する。シーケンスレイヤ５４とピクチャレイヤ５８との組合せは、以下でビデオシーケンス／ピクチャレイヤ（ＶＳ／ＰＬ）７０と呼ばれる。しかしながら、ＶＳ／ＰＬ構文解析器及び処理ユニット１０８は、ＧＯＰレイヤ５６を構文解析し、処理することもでき、又は何らかの他の構文解析器及び処理ユニットをＧＯＰレイヤ５６のために採用することができる。従って、参照番号７０からＧＯＰレイヤ５６への線は想像線で示されている。Ｓ／ＭＢＬ構文解析器及び処理ユニット１１０は、スライスレイヤ６０及びマクロブロック（ＭＢ）レイヤ６２を構文解析し、処理する。ブロックレイヤ構文解析器及び処理ユニット１１２は、ＭＰＥＧフォーマットのビデオ又はプログラミングを復号するためにブロックレイヤ６４を構文解析し、処理する。
【００４９】
本明細書で説明する電力及び計算負荷管理機能を実行するために、構文解析器及び処理ユニット１０６、１０８、１１０、及び１１２のうちの１つ又は複数を、並行して、別々に、又は組み合わせて動作させるために採用することができる。さらに、構文解析器及び処理ユニット１０６、１０８、１１０、及び１１２の電力及び計算負荷管理機能のうちの１つ又は複数を省略することができる。とはいえ、例示的な構成では、また、電力を効率的に使用しながらユーザの経験を維持又は向上させるように、ティアのうちのいずれか１つにおいて視覚的品質を電力負荷及び精度とトレードして視覚的品質を制御するティア化された電力及び計算負荷管理機能を与えるために、構文解析器及び処理ユニット１０６、１０８及び１１０を必要に応じて選択的に作動させる。
【００５０】
図４に、復号可能ユニットの優先電力管理（ＰＭ）シーケンスを復号するための電力及び計算負荷を予測するためのプロセス１２０のフローチャートを示す。選択的復号のために、ビットストリームと、それに伴う復号可能ユニットの電力管理（ＰＭ）シーケンスを優先順位付けするために、各階層（ティア化）レイヤについて３段階プロセス１２０を実行して、階層的に構成された低電力動作モードを与える。プロセス１２０はビデオビットストリームの非因果性に依拠し、その効率はルックアヘッドの量（デコーダエンジンの入力バッファ深度）に依存する。
【００５１】
プロセス１２０はブロック１２２において開始し、レイヤ情報の構文解析及び抽出を行う。ブロック１２２の後にブロック１２４が続き、復号を必要とする復号可能ユニットのＰＭシーケンス（シーケンスレイヤではない）を優先順位付けする。説明のために、後でより詳細に説明するように、復号可能ユニットの優先ＰＭシーケンスをリストの形式で示す。「復号可能ユニットの優先ＰＭシーケンス」という用語は、以下で、「優先ＰＭシーケンス」と呼ばれることがある。ただし、各シーケンスは１つ以上の可分復号可能ユニットを含む。復号可能ユニットは、以下の説明からわかるように、ピクチャ、スライス、及びマクロブロックのグループのうちの１つ又は複数を備える。
【００５２】
ブロック１２４の後にブロック１２６が続き、優先ＰＭシーケンスのための電力及び計算負荷を予測する。例示的な構成では、計算負荷は、百万命令毎秒（ＭＩＰＳ）の数に応じて予測される。対応するＭＩＰＳは、予測電力又は所定の電力を必要とする。
【００５３】
ブロック１２６において、優先ＰＭシーケンスと、対応するＭＩＰＳ、続いて、ＰＭシーケンスのうちの１つ又は複数を復号するために必要とされる電力との相関がある。ブロック１２２及び１２４については、以下でＨ．２６４規格に関して説明する。ブロック１２６は、典型的なシナリオ（例えば、テストビットストリーム）に対応する電力分析からの結果と、随意に、予測において使用するフィードバック駆動型トレーニング又はランタイム更新とを使用することができる。ビットストリームが知られると、ビットストリームを完了まで復号するのに十分な電力が機器１０にないかどうかをユーザに通知するために、電力及び計算負荷（処理能力）を予測することができる。従って、（再生中などに）ビットストリームが完全に復号される前に電力（バッテリー又は電力）が消耗した場合、ユーザは、ビットストリームを完了することを可能にするであろう電力モードを選択するためのオプションを有する。
【００５４】
前述のように、圧縮データフォーマット中の様々なレイヤについて３段階プロセス１２０を反復することができる。（様々なレイヤに対応する）各ブロック１２６の後、デコーダエンジン１０４が復号演算の電力及び計算負荷管理に利用するための低電力モードの階層セットが発生される。これは、オンザフライで起こり得るか、又はリアルタイム演算より前に、適宜に選択されたビットストリームのセットと、事前に較正／プログラムされたデコーダについて、あらかじめ設定され得る。
【００５５】
図５に、トランスポートレイヤ（ＴＬ）構文解析器及び処理ユニット１０６を示す。ＴＬ構文解析器及び処理ユニット１０６は、ＴＬ情報抽出器及びコンパイラ１５０（図６）と、ＴＬ優先ＰＭシーケンス発生器１５２（図８）と、ＴＬ復号ＭＩＰＳ及び電力予測器１５４（図９）とを含む。トランスポートレイヤ（ＴＬ）構文解析器及び処理ユニット１０６は、トランスポートレイヤ５２のための復号演算の電力及び計算負荷管理において使用する３段階プロセス１２０を実行する。
【００５６】
図６に、ＴＬ情報抽出器及びコンパイラ１５０を示す。ＴＬ情報抽出器及びコンパイラ１５０は、ビデオビットストリームを受信するためのトランスポートプロトコルに依存する。受信タイムスライス１９０の部分の一例を図７に示す。例示的な構成では、ビットストリーム中の様々な情報をＴＬ情報抽出器及びコンパイラ１５０によって抽出し、コンパイルすることができる。ＴＬ情報抽出器及びコンパイラ１５０は、図７に示す受信タイムスライス１９０を構文解析する。ＴＬ情報抽出器及びコンパイラ１５０は、ランダムアクセスポイント（ＲＡＰ）抽出器１６０と、状態情報抽出器１６６と、ビットストリーム特性抽出器１７６と、トランスポートレイヤ情報コンパイラ１８６とを含む。ＲＡＰ抽出器１６０は、取得としてフラグを付けられたパケット／スライスのロケーション、サイズ、提示タイムスタンプ（ＰＴＳ）などを有する情報１６２を抽出することができる。ＲＡＰ抽出器１６０はまた、トランスポートヘッダ（例えば、リアルタイムトランスポートプロトコル（ＲＴＰ）ペイロードフォーマットのエントリポイントヘッダ）中のＲＡＰ１６４のシーケンスを抽出することができる。例示的な構成では、状態情報抽出器１６６によって抽出された状態情報は、（ブロードキャスト又はモバイルＴＶアプリケーションなどにおける）チャネル変更１７０及びユーザ閲覧選好１７２に関する情報を含む。抽出された状態情報１６６はまた、アプリケーションにおける変更１７４（例えば、解像度／プレビューモード又はピクチャインピクチャモード）などを含み得る。
【００５７】
ビットストリーム特性抽出器１７６は、ビットレート１７８、フレームレート１８０、解像度１８２、アプリケーション（記憶対ストリーミング）１８４などを抽出する。ビットレート１７８の場合、値は、場合によっては容易に入手可能である（例えばＭＰＥＧファイルフォーマット）。他の場合には、ビットレートは、トランスポートヘッダ及びパディングが削除された後に、タイムスタンプによって示される１秒当たりのビットストリームのサイズに基づいて、トランスポートレイヤ情報コンパイラ１８６などによって計算される。ＴＬレイヤ情報抽出器及びコンパイラ１５０は、受信タイムスライスのトランスポートレイヤから直接抽出可能でない情報を計算するためのＴＬ情報コンパイラ１８６を含む。パケットサイズ及びビットレートのための例示的な計算については、図９に関して説明する。
【００５８】
図７に、この例では、受信データ中にＲＡＰ1１９１、ＲＡＰ2１９６、．．．ＲＡＰN１９８をもつ受信タイムスライス１９０を示す。（受信タイムスライス１９０は、随意に、記憶されたファイルから抽出されたビットストリームのセクションとすることができる）。ＲＡＰ1１９１など各ＲＡＰは、ヘッダ１９２と、それに続く、Ｉフレームなど、ランダムアクセスポイントである符号化フレームに関係するデータを有するペイロード１９３とを有する。ヘッダは、そのうちの１つがＰＴＳ1区間１９４である複数のフィールドを含む。各ＲＡＰについてＰＴＳ1区間１９４から絶対ＲＡＰロケーション（パケット）及びＰＴＳ値が計算される（例えば、ＲＴＰでは、ランダムアクセス（ＲＡ）カウントと基準時間とＰＴＳオフセットとから導出される）。ＲＡＰ2１９６は、ヘッダと、それに続く、Ｉフレームなど、ランダムアクセスポイントである符号化フレームに関係するデータを有するペイロードとを有する。ヘッダは、そのうちの１つがＰＴＳ2区間である複数のフィールドを含む。
【００５９】
ＲＡＰ−−ＧＯＰとして示される区間は、ＲＡＰフレームで開始し、次のＲＡＰフレームまでのグループオフピクチャとして定義される。トランスポートレイヤにおいて、ＲＡＰは復号可能ユニットである。さらに、ＲＡＰ−−ＧＯＰは、トランスポートレイヤのための復号可能ユニットとすることができる。アプリケーションに基づいて、必要な場合、より多くのデータが検索又は要求される。例えば、記憶されたビデオの再生中に、ビットレート及びフレームレートを査定するために、数秒（２〜５秒）相当のデータを求めてファイルフォーマットヘッダを探索することが可能であり得る。次いで、利用可能な電力に基づいて、データのすべてを復号するか、又は低減されたフレームレートに向けて復号することを決定する。
【００６０】
受信タイムスライス１９０は、ＭｅｄｉａＦＬＯ（商標）のためのスーパーフレーム、又はＤＶＢ−Ｈ（Ｈはハンドヘルドを表す）などのデジタルビデオブロードキャスト（ＤＶＢ）のためのタイムスライスとすることができる。
【００６１】
図８に、ＴＬ優先ＰＭシーケンス発生器１５２を示す。上記で抽出された情報を処理して、復号可能ユニット２００のＴＬ優先ＰＭシーケンスのリストを生成する。ＴＬ優先ＰＭシーケンス発生器１５２は絶対パラメータ値を導出する。トランスポートレイヤ５２を仮定すると、対応するＧＯＰとともに複数のパケットＲＡＰ1１９１、ＲＡＰ2１９６、．．．ＲＡＰN１９８が受信されている。従って、デコーダエンジン１０４によって復号すべき復号可能ユニットのＴＬ優先ＰＭシーケンスは、ブロック２０２で開始する。ここで、復号可能ユニットは、ブロック２０２におけるＲＡＰ1、ブロック２０４におけるＲＡＰ−−ＧＯＰ1の残部、ブロック２０６におけるＲＡＰ2、ブロック２０８におけるＲＡＰ−ＧＯＰ2の残部である。ＴＬ優先ＰＭシーケンスの優先順位付けは、ブロック２１０における復号可能ユニットＲＡＰN、及びブロック２１２におけるＲＡＰ−−ＧＯＰNの残部まで続く。復号可能ユニットのＴＬ優先ＰＭシーケンスの上記の説明は、シーケンスの構成の一例にすぎない。
【００６２】
図９に、ＴＬ復号ＭＩＰＳ及び電力予測器１５４を示す。トランスポートレベル５２において、第１のレベルの電力／計算負荷低減が可能である。このレベルは、粗い電力／計算負荷低減を行うことができる。例えば、最低電力モード設定の場合、又は機器１０のバッテリーレベルが＜１０％まで消耗したとき、（ブロック２０２、２０６及び２１０によって示される）ＲＡＰパケットのみが復号されることになり、レンダリングステージ２８Ａによってレンダリングしながら、随意に、グラフィックス処理ユニット３４は、Ｉフレーム間に遷移効果を生成するようにトリガされ得る。遷移効果は、スライドショー効果の代わりに低コスト「ビデオ」を与える。低電力モードに基づいて、スキップされた復号可能ユニットを補償するために他のビデオ補償を使用することができる。例えば、画像モーフィングを採用することができる。補償の別の例はオプティカルフローを採用することができる。
【００６３】
ＴＬ復号ＭＩＰＳ及び電力予測器１５４は、ＴＬ優先ＰＭシーケンス２００のリスト中の復号可能ユニットのＰＭシーケンスの１つ、複数又はすべてを復号するためのＭＩＰＳに対する予測（列４）を表すデータを発生する。例示及び説明のためにのみ、ＭＩＰＳ予測テーブル２３０を示す。テーブルは複数の列を有する。列Ｃ１では、トランスポートレイヤ情報又は復号可能ユニットのＴＬ優先ＰＭシーケンスが項目別に示されている。列２では、復号可能ユニットの一部又は全部を復号するためのパケットサイズが識別される。列Ｃ３では、ビットレート計算が識別される。列Ｃ４では、復号可能ユニットを復号するための予測ＭＩＰＳが与えられる。諒解され得るように、列Ｃ３中のビットレート及び列Ｃ２中のパケットサイズは、優先順位付け段階中に導出され得る。
【００６４】
この例では、行Ｒ１は、復号可能ユニット２００のＴＬ優先ＰＭシーケンスのリスト中の第１の復号可能ユニットを識別する。この例では、第１の復号可能ユニットはＲＡＰ1である。ＲＡＰ1のパケットサイズは、ＴＬ抽出器及びコンパイラ１５０から抽出され、コンパイルされた情報に基づいて計算できる。例示的な構成では、ＲＡＰ1のための復号パケットサイズは、ＲＡＰ1のためのトランスポートパケットのサイズ、すなわち、（トランスポートヘッダ１９２＋ペイロード１９３）のサイズに対応する。ＲＡＰ2のための復号パケットサイズは、ＲＡＰ2のためのトランスポートパケットのサイズ、すなわち、（トランスポートヘッダ＋ペイロード）のサイズに対応する。同様に、ＲＡＰNのための復号パケットサイズは、ＲＡＰNのためのトランスポートパケットのサイズ、すなわち、（トランスポートヘッダ＋ペイロード）のサイズに対応する。行ＲＮ＋１（最後の行）は、スライス１９０など、受信タイムスライス全体に対応する。従って、各復号可能ユニットのためのＭＩＰＳの予測が計算され、受信タイムスライス１９０のトランスポートレイヤ５２全体のための行ＲＮ＋１において、全ての復号可能ユニットのためのＭＩＰＳの予測が計算される。
【００６５】
列３では、ビットレートが計算又は抽出される。この場合、ビットレートは、（ＰＴＳ2−ＰＴＳ1）つまり（ＰＴＳ2マイナスＰＴＳ1）で除算された区間（ＲＡＰ−−ＧＯＰ1）のサイズに従って、ＲＡＰ、ＧＯＰ1、ＰＴＳ2、ＰＴＳ1に基づいて計算される。ＲＡＰ2、．．．ＲＡＰNのためのビットレートは、ＲＡＰ1と同様にして計算される。行ＲＮ＋１では、ビットレートは、受信タイムスライス／区間（ＰＴＳ2−ＰＴＳ1）のサイズである。
【００６６】
列４では、行Ｒ１において、ＲＡＰ1を復号するための予測ＭＩＰＳは２つの値を有する。第１の値は、ＲＡＰ1のＩフレームサイズの関数である。第２の値は、所定のコーデックのためのサイズ（ＲＡＰ−−ＧＯＰ1）のビットストリームのその部分の関数である。ＭＩＰの予測のための情報は、トランスポートヘッダ（ＲＡＰ及び対応するＰＴＳ）から入手可能である。従って、復号可能ユニットは可分であり、ＭＩＰＳを予測するとき、完全には復号されない。代わりに、以下でより詳細に説明するように、必要な情報を抽出するために、そのヘッダ又は一部分のみを復号する必要がある。行ＲＮ＋１では、タイムスライス全体を復号するための予測ＭＩＰＳは、所定のコーデックのための（そのタイムスライスの）ビットストリームサイズに従って予測される。指定された量に対する復号するためのＭＩＰＳ予測は、電力プロファイリング及び分析によるものであることに留意されたい。
【００６７】
列Ｃ４中のＭＩＰＳ予測の各々について、対応する電力要件を判断することができる。対応する電力は、必要に応じて計算され得るか、又はルックアップテーブルに事前記憶され得る。これは、一般に、３段階プロセス１２０の第３段階を完了する。
【００６８】
図１０に、電力及び計算負荷管理を用いて復号するためのプロセス２４０を示す。復号可能ユニットのうちの１つ又は複数を復号するためのＭＩＰＳ要件、及び所定の瞬間における利用可能なＭＩＰＳ、（又は電力要件対利用可能な電力／アンペア）が与えられれば、受信タイムスライス１９０の全部を復号するか、一部を復号するかの決定を行うことができる。プロセス２４０は、想像線で示されたプロセス１２０の第３段階とともに示されている。プロセス１２０の第３段階は、トランスポートレイヤ５２を復号するために必要な計算負荷及び／又は電力のための必要な予測を与える。従って、ブロック２４２において、ＭＩＰＳを予測する。ブロック２４４において、予測ＭＩＰＳに対応する電力を判断する。例示的な構成はＭＩＰＳと電力の関係を考慮に入れているが、電力及び計算負荷に影響を及ぼす他の値を採用することができる。
【００６９】
ブロック２４４は第３段階を終了する。ブロック２４４の後にブロック２４６が続き、所定の瞬間の利用可能なＭＩＰＳ（計算負荷）を判断する。また、ブロック２４４の後にブロック２４８が続き、所定の瞬間の利用可能な電力を判断する。ブロック２４６とブロック２４８は並列に示されている。とはいえ、様々な構成において、プロセス２４０のブロック及び本明細書で説明する他のプロセスは、図示の順序で実行され、若しくは、これらのステップの少なくとも２つ又はその部分は、同時に、並行して、又は異なる順序で実行され得る。
【００７０】
ブロック２４６の後にブロック２５０が続き、予測ＭＩＰＳが利用可能なＭＩＰＳよりも大きいかどうかの判断を行う。その判断が、その瞬間に利用可能な計算負荷が十分であることを意味する「いいえ」である場合、ブロック２５４においてトランスポートレイヤ５２のすべてを復号し得る。しかしながら、ブロック２５０における判断が、利用可能な計算負荷が不十分であることを意味する「はい」である場合、ブロック２５６において、低電力モード設定２６０（図１１）のリスト中で識別されるモードのうちのいずれかに従ってトランスポートレイヤ５２の一部を復号し得る。
【００７１】
ブロック２４８の後にブロック２５２が続き、予測電力が利用可能な電力に匹敵するかどうかの判断を行う。ブロック２５２における判断が、利用可能な電力が十分であることを意味する「いいえ」である場合、トランスポートレイヤ５２のすべてを復号し得る。しかしながら、ブロック２５２における判断が、利用可能な電力が不十分であることを意味する「はい」である場合、ブロック２５６において、低電力モード設定２６０（図１１）のリスト中で識別されるモードのうちのいずれかに従ってトランスポートレイヤ５２の一部を復号し得る。ブロック２５０とブロック２５２からの両方の条件がいいえである場合、トランスポートレイヤ５２のすべてが復号されるであろう。全ての他の場合には、トランスポートレイヤ５２は部分的に復号されるであろう。ブロック２４８、２５２は、それらも随意であることを示すために想像線で示されている。
【００７２】
図１１に、ＴＬモード中のマルチレイヤ低電力モードセット発生器１１４を示す。マルチレイヤ低電力モードセット発生器１１４は、選択可能な低電力モード設定のリスト２６０を発生する。図１１の例示的な構成では、行Ｒ１のモード１、行２のモード１Ａ、及び行３のモード２として示される複数のトランスポートレイヤ低電力モードがある。トランスポートレイヤモード１は、例えば、全てのＲＡＰを使用するスライドショー（以下「ＳＳ−ＲＡＰ」と呼ぶ）に対応する。トランスポートレイヤモード１Ａは、レンダリングステージ２８Ａによる遷移効果をもつＳＳ−ＲＡＰに対応する。従って、モード１Ａは、モード１に勝る拡張視覚的品質を与えるという点で、モード１とは異なる。トランスポートレイヤモード２は、利用可能な電力に基づくＲＡＰ−−ＧＯＰの選択的な復号に対応する。列Ｃ２のリストは、デコーダエンジン１０４に、トランスポートレイヤ５２において復号可能ユニットのうちの１つ又は複数を選択的に復号させるための必要な命令を与えるであろう。
【００７３】
ＴＬモード中の電力管理モジュール１００は、予測ＭＩＰＳ及び／又は電力に基づいて、ビットストリームの復号のために低電力モード１、１Ａ又は２のうちのどれをユーザに与えることができるかの判断を行う。ビデオシーケンス／ピクチャレイヤに関して後述するように、復号可能ユニットの他のレイヤの電力を管理することに基づいて、さらに節約され得る利用可能な電力がある場合、モード２を選択することができる。
【００７４】
ＴＬモード１Ａが選択された場合、遷移効果をもつＳＳ−ＲＡＰ（Ｉフレーム）の通常復号が行われる。しかしながら、ＴＬモード１が選択された場合、電力管理モジュール１００は、視覚的品質のさらなるアップグレードのためにＶＳ／ＰＬモード３に進み得る。
【００７５】
シーケンス／ピクチャレイヤ
図１２に、ビデオシーケンス／ピクチャレイヤ（ＶＳ／ＰＬ）構文解析器及び処理ユニット１０８を示す。ＶＳ／ＰＬ構文解析器及び処理ユニット１０８は、ＶＳ／ＰＬ情報抽出器及びコンパイラ２８０（図１３）と、ＶＳ／ＰＬ優先ＰＭシーケンス発生器２８２（図１５）と、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４（図１７）とを含む。ＶＳ／ＰＬ構文解析器及び処理ユニット１０８は、ＶＳ／ＰＬ７０のための復号演算の電力／計算負荷管理において使用する３段階プロセス１２０を実行する。
【００７６】
図１３に、ＶＳ／ＰＬ情報抽出器及びコンパイラ２８２を示す。ＶＳ／ＰＬ情報抽出器及びコンパイラ２８２はビデオビットストリームのＶＳ／ＰＬフォーマットに依存する。ＶＳ／ＰＬ７０による受信タイムスライス３３０の一例を図１４に示す。ビデオコーデック（エンコーダエンジン及びデコーダエンジン）に基づいて、シーケンスレイヤ５４において情報を抽出する。ＭＰＥＧ−２及びＭＰＥＧ−４の場合、ビデオシーケンスレイヤパラメータを抽出する。これは、ビデオデコーダエンジン１０４へのインターフェースを必要とする。抽出については、図２７及び図２８に関して後述する。
【００７７】
トランスポートレイヤ５２に記載されている幾つかのパラメータ（例えばＩフレームロケーション又はパケットＩＤ）が検索できなかった場合、そのような情報はシーケンスレイヤ５４において抽出され得る。ＶＳ／ＰＬ情報抽出器及びコンパイラ２８０はＩフレームロケーション２８４又はパケットＩＤ２８６を抽出する。ＶＳ／ＰＬ情報抽出器及びコンパイラ２８２はまた、Ｈ．２６４規格又はシーケンスレイヤ５４などのためのシーケンスパラメータセット（ＳＰＳ）から、プロファイル２９０、レベル２９２、及びパラメータ制約（ｃｏｎｓｔｒａｉｎｅｄ＿ｓｅｔ＿ｆｌａｇｓ）２９４を抽出する。ピクチャパラメータセット（ＰＰＳ）を使用することもできる。
【００７８】
ＶＳ／ＰＬ情報抽出器及びコンパイラ２８２はまた、ピクチャ情報２９６を抽出又はコンパイルすることができる。ピクチャ情報は、データを復号／処理するために必要とされる計算負荷を査定するための、幾つかの参照フレーム２９８、解像度３００、（まだ検索されていない場合）フレームレート３０２、表示パラメータ（ＶＵＩ）などを含み得る。追加情報は、基準ロケーション３０４と、参照ピクチャサイズ３０６と、ＰＴＳと、基準ピクチャ情報３０８とに関する情報を含む。また、非参照ピクチャロケーション３１０、非参照ピクチャサイズ３１２、非参照ピクチャ情報３１４、及びＰＴＳを抽出又はコンパイルすることができる。コンパイルされる情報は情報コンパイラ３１６によってコンパイルされる。ＶＳ／ＰＬ情報を抽出するために、シーケンスヘッダ及び全てのピクチャヘッダのみが復号される。図２７及び図２８でより詳細に説明するように、ピクチャのペイロードは復号されないままである。
【００７９】
図１５に、ＶＳ／ＰＬ優先ＰＭシーケンス発生器２８２を示す。ＶＳ／ＰＬ優先ＰＭシーケンス発生器２８２において、抽出された情報から絶対パラメータ値を導出する。復号可能ユニットの優先ＰＭシーケンスＶＳ／ＰＬのリスト３６０は、精度の改善のためのより多くの詳細でポピュレートされる。優先順位付けは、図８に関して説明したものと同様である。しかしながら、このレベル又はレイヤにおいて、トランスポートレイヤ５２中で識別された複数のパケットＲＡＰ1、ＲＡＰ2、．．．ＲＡＰN（ブロック３６２、３８２、３８８）に、Ｈ．２６４の場合はＩＤＲ及びＩフレームなど、Ｉフレームのタイプに基づいて、さらに資格を与えるか又は優先順位を付ける。代替的に、ピクチャヘッダ情報を使用して全てのＩフレームを識別し、次いで優先順位付けする。
【００８０】
例示的な構成では、ブロック又は区間ＲＡＰ−−ＧＯＰ1３６４を他のＶＳ／ＰＬ復号可能ユニットにさらに再分割する。これらのＶＳ／ＰＬ復号可能ユニットを、ＩＤＲ（又は、ＭＰＥＧ−２におけるクローズドＧＯＰの始端のＩフレーム）の後に非ＩＤＲ  Ｉフレーム（オープンＧＯＰ）が続くように、さらに優先順位付けする。従って、ＩＤＲフレーム３６６の後にＩフレーム３６８が続くように、優先順位が設定され得る。Ｉフレーム３６６の後にＰフレーム３７０が続き、その後に参照Ｂフレーム３７２が続く。次いで、参照Ｂフレーム３７２の後に、ｂフレーム３７４として示される非参照Ｂフレームが続く。図１４は、フレームタイプ（Ｐ、Ｂ及びｂ）を示す受信タイムスライス３３０を示す。
【００８１】
従って、デコーダエンジン１０４によって復号すべきＶＳ／ＰＬ優先ＰＭシーケンスは、ブロック３６２においてＲＡＰ1で開始し、その後にブロック３６４においてＲＡＰ−−ＧＯＰ1が続く。ブロック３６６、３６８、３７０、３７２及び３７４に従って、ＲＡＰ−−ＧＯＰ1をさらに優先順位付けする。ｂフレームに基づいて、ＲＡＰ−−ＧＯＰ1に対応する区間をさらに優先順位付けすることができる。例示的な構成では、ブロック３７６〜ブロック３８０において、ｂフレームのサイズ情報を使用して、ＶＳ／ＰＬ優先ＰＭシーケンスをさらに優先順位付けする。例えば、ＦＲＵＣ＿ＴＨＲ（ブロック３７６）として示されるＦＲＵＣしきい値よりも大きいサイズ情報を有するｂフレームは、ＦＲＵＣしきい値よりも小さいサイズを有するｂフレームよりも高い優先度を有することができる。さらに、ＤＲＯＰ＿ＴＨＲとして示されるドロップしきい値よりも小さいｂフレームにフラグを付け、それをＦＲＵＣなしに完全にドロップすることができる。従って、ブロック３７８において、優先順位付け基準は、ＤＲＯＰ＿ＴＨＲ＜ｂ＜ＦＲＵＣ＿ＴＨＲとして設定できる。ブロック３８０において、優先順位付け基準は、ｂ＜ＤＲＯＰ＿ＴＨとして設定できる。これらのしきい値は、必要とされる処理サイクル／電力の低減率にマッピングできる。
【００８２】
ブロック３８２は、ＲＡＰ2を復号するための優先順位を設定する。ブロック３８４の後にブロック３８２が続き、上記のブロック３６６、３６８、３７０、３７２、３７４、３７６、３７８及び３８０と同様にＲＡＰ−−ＧＯＰ2の残部を優先順位付けする。ブロック３８６におけるＶＳ／ＰＬ優先ＰＭシーケンスの優先順位付けは、ＲＡＰNの復号を優先順位付けするためのブロック３８８まで続く。ブロック３８８の後にブロック３９０が続き、復号のためにＲＡＰ−−ＧＯＰNの残部を優先順位付けする。
【００８３】
計算負荷のステータスに応じて、適切な数の低優先度シーケンス又は選択可能な復号可能ユニットの削除によって復号演算のシーケンスを低減又は変更することができる。
【００８４】
図１６に、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４によってＭＩＰＳを予測するためのプロセス４００のフローチャートを示す。プロセス４００はブロック４０２で開始し、ＩＤＲフレームサイズを復号するためのＭＩＰＳを判断する。ブロック４０２の後にブロック４０４が続き、全てのＩフレームサイズを復号するためのＭＩＰＳを判断する。ブロック４０４の後にブロック４０６が続き、全てのＰフレームサイズを復号するためのＭＩＰＳを判断する。ブロック４０６の後にブロック４０８が続き、全てのＢフレームサイズを復号するためのＭＩＰＳを判断する。ブロック４０８の後にブロック４１０が続き、様々な条件をもつ全てのｂフレームサイズを復号するためのＭＩＰＳを判断する。例えば、（ｂ1フレーム及びｂ2フレームなど）ｂフレームの一部がドロップされる場合、復号するための予測ＭＩＰＳは０に設定される。
【００８５】
図１７に、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４を示す。フレームレベルにおいて、（ＩＤＲ、Ｉ、Ｐ、Ｂ、ｂ．．．などの）フレームタイプ、サイズ（３０６又は３１２）及びフレームレート３０２は、それらを復号するために必要とされるプロセッササイクルの量又は割合を査定するために使用できる主要なファクタである（他の修飾子が含まれ得る）。特定のテストビットストリームを使用する電力プロファイリング及び分析を使用して、フレームタイプ（ＩＤＲ、Ｉ、Ｐ、Ｂ、ｂ．．．）に基づくプロセッササイクルの量とフレームサイズとの間の関係を導出することができる。これらの関係は、ＭＩＰＳ及び電力予測において後で使用するためにルックアップテーブル中に構成できる。他の条件をこの分析中に定め、後で外挿することができる。例えば、１参照ピクチャシナリオのためのマッピングを導出し、独立分析に基づいて５参照ピクチャに対する相対複雑度を外挿することができる。Ｈ．２６４規格の場合、スライスヘッダが構文解析されるまで、フレームレベル情報は利用不可能である。
【００８６】
図１７では、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４は、復号するための予測ＭＩＰＳのリスト４４０を発生する。リストは、例示及び説明のために発生される。行Ｒ１において、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４は、各ＩＤＲのサイズ（ＩＤＲ）に基づいてＩＤＲフレームのために予測する。行Ｒ２において、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４は、Ｉフレームサイズ（サイズ（Ｉ1）、サイズ（Ｉ2）、．．．）のシーケンスに基づいて、全てのＩフレームのための予測ＭＩＰＳを発生する。行Ｒ３において、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４は、Ｐフレームサイズ（サイズ（Ｐ1）、サイズ（Ｐ2）、．．．）に基づいて、全てのＰフレームのための予測ＭＩＰＳを発生する。行Ｒ４において、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４は、Ｂフレームサイズ（サイズ（Ｂ1）、サイズ（Ｂ2）、．．．）に基づいて、全てのＢフレームのための予測ＭＩＰＳを発生する。行Ｒ５において、ＶＳ／ＰＬ復号ＭＩＰＳ及び電力予測器２８４は、Ｂフレームサイズ（サイズ（ｂ1）、サイズ（ｂ2）、．．．）に基づいて、全てのＢフレーム（非参照Ｂフレーム）のための予測ＭＩＰＳを発生する。全てのｂフレームのためのＭＩＰＳを予測するとき、ｂ1及びｂ2がドロップされるかどうかの判断を行う。そうであれば、予測ＭＩＰＳはゼロ（０）に設定される。また、ｂ１、ｂ２、．．．などの代わりにＦＲＵＣに関する予測がある。
【００８７】
図１０及び図１７に関して、復号するための予測ＭＩＰＳのリスト４５０中のＭＩＰＳ予測の各々について、対応する電力要件が適用される。ＭＩＰＳ要件、及び所定の瞬間における利用可能なＭＩＰＳ、（又は電力要件対利用可能な電力／アンペア）が与えられれば、図１０に関して上述したのと同様の方法で、復号可能ユニットである全てのフレーム又は選択されたフレーム（一部）を復号するという決定を行うことができる。
【００８８】
シーケンス／ピクチャレベル処理の終了時に、中間の精度電力低減モードが可能である（Ｉフレームが一般にＧＯＰ中の３０％のビットを構成し、ビットの数がＭＩＰＳ要件に比例すると仮定すると、約５％ずつ０〜６０％の低減が可能である）。プロセッサ負荷及び電力レベルの現在のステータスに関するフィードバックに応じて、演算のシーケンスは、適切な数の低優先度エンティティの削除によって短縮される。シーケンス／ピクチャレイヤにおいて可能なモードは、電力要件の増加順に図１８に掲示されている。
【００８９】
図１８は、ＶＳ／ＰＬモード中のマルチレイヤ低電力モードセット発生器１１４を示す。マルチレイヤ低電力モードセット発生器１１４は低電力モードのリスト４５０を発生する。リストは、説明のために発生される。リストは、ＲＡＰ及び全てのＩフレームを使用するスライドショーを復号するための命令に対応するＶＳ／ＰＬレイヤモード３を含む。従って、モード１Ａが選択された場合、電力管理モジュール１００は、視覚的品質又は精度の改善のためにＩフレームのすべてがまた復号され得るように、追加のＭＩＰＳが利用可能であるかどうかを評価するであろう。ＶＳ／ＰＬレイヤモード３の後に、全てのＩフレーム及びＰフレームのみを使用する低減されたフレームレートに基づいて復号するための命令に対応するＶＳ／ＰＬレイヤモード４Ａが続く。ＶＳ／ＰＬレイヤモード４Ａの後に、Ｂ（及びｂ）フレームの代わりに選択的ＦＲＵＣを用いる、全てのＩフレーム及びＰフレームのみを使用する低減されたフレームレートに基づいて復号するための命令に対応するＶＳ／ＰＬレイヤモード４Ｂが続く。モード４Ｂにおいて、Ｉフレーム及びＰフレームは通常復号を使用して復号される。しかしながら、Ｂフレームは復号されない。代わりに、全てのＢ又はｂフレームについて、各Ｂ又はｂフレームの代わりに選択的ＦＲＵＣが使用される。ＶＳ／ＰＬレイヤモード４Ｂの後に、上記のように、Ｉフレーム及びＰフレームなど、利用可能な電力に基づいてＲＡＰ−−ＧＯＰを選択的に復号するための命令に対応するＶＳ／ＰＬレイヤモード４Ｃが続く。ただし、代替演算として、選択的な数のＢ又はｂフレームについて、各Ｂ又はｂフレームの代わりに選択的ＦＲＵＣが使用される。ＶＳ／ＰＬレイヤモード４Ｃの後に、全てのＩフレーム及びＰフレームを使用する（モード４Ｃよりも高い）低減されたフレームレートに基づいて復号するための命令に対応するＶＳ／ＰＬレイヤモード４Ｄが続く。全てのＢフレームをも含めることができる。代わりに、（随意に、選択的な数のＢフレームについて）各Ｂフレームの代わりに選択的ＦＲＵＣが使用され、ｂフレームのための演算は使用されない。代わりに、ｂフレームはスキップ又はバイパスされ得る。ＶＳ／ＰＬレイヤモード４Ｄの後に、全ての受信フレーム（Ｉ、Ｐ、Ｂ及びｂ）を復号するための命令に対応するＶＳ／ＰＬレイヤモード５が続く。
【００９０】
ＶＳ／ＰＬレイヤモード３又は５が選択された場合、スキップマクロブロック（ＭＢ）の代わりに、さらなる代替演算が使用されるであろう。さらに、モード２から、モード４Ａ〜４Ｄ及び５によって与えられる改良によって、さらなる拡張された視覚的品質又は精度が達成され得る。
【００９１】
スライス／ＭＢレイヤ
図１９に、スライス／マクロブロックレイヤ（Ｓ／ＭＢＬ）構文解析器及び処理ユニット１１０を示す。Ｓ／ＭＢＬ構文解析器及び処理ユニット１１０は、Ｓ／ＭＢＬ情報抽出器及びコンパイラ４６０（図２０）と、Ｓ／ＭＢＬ優先ＰＭシーケンス発生器４６２（図２１）と、Ｓ／ＭＢＬ復号ＭＩＰＳ及び電力予測器４６４とを含む。Ｓ／ＭＢＬ構文解析器及び処理ユニット１１０は、Ｓ／ＭＢＬ７２のための復号演算の電力／負荷管理において使用する３段階プロセス１２０を実行する。
【００９２】
図２０にＳ／ＭＢＬ情報抽出器及びコンパイラ４６０を示す。Ｓ／ＭＢＬ情報抽出器及びコンパイラ４６０は、ビデオビットストリームが圧縮されたプロトコル又は規格に依存する。ここで、Ｓ／ＭＢＬ情報抽出器及びコンパイラ４６０は、スライス情報４７０とＭＢ情報４７２とを抽出する。スライス情報４７０及びＭＢヘッダは、図１５からの優先シーケンス中で識別されたピクチャに対応するピクチャについて構文解析される。前のレイヤＶＳ／ＰＬ７０中の優先シーケンス（図１５）からのフレームの選択された部分に、復号すべきというフラグが付けられていることがある。電力管理のより細かい精度が必要とされる場合、復号は、全てのピクチャについて続き得ることに留意されたい。従って、スライスヘッダ及びＭＢヘッダのみが復号される。
【００９３】
ヘッダが間違っていることが検出された場合、ＭＢ又はスライス全体の係数／ＭＢデータを廃棄することができる。随意に、ゼロＭＶ隠蔽を適用し、後で、より高度な誤り訂正（ＥＣ）を用いて改良することができる。ＭＢ情報４７２は、ＭＢタイプ４７４と、動きベクトル（ＭＶ）４７６と、モード４７８と、サイズ４８０と、他の情報４８２と、フレーム４８４ごとのＭＢマップとを含む。
【００９４】
例示的なフレームごとのＭＢマップは、以下で全体的に示すように参照により本明細書に組み込まれる、本明細書と同時に出願され、代理人整理番号第０７１４４５号を有する特許出願第１２／１４５，９００号に記載されている。
【００９５】
図２１に、Ｓ／ＭＢＬ優先ＰＭシーケンス発生器４６２を示す。Ｓ／ＭＢＬ優先ＰＭシーケンスのリスト４９０は、スライス情報及びＭＢマップを使用して、図１５中の優先リスト中の各フレームの複雑度を推定する。一構成では、ブロック４９２におけるＰフレームスライス及びブロック５０２におけるＢフレームスライスのみをさらに優先順位付けする。前のレイヤにおいて、ＶＳ／ＰＬのどの選択されたモードの場合も、全てのＩフレームは復号されるべきである。Ｐフレームスライスは、ブロック４９４におけるスライスごとのＲＯＩ  ＭＢとブロック４９６におけるモード平滑化を施した非ＲＯＩ  ＭＢとに基づいて、さらに優先順位付けされる。モード平滑化は、ブロック４９８における強制均一動きとブロック５００における強制Ｐスキップとに従って、さらに優先順位付けされる。Ｂフレームスライスは、ブロック５０４におけるスライスごとのＲＯＩ  ＭＢとブロック５０６におけるモード平滑化を施した非ＲＯＩ  ＭＢとに基づいて、さらに優先順位付けされる。モード平滑化は、ブロック５０７における強制均一動き及びブロック５０８における強制Ｂスキップに従って、さらに優先順位付けされる。
【００９６】
モード平滑化は、同様の特性をもつグループＭＢに適用できる。ＭＢの３×３又は５×５ウィンドウごとに、ＭＢのウィンドウをモードの均一性について査定する。ウィンドウ中のアウトライアー（残りのＭＢとは異なるモードをもつＭＢ）を識別する。アウトライアーがわずかに異なる場合、それらにウィンドウのモードを強制する。他の場合、アウトライアーのモードを維持する。例えば、３×３ＭＢウィンドウにおいて、１つのＭＢはインターモードであり、他のＭＢはスキップモードである場合、インターＭＢの（ＣＢＰ又はＭＢサイズによって示される）残差がSkip_thresholdよりも小さければ、そのＭＢにスキップモードを強制する。モード平滑化の後、スキップモードＭＢ対ダイレクト／インターモードＭＢの比を計算し、複雑度のファクタとして含める。さらに、（代理人整理番号第０７１４４５号を有する特許出願第１２／１４５，９００号に記載のように）スキップＭＢの連結された領域をＭＢ膨張及びＭＢ浸食によってタイルとして組み合わせることができる。次いで、タイルを、スキップ／静的、非静的、均一動き、region-of-interest（ＲＯＩ、相対ＭＢ／タイルサイズに基づく）などと見なすことができる。均一動きタイルの場合、ＭＢのＭＶを量子化し、そのタイルに１つのＭＶを強制することができる（これは、これらのＭＢの残差／ＣＢＰがゼロ又は概ゼロであるという条件で行われ得ることに留意されたい）。別のオプションでは、非静的又はＲＯＩタイルのみを復号し、残部をスキップさせる。この場合、非ＲＯＩ  ＭＢの一部はスキップ以外のモードであり得るが、ブロック５００及びブロック５０８のように、それらをスキップさせることになる。
【００９７】
図２２に、Ｓ／ＭＢＬモード中のマルチレイヤ低電力モードセット発生器１１４を示す。マルチレイヤ低電力モードセット発生器１１４は低電力モードの階層リスト６５０を発生する。フレーム中のどのＭＢを処理するか、及びどの受信フレームを処理するかを操作する能力により、復号及びレンダリングプロセスを管理する際に、かなりの精度レベルが可能になる。さらに、上述のＭＢレベルの電力最適化は、復号中に（オンザフライで）実行され得る。この場合も、対応する低電力モードに対する電力の低減の割合をマッピングするために、詳細なプロファイリング及び電力分析が必要とされる。
【００９８】
モードの例は、Ｓ／ＭＢＬモード６Ａ、６Ｂ、６Ｃ、７Ａ、７Ｂ、７Ｃ及び８として表される。モード６Ａでは、Ｉフレームは、Ｉフレームの通常復号のとおりに復号される。ただし、電力が許すとき、視覚的品質又は精度を改善するために追加の代替演算を行うことができる。例えば、モード６Ａでは、非ＲＯＩ  ＭＢをもつＰフレームにＰ＿Ｓｋｉｐを強制し、Ｂフレーム及びｂフレームに選択的ＦＲＵＣを強制することができる。モード６Ｂでは、Ｉフレームは、Ｉフレームの通常復号のとおりに復号される。モード６Ｂにおける代替演算は、モード平滑化を施したＰフレームにＰ＿Ｓｋｉｐを強制し、Ｂフレーム及びｂフレームに選択的ＦＲＵＣを強制することを含むことができる。モード６Ｃでは、Ｉフレームは、通常復号プロセスに従って復号される。ただし、代替演算として、モード平滑化を施したＰフレームに均一動きを強制し、Ｂフレーム及びｂフレームに選択的ＦＲＵＣを強制することができる。モード７Ａでは、Ｉフレーム及びＰフレームは、通常復号プロセスに従って復号される。だたし、代替演算として、非ＲＯＩ  ＭＢをもつＢフレームにＳｋｉｐを強制する。モード７Ｂでは、Ｉフレーム及びＰフレームは、通常復号プロセスに従って復号される。だたし、代替演算として、モード平滑化を施したＢフレームにＳｋｉｐを強制する。モード７Ｃでは、Ｉフレーム及びＰフレームは、通常復号プロセスに従って復号される。だたし、代替演算として、モード平滑化を施したＢフレームに均一動きを強制する。モード８では、全ての受信フレーム（Ｉ、Ｐ、Ｂ及びｂ）が復号される。
【００９９】
図２３に、電力管理演算のハイレベルブロック図を示す。ブロック図は、ディスプレイプロセッサ２８のレンダリングステージ２８Ａと通信しているデコーダエンジン１０４を含む。従って、電力管理（ＰＭ）モジュール１００は、ＴＬモード、ＶＳ／ＰＬモード及びＳ／ＭＢＬモードにおいてビットストリームを処理する。ＰＭモジュール１００は、選択された低電力モードに従って復号可能ユニットを復号するようにデコーダエンジン１０４を制御する。レンダリング中に必要とされる処理はまた、上記で説明した低電力動作モードのいずれかにおけるフレームワークからの演算の優先シーケンスから導出される。さらに、デコーダエンジン１１４の出力は、他の機器、メモリ、又は装置に送信できる。デコーダからの出力は、最終的な記憶又は消費（表示）のために別のビデオ対応装置に転送できる。グラフィックス処理ユニット３４はまた、ディスプレイプロセッサ２８と通信している。
【０１００】
図２４に、例示的な標準（通常）復号プロセス７００を順番に示す。また、プロセス７００について、図２Ｄに関して説明する。ビデオシーケンス及びピクチャレイヤにおいて開始して、標準（通常）復号プロセス７００は、ブロック７０２においてシーケンスヘッダ５４Ａを復号し、続いてブロック７０４においてピクチャ１のピクチャヘッダ５８Ａを復号する。ピクチャ１のピクチャヘッダを復号した後、スライス及びマクロブロック情報を含むピクチャデータ５８Ｂを復号する。従って、ピクチャ１データが復号されるとき、スライス１〜Ｍによって示されるスライスユニットのすべてが復号される。各スライスは同様に復号されるので、ただ１つのスライスについて、より詳細に説明する。
【０１０１】
スライス１が復号されるとき、ブロック７０６においてピクチャ１のスライス１のスライスヘッダ６０Ａを復号する。次いで、ブロック７０８においてピクチャ１のスライス１のマクロブロック（ＭＢ）１のＭＢヘッダ６２Ａを復号する。ＭＢ１のＭＢヘッダ６２Ａが復号された後、ブロック７１０においてピクチャ１のスライス１のＭＢ１の関連するＭＢデータを復号する。次いで、次のマクロブロックを取得する。従って、ブロック７１２においてピクチャ１のスライス１のマクロブロック（ＭＢ）２のＭＢヘッダ６２Ａを復号する。ＭＢ２のＭＢヘッダが復号された後、ブロック７１４においてピクチャ１のスライス１のＭＢ２の関連するＭＢデータ６２Ｂを復号する。マクロブロックヘッダを復号し、続いて関連するＭＢデータ６２Ｂの復号することは、スライス中の全ての残りのＭＢについて続く。この例では、Ｎ個のＭＢがある。従って、ピクチャ１のスライス１の復号は、ブロック７１６においてピクチャ１のスライス１のＭＢ  ＮのＭＢヘッダを復号し、続いてブロック７１８においてピクチャ１のスライス１のＭＢ  Ｎの関連するＭＢデータ６２Ｂを復号することで終了するであろう。
【０１０２】
従って、プロセス７００は、スライド１について上述したのと同様にして残りのスライスの各々を復号することによって、ピクチャ１情報を復号し続けるであろう。この例では、Ｍ個のスライスがある。従って、ブロック７２０において、ブロック７０６〜７１８に関して上述した方法でスライスＭを復号する。
【０１０３】
次に、プロセス７００は、ピクチャ２などの次のピクチャフレームを復号するであろう。ピクチャ２を復号するために、プロセス７００は、スライス１〜Ｍのロケーションを導出するために、ブロック７２２においてピクチャ２のピクチャヘッダ５８Ａを復号するであろう。従って、ブロック７２４において、ブロック７０６〜７１８に関して上述した方法でスライス１を復号する。ピクチャ２の全ての残りのスライスは同様に復号される。従って、ブロック７２６において、ピクチャ２の復号を完了するために、ブロック７０６〜７１８に関して上述した方法でスライスＭを復号する。
【０１０４】
プロセス７００は、最後のピクチャＺまで同様にして連続的に全てのピクチャフレームの復号を反復する。この例では、ピクチャ１〜Ｚがある。従って最後のピクチャであるピクチャＺを復号するために、プロセス７００は、ブロック７２８においてピクチャＺのピクチャヘッダ５８Ａを復号し、続いてブロック７３０においてスライス１を復号するであろう。ピクチャＺ中の各スライスは、ブロック７３２におけるスライスＭまで復号される。
【０１０５】
図２５に、電力管理演算を用いるＴＬ復号プロセス８００のフローチャートを示す。プロセス８００はブロック８０２で開始し、図６及び図８に関して説明したように、ＴＬ情報抽出及び復号可能ユニットのＰＭシーケンスのＴＬ優先順位付けを行う。ブロック８０２の後にブロック８０４が続き、ＴＬ優先ＰＭシーケンスについてＭＩＰＳ及び／又は電力負荷を予測する。ブロック８０４の後にブロック８０６が続き、ＴＬ低電力モードセットのためのＭＩＰＳを予測する。ブロック８０６の後にブロック８０８が続き、ビットストリームを復号するために十分な電力があるかどうかの判断を行う。判断が「はい」である場合、図２４に関して説明した手順に従って、ブロック８１０において通常復号プロセス７００を行うことができる。しかしながら、判断が「いいえ」である場合、オプションとして、ブロック８１２において、ビデオを再生するなどのための電力が不十分であることをユーザに通知する。ユーザは、選択すべきモード１、１Ａ及び２に対応する低電力モードオプションを与えられるであろう。代わりに、低電力モードを自動的に選択することができる。ブロック８１２の後にブロック８１４が続き、ユーザによって又は自動的にＴＬ低電力モードを選択する。図２５のフローチャートは図２６に進む。
【０１０６】
図２６に、電力管理演算を用いるＶＳ／ＰＬ復号プロセス９００のフローチャートを示す。プロセス９００は、ブロック９０２において、図１３及び図１５で説明したように、ＶＳ／ＰＬ情報抽出及びＰＭシーケンスのＶＳ／ＰＬ優先順位付けを実行することで開始する。ブロック９０４において、図１６及び図１７に関して説明したように、全てのフレームタイプ（復号可能ユニット）のためのＭＩＰＳを予測する。ブロック９０６おいて、図１８に示すように、ＶＳ／ＰＬ優先ＰＭシーケンスに基づいて、各ＶＳ／ＰＬ低モードセットのためのＭＩＰＳ及び／又は電力負荷を予測する。予測ＭＩＰＳに基づいて、ＰＭシーケンスは、視覚的品質及び精度に基づいて互いにグループ化される。（全てのシーケンスなど）シーケンスの一部は、不十分な電力のために復号することができない。従って、ブロック９０８において、最大利用可能電力を下回る、ＶＳ／ＰＬ低電力モードセットからの低電力モードのランク付けされたサブセットを発生する。ランク付けは、視覚的品質及び／又は精度の改善によるものである。ブロック９１０において、随意に、ユーザに電力の制限を通知し、低電力モードオプションの選択を与える。ブロック９１２において、サブセットの最高ランクの低電力モードを選択するか、又はユーザによって低電力モードを選択する。ブロック９１４において、選択されたＶＳ／ＰＬ低電力モードに基づいて、適宜に図２４の通常復号プロセス７００に戻って復号演算を挿入することによって、復号を開始する。
【０１０７】
一構成では、各フレームが１つの選択された低電力モードに基づいて復号された後に、ＭＩＰＳを再予測することができる。その後、ビットストリーム中の次のフレーム又は他の未復号フレームを、異なる選択されたモードを使用して復号することができる。従って、低電力モードは、ビットストリームの復号中に動的に変更され得るか又はオンザフライで発生され得る。
【０１０８】
図２７に、図２４の通常復号プロセス７００から分岐するＶＳ／ＰＬ情報抽出プロトコル９０２Ａのブロック図を示す。図２７では、ＶＳ／ＰＬ情報抽出プロトコル９０２Ａは、ブロック９５０においてシーケンスヘッダ５４Ａを復号する。従って、ピクチャ１〜Ｎについて示されている各ブロックの上の矢印によって示されるように、ピクチャ１〜Ｎのロケーションが導出される。ブロック９５２において、ピクチャ１のピクチャヘッダ５８Ａを復号する。ブロック９５４において、ピクチャ２のピクチャヘッダ５８Ａを復号する。全てのピクチャヘッダが復号される。ブロック９５６において、ピクチャＺ（最後のピクチャ）のピクチャヘッダを復号する。従って、ピクチャヘッダ５８Ａの復号により、特定のビットストリームのための復号可能ユニットのＰＭシーケンスを導出し、復号可能ユニットのＰＭシーケンスのためのＭＩＰＳを予測することが可能になる。
【０１０９】
図２８に、ＶＳ／ＰＬ情報抽出プロトコル９０２ＡによるビットストリームからのＶＳ／ＰＬ被復号ユニットのブロック図を示す。シーケンスヘッダ５４Ａは、シーケンスヘッダ５４Ａが復号されたことを示すためにハッチングされた状態で示されている。さらに、ピクチャ１〜Ｎの各々のためのピクチャヘッダ５８Ａは、ピクチャヘッダ５８Ａが復号されたことを示すためにハッチングされた状態で示されている。ピクチャデータ５８Ｂは、この時点でピクチャデータ５８Ｂが未復号のままであることを示すためにハッチングされない状態のままである。シーケンスデータ５４Ｂも未復号のままである。ピクチャヘッダ５８Ａの復号により、ピクチャデータを復号することなしにスライス及びマクロブロックレイヤについて必要なスライスロケーションを取得することが可能になる。
【０１１０】
図２９に、電力管理演算を用いるＳ／ＭＢＬ復号プロセス１０００のフローチャートを示す。プロセス１０００は、ブロック１００２において、図２０及び図２１で説明したように、Ｓ／ＭＢＬ情報抽出及び復号可能ユニットのＰＭシーケンスのＳ／ＭＢＬ優先順位付けを実行することで開始する。一構成では、Ｐフレーム及びＢフレームのための情報のみを抽出し、優先順位付けする。ブロック１００４において、Ｓ／ＭＢＬ低電力モードの各々のためのＭＩＰＳを再予測する。ブロック１００６において、最大利用可能電力を下回る、Ｓ／ＭＢＬ低電力モードセットからの低電力モードのランク付けされたサブセットを発生する。ランク付けは、視覚的品質及び／又は精度の改善によるものである。ブロック１００８において、随意に、ユーザに電力の制限を通知し、低電力モードオプションの選択を与える。ブロック１０１０において、サブセットの最高ランクの低電力モードを選択するか、又はユーザによって低電力モードを選択する。ブロック１０１２において、選択されたＳ／ＭＢＬ低電力モードに基づいて、適宜に図２４の通常復号プロセス７００に戻って復号演算を挿入することによって、Ｐフレームスライス及びＢフレームスライス並びにＭＢデータの復号を開始する。ブロック１０１２の後、低電力モードが残りの利用可能な電力に従ってアップグレード又はダウングレードされ得るように、１つ以上のフレームが復号された後にＭＩＰＳを再予測する。
【０１１１】
図３０に、図２４の通常復号プロセス７００から分岐するＳ／ＭＢＬ情報抽出プロトコル１００２Ａのブロック図を示す。図３０について、図３１に関して説明する。図３１は、Ｓ／ＭＢＬ情報抽出プロトコル１００２ＡによるビットストリームからのＳ／ＭＢＬ被復号ユニットのブロック図を示す。Ｓ／ＭＢＬ情報抽出プロトコル１００２Ａは、第１のピクチャ１のピクチャデータ５８Ｂを復号する。ピクチャデータ５８Ｂを復号するために、低電力モードが選択できるまでスライスヘッダ６０Ａ及びＭＢヘッダ６２Ｂのみを復号する。ピクチャ１〜Ｎのブロックの上の矢印はピクチャのロケーションを示す。矢印のブラックシェーディングは、低電力モードに基づくピクチャの選択を示す。シェーディングなしの矢印は、選択されていないピクチャを示す。ブロック１０５０において、ピクチャ１のスライスヘッダ６０Ａを復号する。ブロック１０５２において、ピクチャ１のスライス１のＭＢ１のＭＢヘッダ６２Ａを復号する。ブロック１０５４において、ピクチャ１のスライス１のＭＢ２のＭＢヘッダ６２Ａを復号する。ブロック１０５６において、ピクチャ１のスライス１のＭＢ  ＮのＭＢヘッダを復号し、ピクチャ１のスライス１の全てのマクロブロックヘッダが復号される。マクロブロックデータ６２Ｂは復号されない。ピクチャデータ５８Ｂ、スライスヘッダ６０Ａ及びＭＢヘッダ６２Ａのハッチングは、それらの復号を示す。
【０１１２】
各スライスのスライスヘッダ６０Ａが復号され、続いてスライスの各ＭＢのＭＢヘッダが復号される。ブロック１０５８において、ブロック１０５０〜１０５６と同様にしてピクチャ１のスライスＭ（最後のスライス）を復号する。すべて残りのピクチャは同様にして復号される。ブロック１０６０において、ブロック１０５０〜１０５８に関して上述したようにピクチャＺ（最後のピクチャ）を復号する。従って、スライス及びマクロブロックヘッダの復号により、特定のビットストリームのための復号可能ユニットのＰＭシーケンスを導出し、復号可能ユニットのＰＭシーケンスのためのＭＩＰＳを予測することが可能になる。
【０１１３】
図３２に、選択された電力管理モードに従う最終スライス及びマクロブロック復号のブロック図を示す。スライスデータ６０Ｂ及びＭＢデータ６２Ｂは、（モード６Ａ〜６Ｃ及び７Ａ〜７Ｃなどの）選択された低電力モードの場合の復号すべきＰＭシーケンスに従って復号される。スライスデータ６０Ｂ及びＭＢデータ６２Ｂは、それらの復号を示すためにハッチングされた状態で示されている。
【０１１４】
図３３に、マルチレイヤ電力管理モードの階層構成のブロック図を示す。ＴＬ  ＰＭ処理１２００は、トランスポートレイヤ５２において電力管理の第１ティアを開始する。ＴＬ  ＰＭ処理１２００の結果として、予測ＭＩＰＳに基づいて複数の低電力モードが確立される。一構成では、モード１、１Ａ及び２が提案される。電力管理演算は、ＶＳ／ＰＬ  ＰＭ処理１２０２において第２ティアに続く。電力管理の第２ティアは、シーケンス及びピクチャレイヤ７０において行われる。ＶＳ／ＰＬ  ＰＭ処理１２０２は、予測ＭＩＰＳ並びに視覚的品質及び／又は精度に応じて複数の低電力モードを生成する。一構成では、モード３、４Ａ〜４Ｄが発生される。モード５は電力モードであるが、全てのフレームが復号される場合、低電力モードでないことがある。とはいえ、電力管理演算は、Ｓ／ＭＢＬ  ＰＭ処理１２０４において第３ティアに続く。電力管理の第３ティアは、スライス及びマクロブロックレイヤ７２において行われる。Ｓ／ＭＢＬ  ＰＭ処理１２０４は、予測ＭＩＰＳ並びに視覚的品質及び／又は精度に応じて複数の低電力モードを生成する。一構成では、モード６Ａ〜６Ｃ及び７Ａ〜７Ｃが発生される。モード８は、電力が許す場合、全てのフレームが復号されることを可能にする。さらに、モード８は、ビットストリームの一部が復号され、ＭＩＰＳの再予測が、全ての残りのフレームが復号できることを示した後に使用できる。
【０１１５】
１つ以上の例示的な構成では、説明した機能はハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装できる。ソフトウェアで実装した場合、機能は、１つ以上の命令又はコードとしてコンピュータ可読媒体上に記憶するか、若しくはコンピュータ可読媒体を介して送信することができる。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータ記憶媒体とコンピュータ通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスできる任意の利用可能な媒体とすることができる。限定ではなく、例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ又は他の光ディスクストレージ、磁気ディスクストレージ又は他の磁気ストレージ機器、若しくは命令又はデータ構造の形態の所望のプログラムコードを担持又は記憶するために使用でき、コンピュータによってアクセスできる任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、又は赤外線、無線、及びマイクロ波などの無線技術を使用して、ウェブサイト、サーバ、又は他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、ＤＳＬ、又は赤外線、無線、及びマイクロ波などの無線技術は、媒体の定義に含まれる。本明細書で使用するディスク（disk）及びディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）及びブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１１６】
開示した構成の前述の説明は、当業者が本開示を製作又は使用できるように提供したものである。これらの構成への様々な変更は当業者には容易に明らかになり、本明細書で定義された一般原理は、本開示の趣旨又は範囲から逸脱することなく他の構成に適用できる。従って、本開示は、本明細書で示した構成に限定されるものではなく、本明細書で開示した原理及び新規の特徴に一致する最も広い範囲を与えられるべきである。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  ビデオデータを含むデータストリームを受信するステップと、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別するステップと、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別するステップと、利用可能な電力の量と利用可能な処理能力とのうちの少なくとも１つを評価するステップと、前記利用可能な電力と利用可能な処理能力とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理するステップとを備える、データストリームを処理する方法。
［２］  前記様々な構文解析及び復号演算を前記管理することが、前記データストリームのための前記構文解析及び復号演算を選択的に実行することを含む、［１に記載の方法。
［３］  前記様々な構文解析及び復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けるステップをさらに含む、［１に記載の方法。
［４］  前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けするステップをさらに含む、［３］に記載の方法。
［５］  前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力及び利用可能な処理能力を満たすか又は超えないように、グループを選択するステップをさらに含む、［３］に記載の方法。
［６］  低電力モードの前記階層リストをユーザに提示するステップと、前記ユーザによって選択された前記低電力モードを示す入力を受信するステップと、前記入力に応答して構文解析及び復号演算のグループを選択するステップとをさらに含む、［４］に記載の方法。
［７］  ビデオデータを含むデータストリームを受信するステップと、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別するステップと、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別するステップと、前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理するステップとを含む、データストリームを処理する方法。
［８］  前記様々な構文解析及び復号演算を前記管理することが、前記データストリームのための前記構文解析及び復号演算を選択的に実行することを含む、［７］に記載の方法。
［９］  前記様々な構文解析及び復号演算を、各グループが前記ビデオの視覚的品質の程度又は経験品質の程度に対応するグループに関連付けるステップをさらに含む、［７］に記載の方法。
［１０］  前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けするステップをさらに含む、［９］に記載の方法。
［１１］  前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度及び経験品質の所望の程度を満たすように、グループを選択するステップをさらに含む、［９］に記載の方法。
［１２］  品質モードの前記階層リストをユーザに提示するステップと、前記ユーザによって選択された前記品質モードを示す入力を受信するステップと、前記入力に応答して構文解析及び復号演算のグループを選択するステップとをさらに含む、［１０］に記載の方法。
［１３］  ビデオデータを含むデータストリームを受信することと、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別することと、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別することと、利用可能な電力の量と利用可能な処理能力とのうちの少なくとも１つを評価することと、前記利用可能な電力と利用可能な処理能力とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理することとを行うように動作可能な命令のセットを実行するように構成されたプロセッサを備える、データストリームを処理するための装置。
［１４］  前記様々な構文解析及び復号演算を前記管理することが、前記データストリームのための前記構文解析及び復号演算を選択的に実行することを含む、［１３］に記載の装置。
［１５］  前記プロセッサが、前記様々な構文解析及び復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けるための命令を実行するようにさらに構成された、［１３］に記載の装置。
［１６］  前記プロセッサが、前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けするための命令を実行するようにさらに構成された、［１５］に記載の装置。
［１７］  前記プロセッサが、前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力及び利用可能な処理能力を満たすか又は超えないように、グループを選択するための命令を実行するようにさらに構成された、［１５］に記載の装置。
［１８］  前記プロセッサが、低電力モードの前記階層リストをユーザに提示することと、前記ユーザによって選択された前記低電力モードを示す入力を受信することと、前記入力に応答して構文解析及び復号演算のグループを選択することとを行うための命令を実行するようにさらに構成された、［１６］に記載の装置。
［１９］  ビデオデータを含むデータストリームを受信することと、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別することと、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別することと、前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理することとを備える、データストリームを処理するための装置。
［２０］  前記様々な構文解析及び復号演算を前記管理することが、前記データストリームのための前記構文解析及び復号演算を選択的に実行することを含む、［１９］に記載の装置。
［２１］  前記プロセッサが、前記様々な構文解析及び復号演算を、各グループが前記ビデオの視覚的品質の程度又は経験品質の程度に対応するグループに関連付けるための命令を実行するようにさらに構成された、［１９］に記載の装置。
［２２］  前記プロセッサが、前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けするための命令を実行するようにさらに構成された、［２１］に記載の装置。
［２３］  前記プロセッサが、前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度及び経験品質の所望の程度を満たすように、グループを選択するための命令を実行するようにさらに構成された、［２１］に記載の装置。
［２４］  前記プロセッサが、品質モードの前記階層リストをユーザに提示することと、前記ユーザによって選択された前記品質モードを示す入力を受信することと、前記入力に応答して構文解析及び復号演算のグループを選択することとを行うための命令を実行するようにさらに構成された、［２２］に記載の装置。
［２５］  ビデオデータを含むデータストリームを受信するための手段と、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別するための手段と、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別するための手段と、利用可能な電力の量と利用可能な処理能力とのうちの少なくとも１つを評価するための手段と、前記利用可能な電力と利用可能な処理能力とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理するための手段とを備える、データストリームを処理するための装置。
［２６］  前記様々な構文解析及び復号演算を管理するための前記手段が、前記データストリームのための前記構文解析及び復号演算を選択的に実行する、［２５］に記載の装置。
［２７］  前記様々な構文解析及び復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けるための手段をさらに備える、［２５］に記載の装置。
［２８］  前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けするための手段をさらに備える、［２７］に記載の装置。
［２９］  前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力及び利用可能な処理能力を満たすか又は超えないように、グループを選択するための手段をさらに備える、［２７］に記載の装置。
［３０］  低電力モードの前記階層リストをユーザに提示するための手段と、前記ユーザによって選択された前記低電力モードを示す入力を受信するための手段と、前記入力に応答して構文解析及び復号演算のグループを選択するための手段とをさらに備える、［２８］に記載の装置。
［３１］  ビデオデータを含むデータストリームを受信するための手段と、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別するための手段と、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別するための手段と、前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理するための手段とを備える、データストリームを処理するための装置。
［３２］  前記様々な構文解析及び復号演算を管理するための前記手段が、前記データストリームのための前記構文解析及び復号演算を選択的に実行する、［３１］に記載の装置。
［３３］  前記様々な構文解析及び復号演算を、各グループが前記ビデオの視覚的品質の程度又は経験品質の程度に対応するグループに関連付けるための手段をさらに備える、［３１］に記載の装置。
［３４］  前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けするための手段をさらに備える、［３３］に記載の装置。
［３５］  前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度及びユーザ経験品質の所望の程度を満たすように、グループを選択するための手段をさらに備える、［３３］に記載の装置。
［３６］  品質モードの前記階層リストをユーザに提示するための手段と、
前記ユーザによって選択された前記品質モードを示す入力を受信するための手段と、前記入力に応答して構文解析及び復号演算のグループを選択するための手段とをさらに備える、［３４］に記載の装置。
［３７］  プロセッサによって実行されたとき、前記プロセッサに、ビデオデータを含むデータストリームを受信することと、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別することと、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別することと、利用可能な電力の量と利用可能な処理能力とのうちの少なくとも１つを評価することと、前記利用可能な電力と利用可能な処理能力とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理することとを行わせる命令を記憶するコンピュータ可読媒体を含むコンピュータプログラム製品。
［３８］  前記様々な構文解析及び復号演算を前記管理することが、前記データストリームのための前記構文解析及び復号演算を選択的に実行することを含む、［３７］に記載のコンピュータプログラム製品。
［３９］  プロセッサによって実行されたとき、前記プロセッサに、前記様々な構文解析及び復号演算を、各グループが予測電力要件と予測処理能力要件とのうちの少なくとも１つを有するグループに関連付けさせる命令をさらに備える、［３７］に記載のコンピュータプログラム製品。
［４０］  プロセッサによって実行されたとき、前記プロセッサに、前記予測電力要件と前記予測処理能力要件とのうちの少なくとも１つに基づいて前記グループを低電力モードの階層リストに優先順位付けさせる命令をさらに備える、［３９］に記載のコンピュータプログラム製品。
［４１］  プロセッサによって実行されたとき、前記プロセッサに、前記選択されたグループの予測電力要件と予測処理能力要件とのうちの少なくとも１つが、それぞれ前記利用可能な電力及び利用可能な処理能力を満たすか又は超えないように、グループを選択させる命令をさらに備える、［３９］に記載のコンピュータプログラム製品。
［４２］  プロセッサによって実行されたとき、前記プロセッサに、低電力モードの前記階層リストをユーザに提示することと、前記ユーザによって選択された前記低電力モードを示す入力を受信することと、前記入力に応答して構文解析及び復号演算のグループを選択することとを行わせる命令をさらに備える、［４０］に記載のコンピュータプログラム製品。
［４３］  プロセッサによって実行されたとき、前記プロセッサに、ビデオデータを含むデータストリームを受信することと、前記データストリームを生成するために使用される少なくとも１つのプロトコルを識別することと、前記少なくとも１つのプロトコルによって必要とされる様々な構文解析及び復号演算を識別することと、前記ビデオの視覚的品質と経験品質（ＱｏＥ）とのうちの少なくとも１つに基づいて前記データストリームのための前記様々な構文解析及び復号演算を管理することとを行わせる命令を記憶するコンピュータ可読媒体を含むコンピュータプログラム製品。
［４４］  前記様々な構文解析及び復号演算を前記管理することが、前記データストリームのための前記構文解析及び復号演算を選択的に実行することを含む、［４３］に記載のコンピュータプログラム製品。
［４５］  プロセッサによって実行されたとき、前記プロセッサに、前記様々な構文解析及び復号演算を、各グループが前記ビデオの視覚的品質の程度又は経験品質の程度に対応するグループに関連付けさせる命令をさらに備える、［４３］に記載のコンピュータプログラム製品。
［４６］  プロセッサによって実行されたとき、前記プロセッサに、前記ビデオの視覚的品質の前記程度と経験品質の前記程度とのうちの少なくとも１つに基づいて前記グループを品質モードの階層リストに優先順位付けさせる命令をさらに備える、［４５］に記載のコンピュータプログラム製品。
［４７］  プロセッサによって実行されたとき、前記プロセッサに、前記選択されたグループの前記ビデオの視覚的品質と経験品質とのうちの少なくとも１つが、それぞれ前記ビデオの視覚的品質の所望の程度及び経験品質の所望の程度を満たすように、グループを選択させる命令をさらに備える、［４５］に記載のコンピュータプログラム製品。
［４８］  プロセッサによって実行されたとき、前記プロセッサに、品質モードの前記階層リストをユーザに提示することと、前記ユーザによって選択された前記品質モードを示す入力を受信することと、前記入力に応答して構文解析及び復号演算のグループを選択することとを行わせる命令をさらに備える、［４５］に記載のコンピュータプログラム製品。
【図１】
0005442736.tif 000002
【図２Ａ】
0005442736.tif 000003
【図２Ｂ】
0005442736.tif 000004
【図２Ｃ】
0005442736.tif 000005
【図２Ｄ】
0005442736.tif 000006
【図３Ａ】
0005442736.tif 000007
【図３Ｂ】
0005442736.tif 000008
【図４】
0005442736.tif 000009
【図５】
0005442736.tif 000010
【図６】
0005442736.tif 000011
【図７】
0005442736.tif 000012
【図８】
0005442736.tif 000013
【図９】
0005442736.tif 000014
【図１０】
0005442736.tif 000015
【図１１】
0005442736.tif 000016
【図１２】
0005442736.tif 000017
【図１３】
0005442736.tif 000018
【図１４】
0005442736.tif 000019
【図１５】
0005442736.tif 000020
【図１６】
0005442736.tif 000021
【図１７】
0005442736.tif 000022
【図１８】
0005442736.tif 000023
【図１９】
0005442736.tif 000024
【図２０】
0005442736.tif 000025
【図２１】
0005442736.tif 000026
【図２２】
0005442736.tif 000027
【図２３】
0005442736.tif 000028
【図２４】
0005442736.tif 000029
【図２５】
0005442736.tif 000030
【図２６】
0005442736.tif 000031
【図２７】
0005442736.tif 000032
【図２８】
0005442736.tif 000033
【図２９】
0005442736.tif 000034
【図３０】
0005442736.tif 000035
【図３１】
0005442736.tif 000036
【図３２】
0005442736.tif 000037
【図３３】
0005442736.tif 000038