(57)【特許請求の範囲】
【請求項１】
ビットストリームをバッファリングするための方法であって、前記方法は、
データを除去するためにピクチャタイミングＳＥＩ（付加拡張情報）メッセージを確定するステップと、
ＣＰＢ（符号化ピクチャバッファ）からアクセスユニットを除去するために、前記ピクチャタイミングＳＥＩメッセージにおけるアクセスユニットＣＰＢ除去遅延パラメータにもとづいて、アクセスユニットＣＰＢ除去遅延値を確定するステップであって、前記アクセスユニットは、唯一の符号化ピクチャを含む、ネットワークアクセス層（ＮＡＬ）ユニットの集合である、前記確定するステップと、
復号ユニットＣＰＢ除去遅延パラメータにもとづき、前記アクセスユニットにおける復号ユニットごとに１つ以上の復号ユニットＣＰＢ除去遅延を確定するステップであって、フラグが第１の値に等しい場合、前記復号ユニットはアクセスユニットであり、そうでない場合には、復号ユニットはアクセスユニットの部分集合である、前記確定するステップと
を備え、
サブピクチャ・クロックティック・パラメータが乗じられた前記復号ユニットＣＰＢ除去遅延の合計は、アクセスユニットＣＰＢ除去遅延に関連する、方法。
【請求項２】
前記アクセスユニットＣＰＢ除去遅延は、少なくともアクセスユニット遅延パラメータおよびクロックティック・パラメータに基づいて確定される、請求項１に記載の方法。
【請求項３】
前記サブピクチャ・クロックティック・パラメータは、周波数ｔｉｍｅ＿ｓｃａｌｅ  Ｈｚで動作しているクロックの時間単位であり、ｔｉｍｅ＿ｓｃａｌｅは、１秒間に経過する時間単位の数である、請求項１に記載の方法。
【請求項４】
前記アクセスユニットＣＰＢ除去遅延は、前記ピクチャタイミングＳＥＩメッセージがサブピクチャ・レベルの動作をサポートする場合に確定される、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、電子デバイスに関する。より具体的には、本開示は、サブピクチャ・ベースの仮想参照デコーダ・パラメータをシグナリングするための電子デバイスに関する。
【背景技術】
【０００２】
電子デバイスは、消費者ニーズを満たし、可搬性および便利さを改善するためにより小さく、より強力になった。消費者は、電子デバイスに依存するようになり、機能性の向上を期待するようになった。電子デバイスのいくつかの例は、デスクトップコンピュータ、ラップトップコンピュータ、セルラーフォン、スマートフォン、メディアプレーヤ、集積回路などを含む。
【０００３】
いくつかの電子デバイスは、デジタルメディアを処理して表示するために用いられる。例えば、ポータブル電子デバイスは、今や消費者がいるほとんどどの場所でもデジタルメディアを用いることを可能にする。そのうえ、いくつかの電子デバイスは、消費者が用いて楽しむためのデジタルメディア・コンテンツのダウンロードまたはストリーミングを提供することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
デジタルメディアの人気の高まりは、いくつかの問題を提起した。例えば、高品質デジタルメディアを記憶、送信および迅速に再生するために効率的に表現することは、いくつかの課題を提起する。この考察から気付きうるように、デジタルメディアを性能向上により効率的に表現するシステムおよび方法が有益であろう。
【課題を解決するための手段】
【０００５】
本発明に従って、ビットストリームをバッファリングするための電子デバイスが提供され、電子デバイスは、データを除去するためのピクチャタイミングＳＥＩ（Ｓｕｐｐｌｅｍｅｎｔａｌ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ：付加拡張情報）メッセージを確定するステップと、ピクチャタイミングＳＥＩメッセージにおいて、ＣＰＢ（Ｃｏｄｅｄ  Ｐｉｃｔｕｒｅ  Ｂｕｆｆｅｒ：符号化ピクチャバッファ）からアクセスユニットを除去するためのアクセスユニットＣＰＢ除去遅延パラメータを確定するステップと、アクセスユニットにおける復号ユニットごとに１つ以上の復号ユニットＣＰＢ除去遅延を確定するステップとを備え、復号ユニットＣＰＢ除去遅延の合計は、アクセスユニットＣＰＢ除去遅延パラメータに等しい。
【０００６】
本発明に従って、メッセージを送信するための電子デバイスが提供され、電子デバイスは、プロセッサと、プロセッサと電子通信を行うメモリと、メモリに記憶された命令とを備え、命令は、符号化ピクチャバッファ（ＣＰＢ）がサブピクチャ・レベルの動作をサポートするときに、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミング付加拡張情報（ＳＥＩ）メッセージに含めるべきかどうかを確定し、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきときには、共通復号ユニットＣＰＢ除去遅延パラメータを生成し、共通復号ユニットＣＰＢ除去遅延パラメータは、ＣＰＢからのアクセスユニットにおけるすべての復号ユニットに適用可能であり、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきでないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを生成して、共通復号ユニットＣＰＢ除去遅延パラメータか、または復号ユニットＣＰＢ除去遅延パラメータをもつピクチャタイミングＳＥＩメッセージを送信するために実行可能である。
【０００７】
本発明に従って、ビットストリームをバッファリングするための電子デバイスが提供され、電子デバイスは、プロセッサと、プロセッサと電子通信を行うメモリと、メモリに記憶された命令とを備え、命令は、ＣＰＢがアクセスユニットに関してサブピクチャ・レベルでパラメータをシグナリングすることを確定し、受信したピクチャタイミング付加拡張情報（ＳＥＩ）メッセージが共通復号ユニット符号化ピクチャバッファ（ＣＰＢ）除去遅延フラグを備えるときには、アクセスユニットにおけるすべての復号ユニットに適用可能な、共通復号ユニットＣＰＢ除去遅延パラメータを確定し、ピクチャタイミングＳＥＩメッセージが共通復号ユニットＣＰＢ除去遅延フラグを備えないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを確定し、共通復号ユニットＣＰＢ除去遅延パラメータか、または個別の復号ユニットＣＰＢ除去遅延パラメータを用いて、ＣＰＢから復号ユニットを除去し、アクセスユニットにおける復号ユニットを復号するために実行可能である。
【０００８】
本発明に従って、メッセージを送信するための方法が提供され、方法は、符号化ピクチャバッファ（ＣＰＢ）がサブピクチャ・レベルの動作をサポートするときに、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミング付加拡張情報（ＳＥＩ）メッセージに含めるべきかどうかを確定するステップと、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきときには、共通復号ユニットＣＰＢ除去遅延パラメータを生成するステップであって、共通復号ユニットＣＰＢ除去遅延パラメータは、ＣＰＢからのアクセスユニットにおけるすべての復号単位に適用可能である、生成するステップと、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきでないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを生成するステップと、共通復号ユニットＣＰＢ除去遅延パラメータか、または復号ユニットＣＰＢ除去遅延パラメータをもつピクチャタイミングＳＥＩメッセージを送信するステップとを備える。
【図面の簡単な説明】
【０００９】
【図１】メッセージを送信し、ビットストリームをバッファリングにするためのシステムおよび方法が実装された１つ以上の電子デバイスの例を示すブロック図である
【図２】メッセージを送信するための方法の一構成を示すフロー図である。
【図３】アクセスユニットにおける復号ユニットに関して、１つ以上の除去遅延を確定するための方法の一構成を示すフロー図である。
【図４】ビットストリームをバッファリングにするための方法の一構成を示すフロー図である。
【図５】アクセスユニットにおける復号ユニットに関して、１つ以上の除去遅延を確定するための方法の一構成を示すフロー図である。
【図６】電子デバイス上のエンコーダ６０４の一構成を示すブロック図である。
【図７】電子デバイス上のデコーダの一構成を示すブロック図である。
【図８】送信用電子デバイスにおいて利用される様々なコンポーネントを示す。
【図９】受信用電子デバイスにおいて利用される様々なコンポーネントを示すブロック図である。
【図１０】メッセージを送信するためのシステムおよび方法が実装された電子デバイスの一構成を示すブロック図である。
【図１１】ビットストリームをバッファリングするためのシステムおよび方法が実装された電子デバイスの一構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
メッセージを送信するための電子デバイスが記載される。電子デバイスは、プロセッサと、プロセッサと電子通信を行うメモリに記憶された命令とを含む。電子デバイスは、符号化ピクチャバッファ（ＣＰＢ）がサブピクチャ・レベルの動作をサポートするときに、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミング付加拡張情報（ＳＥＩ）メッセージに含めるべきかどうかを確定する。電子デバイスは、また、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージ（あるいは、いくつかの他のＳＥＩメッセージ、または、いくつかの他のパラメータセット、例えば、ピクチャパラメータセット、シーケンスパラメータセット、ビデオパラメータセットもしくは適合パラメータセット）に含めるべきときには、共通復号ユニットＣＰＢ除去遅延パラメータを生成し、共通復号ユニットＣＰＢ除去遅延パラメータは、ＣＰＢからのアクセスユニットにおけるすべての復号ユニットに適用可能である。電子デバイスは、また、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきでないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを生成する。電子デバイスは、また、共通復号ユニットＣＰＢ除去遅延パラメータか、または復号ユニットＣＰＢ除去遅延パラメータをもつピクチャタイミングＳＥＩメッセージを送信する。
【００１１】
共通復号ユニットＣＰＢ除去遅延パラメータは、直前の復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける現在の復号ユニットをＣＰＢから除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【００１２】
そのうえ、復号ユニットがアクセスユニットにおける第１の復号ユニットであるときに、共通復号ユニットＣＰＢ除去遅延パラメータは、先行アクセスユニットにおいて最新のバッファリング期間ＳＥＩメッセージと関連付けられたアクセスユニットにおける最後の復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける第１の復号ユニットをＣＰＢから除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【００１３】
対照的に、復号ユニットがアクセスユニットにおける第１ではない復号ユニットであるときには、共通復号ユニットＣＰＢ除去遅延パラメータは、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける先行復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける現在の復号ユニットをＣＰＢから除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【００１４】
復号ユニットＣＰＢ除去遅延パラメータは、最後の復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおけるｉ番目の復号ユニットをＣＰＢから除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【００１５】
電子デバイスは、ｍｏｄｕｌｏ  ２（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１）カウンタの剰余に従って、復号ユニットＣＰＢ除去遅延パラメータを算出し、ここでｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１は、共通復号ユニットＣＰＢ除去遅延パラメータの長さである。
【００１６】
電子デバイスは、また、ＣＰＢがアクセスユニット・レベルの動作をサポートするときには、先行アクセスユニットにおいて最新のバッファリング期間ＳＥＩメッセージと関連付けられたアクセスユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニット・データをＣＰＢから除去する前に、いくつのクロックティックを待機すべきかを指定するＣＰＢ除去遅延パラメータを含んだピクチャタイミングＳＥＩメッセージを生成する。
【００１７】
電子デバイスは、また、ＣＰＢがサブピクチャ・レベルまたはアクセスユニット・レベルの動作をサポートするかどうかを確定する。これは、符号化ピクチャバッファ（ＣＰＢ）が、ピクチャタイミング・フラグの値に基づいてサブピクチャ・レベルの動作をサポートするパラメータを提供するかどうかを示す、ピクチャタイミング・フラグを確定するステップを含む。ピクチャタイミング・フラグは、ピクチャタイミングＳＥＩメッセージに含められる。
【００１８】
共通復号ユニットＣＰＢ除去遅延パラメータを含めるべきかどうかを確定するステップは、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきときに、共通復号ユニットＣＰＢ除去遅延フラグを１に設定することを含む。このステップは、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきでないときに、共通復号ユニットＣＰＢ除去遅延フラグを０に設定することも含む。共通復号ユニットＣＰＢ除去遅延フラグは、ピクチャタイミングＳＥＩメッセージに含められる。
【００１９】
電子デバイスは、また、ＣＰＢがサブピクチャ・レベルの動作をサポートするときに、アクセスユニットにおける復号ユニットごとに、ネットワーク抽象化層（ＮＡＬ：ｎｅｔｗｏｒｋ  ａｂｓｔｒａｃｔｉｏｎ  ｌａｙｅｒ）ユニットの量から１を差し引いた値を示す、個別のＮＡＬユニット関連パラメータを生成する。代わりに、または加えて、電子デバイスは、アクセスユニットにおける各復号ユニットに共通のＮＡＬユニットの量から１を差し引いた値を示す、共通ＮＡＬパラメータを生成する。
【００２０】
ビットストリームをバッファリングするための電子デバイスも記載される。電子デバイスは、プロセッサと、プロセッサと電子通信を行うメモリに記憶された命令とを含む。電子デバイスは、ＣＰＢがアクセスユニットに関してサブピクチャ・レベルでパラメータをシグナリングすることを確定する。電子デバイスは、受信したピクチャタイミング付加拡張情報（ＳＥＩ）メッセージが共通復号ユニット符号化ピクチャバッファ（ＣＰＢ）除去遅延フラグを備えるときに、アクセスユニットにおけるすべての復号ユニットに適用可能な、共通復号ユニットＣＰＢ除去遅延パラメータを確定する。電子デバイスは、また、ピクチャタイミングＳＥＩメッセージが共通復号ユニットＣＰＢ除去遅延フラグを備えないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを確定する。電子デバイスは、また、共通復号ユニットＣＰＢ除去遅延パラメータか、または個別の復号ユニットＣＰＢ除去遅延パラメータを用いて、ＣＰＢから復号ユニットを除去する。電子デバイスは、また、アクセスユニットにおける復号ユニットを復号する。
【００２１】
一構成において、電子デバイスは、ピクチャタイミング・フラグをピクチャタイミングＳＥＩメッセージ中に設定することを確定する。電子デバイスは、また、
【００２２】
【数１】
0006552197.tif 000002
【００２３】
に従って、ＣＰＢ除去遅延パラメータｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙも設定し、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値であり、ｉは、インデックスである。
【００２４】
代わりに、電子デバイスは、数式
【００２５】
【数２】
0006552197.tif 000003
【００２６】
を満たすように、ＣＰＢ除去遅延パラメータｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ、およびｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］を設定し、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値であり、ｉは、インデックスである。
【００２７】
代わりに、電子デバイスは、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＊ｔｃ＝ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］＊ｔｃ，ｓｕｂに従って、ＣＰＢ除去遅延パラメータｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ、およびｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］を設定し、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］は、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値である。
【００２８】
一構成において、電子デバイスは、ピクチャタイミング・フラグをピクチャタイミングＳＥＩメッセージ中に設定することを確定する。電子デバイスは、また、数式：−１≦（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＊ｔｃ−ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］＊ｔｃ，ｓｕｂ）≦１を満たすように、ＣＰＢ除去遅延パラメータｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ、およびｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］を設定し、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値である。
【００２９】
ＣｌｏｃｋＤｉｆｆ変数は、ＣｌｏｃｋＤｉｆｆ＝（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ−（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ＊（ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１））／ｔｉｍｅ＿ｓｃａｌｅ）として定義され、ここでｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋは、クロックティック・カウンタのインクリメント１に対応する、周波数ｔｉｍｅ＿ｓｃａｌｅ  Ｈｚで動作しているクロックの時間単位の数であり、ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋは、サブピクチャ・クロックティック・カウンタのインクリメント１に対応する、周波数ｔｉｍｅ＿ｓｃａｌｅ  Ｈｚで動作しているクロックの時間単位の数であり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１は、アクセスユニットにおける復号ユニットの量であり、ｔｉｍｅ＿ｓｃａｌｅは、１秒内に経過する時間ユニットの数である。
【００３０】
低遅延仮想参照デコーダ（ＨＲＤ：ｈｙｐｏｔｈｅｔｉｃａｌ  ｒｅｆｅｒｅｎｃｅ  ｄｅｃｏｄｅｒ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しており、ＣｌｏｃｋＤｉｆｆがゼロより大きいときに、復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）＋ＣｌｏｃｋＤｉｆｆに従って確定され、ここでｔｒ，ｎ（ｍ）は、復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂはサブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。
【００３１】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しており、ＣｌｏｃｋＤｉｆｆがゼロより大きいときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）−ＣｌｏｃｋＤｉｆｆに従って確定され、ここでｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００３２】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｍａｘ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時時刻である。
【００３３】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｍａｘ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００３４】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｍｉｎ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００３５】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｍｉｎ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００３６】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００３７】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００３８】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、最後の復号ユニットではない復号ユニットｍに関する除去時間は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ここでｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットである復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける最後の復号ユニットｍの最終除去時刻である。
【００３９】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、最後の復号ユニットではない復号ユニットｍに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ここでｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットｍである復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける最後の復号ユニットｍの最終除去時刻である。
【００４０】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、復号ユニットｍに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ここでｔｒ，ｎ（ｍ）は、復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける復号ユニットｍの最終除去時刻である。
【００４１】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔａｆ（ｎ）であり、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【００４２】
加えて、いくつかのケースでは、復号ユニットの除去時刻およびアクセスユニットの除去時刻を決定するのに上記の択一的な数式のどちらを用いるかをシグナリングするために、ビットストリームの一部においてフラグが送信される。１つのケースでは、フラグは、ｄｕ＿ａｕ＿ｃｐｂ＿ａｌｉｇｎｍｅｎｔ＿ｍｏｄｅ＿ｆｌａｇと呼ばれる。ｄｕ＿ａｕ＿ｃｐｂ＿ａｌｉｇｎｍｅｎｔ＿ｍｏｄｅ＿ｆｌａｇが１であれば、サブピクチャ・ベース・モードで動作するＣＰＢの動作をアクセスユニット・モードで動作するＣＰＢとアラインさせる、上記の数式が用いられる。ｄｕ＿ａｕ＿ｃｐｂ＿ａｌｉｇｎｍｅｎｔ＿ｍｏｄｅ＿ｆｌａｇが０であれば、サブピクチャに基づくモードで動作するＣＰＢの動作をアクセスユニット・モードで動作するＣＰＢとアラインさせない、上記の数式が用いられる。
【００４３】
かつてのケースでは、フラグｄｕ＿ａｕ＿ｃｐｂ＿ａｌｉｇｎｍｅｎｔ＿ｍｏｄｅ＿ｆｌａｇは、ビデオ・ユーザビリティ情報（ＶＵＩ：ｖｉｄｅｏ  ｕｓａｂｉｌｉｔｙ  ｉｎｆｏｒｍａｔｉｏｎ）でシグナリングされる。別のケースでは、フラグｄｕ＿ａｕ＿ｃｐｂ＿ａｌｉｇｎｍｅｎｔ＿ｍｏｄｅ＿ｆｌａｇは、ピクチャタイミングＳＥＩメッセージで送信される。さらに別のケースでは、フラグｄｕ＿ａｕ＿ｃｐｂ＿ａｌｉｇｎｍｅｎｔ＿ｍｏｄｅ＿ｆｌａｇは、ビットストリームの何か他の規範的な部分で送信される。本明細書に開示されるシステムおよび方法に従って修正されたシンタックスおよびセマンティクスの一例が次のように表（０）に示される。
【００４４】
【表１】
0006552197.tif 000004
【００４５】
様々な変数に対して上に用いたのとは異なるシンボル（名称）も用いられることに留意すべきである。例えば、アクセスユニットｎのｔｒ（ｎ）は、ＣｐｂＲｅｍｏｖａｌＴｉｍｅ（ｎ）と呼ばれ、復号ユニットｎのｔｒ（ｍ）は、ＣｐｂＲｅｍｏｖａｌＴｉｍｅ（ｍ）と呼ばれ、ｔｃ＿ｓｕｂは、ＣｌｏｃｋＳｕｂＴｉｃｋと呼ばれ、ｔｃは、ＣｌｏｃｋＴｉｃｋと呼ばれ、アクセスユニットｍのｔａｆ（ｎ）は、アクセスユニットｎのＦｉｎａｌＡｒｒｉｖａｌＴｉｍｅ（ｎ）と呼ばれ、復号ユニットｍのｔａｆ（ｍ）は、ＦｉｎａｌＡｒｒｉｖａｌＴｉｍｅ（ｍ）と呼ばれ、ｔｒ，ｎ（ｎ）は、アクセスユニットｎのＮｏｍｉｎａｌＲｅｍｏｖａｌＴｉｍｅ（ｎ）と呼ばれ、ｔｒ，ｎ（ｍ）は、復号ユニットｍのＮｏｍｉｎａｌＲｅｍｏｖａｌＴｉｍｅ（ｍ）と呼ばれることもある。
【００４６】
電子デバイスによってメッセージを送信するための方法も記載される。方法は、符号化ピクチャバッファ（ＣＰＢ）がサブピクチャ・レベルの動作をサポートするときに、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミング付加拡張情報（ＳＥＩ）メッセージに含めるべきかどうかを確定するステップを含む。方法は、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきときには、共通復号ユニットＣＰＢ除去遅延パラメータを生成するステップも含み、共通復号ユニットＣＰＢ除去遅延パラメータは、ＣＰＢからのアクセスユニットにおけるすべての復号単位に適用可能である。方法は、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきでないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを生成するステップも含む。方法は、共通復号ユニットＣＰＢ除去遅延パラメータか、または復号ユニットＣＰＢ除去遅延パラメータをもつピクチャタイミングＳＥＩメッセージを送信するステップも含む。
【００４７】
電子デバイスによってビットストリームをバッファリングするための方法も記載される。方法は、ＣＰＢがアクセスユニットに関してサブピクチャ・レベルでパラメータをシグナリングすることを確定するステップを含む。方法は、受信したピクチャタイミング付加拡張情報（ＳＥＩ）メッセージが共通復号ユニット符号化ピクチャバッファ（ＣＰＢ）除去遅延フラグを備えるときに、アクセスユニットにおけるすべての復号ユニットに適用可能な、共通復号ユニットＣＰＢ除去遅延パラメータを確定するステップも含む。方法は、ピクチャタイミングＳＥＩメッセージが共通復号ユニットＣＰＢ除去遅延フラグを備えないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを確定するステップも含む。方法は、共通復号ユニットＣＰＢ除去遅延パラメータか、または個別の復号ユニットＣＰＢ除去遅延パラメータを用いて、ＣＰＢから復号ユニットを除去するステップも含む。方法は、アクセスユニットにおける復号ユニットを復号するステップも含む。
【００４８】
本明細書に開示されるシステムおよび方法は、メッセージを送信し、ビットストリームをバッファリングにするための電子デバイスを記載する。例えば、本明細書に開示されるシステムおよび方法は、サブピクチャ・パラメータによって開始するビットストリームのためのバッファリングを記載する。いくつかの構成において、本明細書に開示されるシステムおよび方法は、サブピクチャ・ベースの仮想参照デコーダ（ＨＲＤ）パラメータをシグナリングするステップを記載する。例として、本明細書に開示されるシステムおよび方法は、ピクチャタイミング付加拡張情報（ＳＥＩ）メッセージの修正について記載する。本明細書に開示されるシステムおよび方法（例えば、ＨＲＤ修正）は、各サブピクチャが到着して、一定の間隔でＣＰＢから除去されるときに、パラメータのよりコンパクトなシグナリングをもたらす。
【００４９】
そのうえ、サブピクチャ・レベルのＣＰＢ除去遅滞パラメータが存在するときに、符号化ピクチャバッファ（ＣＰＢ）は、アクセスユニット・レベルか、またはサブピクチャ・レベルで動作しうる。本システムおよび方法は、また、サブピクチャ・レベル・ベースのＣＰＢ動作およびアクセスユニット・レベルのＣＰＢ動作が同じ復号ユニット除去のタイミングをもたらすように、ビットストリーム制約条件を課する。具体的には、サブピクチャ・モードで動作しているときのアクセスユニットにおける最後の復号ユニットの除去のタイミングと、アクセスユニット・モードで動作しているときのアクセスユニットの除去のタイミングとは、同じになるであろう。
【００５０】
ＨＲＤに関連して用語「仮想」が用いられるが、ＨＲＤは、物理的に実装されてもよいことに留意すべきである。例えば、「ＨＲＤ」は、実際のデコーダの実装を記載するために用いられてもよい。いくつかの構成では、ビットストリームが高効率ビデオ符号化（ＨＥＶＣ：Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）仕様に適合するかどうかを確定するためにＨＲＤが実装される。例として、ＨＲＤは、タイプＩのビットストリームおよびタイプＩＩのビットストリームがＨＥＶＣ仕様に適合するかどうかを確定するために用いられる。タイプＩのビットストリームは、ビデオ符号化層（ＶＣＬ：Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｌａｙｅｒ）ネットワークアクセス層（ＮＡＬ：Ｎｅｔｗｏｒｋ  Ａｃｃｅｓｓ  Ｌａｙｅｒ）ユニットおよびフィラー・データＮＡＬユニットのみを含む。タイプＩＩのビットストリームは、追加的に他のＮＡＬユニットおよびシンタックス要素を含みうる。
【００５１】
ビデオ符号化に関する共同作業チーム（ＪＣＴＶＣ：Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）の文書ＪＣＴＶＣ−Ｉ０３３３は、サブピクチャ・ベースのＨＲＤを含み、ピクチャタイミングＳＥＩメッセージをサポートする。高効率ビデオ符号化（ＨＥＶＣ）委員会草案（ＪＣＴＶＣ−Ｉ１００３）にはこの機能性が取り入れられた。
【００５２】
本明細書に開示されるシステムおよび方法に従って修正されたシンタックスおよびセマンティクスの一例が次のように表（１）に示される。本明細書に開示されるシステムおよび方法による修正は太字で示される。
【００５３】
【表２】
0006552197.tif 000005
【００５４】
本明細書に開示されるシステムおよび方法によるバッファリング期間ＳＥＩメッセージのセマンティクスに関する例が次のように示される。特に、修正されたシンタックス要素のセマンティクスに関するさらなる詳細が次のように示される。ＮａｌＨｒｄＢｐＰｒｅｓｅｎｔＦｌａｇまたはＶｃｌＨｒｄＢｐＰｒｅｓｅｎｔＦｌａｇが１に等しいときには、バッファリング期間ＳＥＩメッセージをビットストリームにおける任意のアクセスユニットと関連付けることができ、バッファリング期間ＳＥＩメッセージを各瞬時復号リフレッシュ（ＩＤＲ：Ｉｎｓｔａｎｔａｎｅｏｕｓ  Ｄｅｃｏｄｉｎｇ  Ｒｅｆｒｅｓｈ）アクセスユニット、各クリーンランダムアクセス（ＣＲＡ：Ｃｌｅａｎ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ）アクセスユニット、およびリカバリポイントＳＥＩメッセージに関連する各アクセスユニットと関連付けることもできる。いくつかの用途では、バッファリング期間ＳＥＩメッセージが頻繁に存在することが望ましい。バッファリング期間は、復号順にバッファリング期間ＳＥＩメッセージの２つのインスタンス間のアクセスユニットの集合として指定される。
【００５５】
ｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄは、シーケンスＨＲＤ属性を含むシーケンスパラメータセットを指定する。ｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの値は、バッファリング期間ＳＥＩメッセージと関連付けられたプライマリ符号化ピクチャによって参照されるピクチャパラメータセットにおけるｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの値に等しい。ｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの値は、両端値を含めて、０から３１までの範囲内にある。
【００５６】
ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］は、ＨＲＤ初期化後の第１のバッファリング期間について、バッファリング期間ＳＥＩメッセージに関連するアクセスユニットと関連付けられた符号化データの第１のビットのＣＰＢへの到着の時刻と、同じアクセスユニットと関連付けられた符号化データのＣＰＢからの除去の時刻との間の遅延をＳｃｈｅｄＳｅｌＩｄｘ番目のＣＰＢに対して指定する。シンタックス要素は、ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示されるビットの長さを有する。これは、９０ｋＨｚクロックを単位とする。ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］は０に等しくはなく、９０ｋＨｚクロック単位でＣＰＢサイズと時間的に等価な、９００００＊（ＣｐｂＳｉｚｅ［ＳｃｈｅｄＳｅｌＩｄｘ］／ＢｉｔＲａｔｅ［ＳｃｈｅｄＳｅｌＩｄｘ］）を超えることはない。
【００５７】
ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、符号化されたアクセスユニットのＣＰＢへの初期配信時刻を指定するために、ＳｃｈｅｄＳｅｌＩｄｘ番目のＣＰＢに対してｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙと組み合わせて用いられる。ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、９０ｋＨｚクロックを単位とする。ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］シンタックス要素は、そのビットの長さがｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される固定長符号である。このシンタックス要素はデコーダでは用いられず、（例えば、ＪＣＴＶＣ−Ｉ１００３の付属書Ｃで指定されるように）配信スケジューラ（ＨＳＳ）にのみ必要とされる。
【００５８】
符号化ビデオシーケンス全体にわたって、ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］とｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］との合計は、ＳｃｈｅｄＳｅｌＩｄｘの値ごとに一定である。
【００５９】
ｉｎｉｔｉａｌ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］は、ＨＲＤ初期化後の第１のバッファリング期間に関して、バッファリング期間ＳＥＩメッセージに関連するアクセスユニットにおける第１の復号ユニットと関連付けられた符号化データの第１のビットのＣＰＢへの到着の時刻と、同じ復号ユニットと関連付けられた符号化データのＣＰＢからの除去の時刻との間の遅延をＳｃｈｅｄＳｅｌＩｄｘ番目のＣＰＢに対して指定する。シンタックス要素は、ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示されるビットの長さを有する。これは、９０ｋＨｚクロックを単位とする。ｉｎｉｔｉａｌ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］は０に等しくはなく、９０ｋＨｚクロック単位でＣＰＢサイズと時間的に等価な、９００００＊（ＣｐｂＳｉｚｅ［ＳｃｈｅｄＳｅｌＩｄｘ］／ＢｉｔＲａｔｅ［ＳｃｈｅｄＳｅｌＩｄｘ］）を超えることはない。
【００６０】
ｉｎｉｔｉａｌ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、復号ユニットのＣＰＢへの初期配信時刻を指定するために、ＳｃｈｅｄＳｅｌＩｄｘ番目のＣＰＢに対してｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙと組み合わせて用いられる。ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、９０ｋＨｚクロックを単位とする。ｉｎｉｔｉａｌ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘシンタックス要素は、そのビットの長さがｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される固定長符号である。このシンタックス要素はデコーダでは用いられず、（例えば、ＪＣＴＶＣ−Ｉ１００３の付属書Ｃで指定されるように）配信スケジューラ（ＨＳＳ）にのみ必要とされる。
【００６１】
符号化ビデオシーケンス全体にわたって、ｉｎｉｔｉａｌ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］とｉｎｉｔｉａｌ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］との合計は、ＳｃｈｅｄＳｅｌＩｄｘの値ごとに一定である。
【００６２】
本明細書に開示されるシステムおよび方法によるピクチャタイミングＳＥＩメッセージのセマンティクスに関する例が次のように示される。特に、修正されたシンタックス要素のセマンティクスに関するさらなる詳細が次のように示される。
【００６３】
ピクチャタイミングＳＥＩメッセージのシンタックスは、ピクチャタイミングＳＥＩメッセージと関連付けられた符号化ピクチャに対してアクティブなシーケンスパラメータセットの内容に依存する。しかしながら、関連するシーケンスパラメータセットのアクティブ化は、瞬時復号リフレッシュ（ＩＤＲ）アクセスユニットのピクチャタイミングＳＥＩメッセージより前に、同じアクセスユニット内のバッファリング期間ＳＥＩメッセージが先行しない限り、符号化ピクチャの第１の符号化スライスのネットワーク抽象化層（ＮＡＬ）ユニットが復号されるまで生じない（さらに、ビットストリームおける第１のピクチャではないＩＤＲピクチャでは、符号化ピクチャがＩＤＲピクチャであるという確定がなされない）。符号化ピクチャの符号化スライスＮＡＬユニットは、ＮＡＬユニット順にピクチャタイミングＳＥＩメッセージに従うので、いくつかのケースでは、符号化ピクチャに対してアクティブになるであろうシーケンスパラメータのパラメータが確定されるまで、ピクチャタイミングＳＥＩメッセージを含んだローバイトシーケンスペイロード（ＲＢＳＰ：ｒａｗ  ｂｙｔｅ  ｓｅｑｕｅｎｃｅ  ｐａｙｌｏａｄ）を記憶して、その後、ピクチャタイミングＳＥＩメッセージの構文解析を行うことが、デコーダにとって必要なこともある。
【００６４】
ビットストリームにおけるピクチャタイミングＳＥＩメッセージの存在は、次のように指定される。ＣｐｂＤｐｂＤｅｌａｙｓＰｒｅｓｅｎｔＦｌａｇが１に等しければ、符号化ビデオシーケンスのすべてのアクセスユニットに１つのピクチャタイミングＳＥＩメッセージが存在する。そうでない（ＣｐｂＤｐｂＤｅｌａｙｓＰｒｅｓｅｎｔＦｌａｇが０に等しい）場合には、符号化ビデオシーケンスのいずれのアクセスユニットにもピクチャタイミングＳＥＩメッセージは存在しない。
【００６５】
ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、先行アクセスユニットにおいて最新のバッファリング期間ＳＥＩメッセージと関連付けられたアクセスユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニット・データをバッファから除去する前に、いくつのクロックティック（ＪＣＴＶＣ−Ｉ１００３のＥ．２．１項を参照）を待機すべきかを指定する。この値は、ＪＣＴＶＣ−Ｉ１００３の付属書Ｃに指定されるように、ＨＳＳに関して、アクセスユニット・データのＣＰＢへのできるだけ早い到着の時刻を算出するためにも用いられる。シンタックス要素は、そのビットの長さがｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される固定長符号である。ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、ｍｏｄｕｌｏ  ２（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１）カウンタの剰余である。
【００６６】
ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、バッファリング期間ＳＥＩメッセージを含んだ、異なる符号化ビデオシーケンスのアクセスユニットであってもよい、先行アクセスユニットの除去時刻に対するクロックティックの数を指定するが、シンタックス要素ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙの（ビットの）長さを確定するｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１の値は、ピクチャタイミングＳＥＩメッセージと関連付けられたプライマリ符号化ピクチャに対してアクティブなシーケンスパラメータセットで符号化されたｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１の値である。
【００６７】
ｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙは、ピクチャの復号ピクチャバッファ（ＤＰＢ）出力時刻を計算するために用いられる。これは、アクセスユニットにおける最後の復号ユニットのＣＰＢからの除去後に、復号ピクチャがＤＰＢから出力される前に、いくつのクロックティックを待機すべきかを指定する（ＪＣＴＶＣ−Ｉ１００３のＣ．２項を参照）。
【００６８】
ＤＰＢに関して、ピクチャが依然として「短期参照に使用中」または「長期参照に使用中」とマーク付けされているときには、その出力時刻にピクチャはＤＰＢから除去されない。復号ピクチャでは、１つだけのｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙが指定される。シンタックス要素ｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙのビットの長さは、ｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される。ｍａｘ＿ｄｅｃ＿ｐｉｃ＿ｂｕｆｆｅｒｉｎｇ［ｍａｘ＿ｔｅｍｐｏｒａｌ＿ｌａｙｅｒｓ＿ｍｉｎｕｓ１］が０に等しいときに、ｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙは０に等しい。
【００６９】
ＪＣＴＶＣ−Ｉ１００３のＣ．２項に指定されるような出力タイミング適合デコーダから出力された任意のピクチャのｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙから導出される出力時刻は、復号順にそれに続く任意の符号化ビデオシーケンスにおけるすべてのピクチャのｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙから導出される出力時刻に先行する。このシンタックス要素の値によって定められるピクチャ出力順は、項により指定されたＰｉｃＯｒｄｅｒＣｎｔ（）の値によって定められるのと同じ順序である。ｎｏ＿ｏｕｔｐｕｔ＿ｏｆ＿ｐｒｉｏｒ＿ｐｉｃｓ＿ｆｌａｇが１に等しいか、または１に等しいと推測されるＩＤＲピクチャより復号順では先行するために、項の「バンピング（ｂｕｍｐｉｎｇ）」処理によっては出力されないピクチャに関しては、ｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙから導出される出力時刻は、同じ符号化ビデオシーケンス内のすべてのピクチャに対してＰｉｃＯｒｄｅｒＣｎｔ（）の値の増加ともに増加する。
【００７０】
ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１は、ピクチャタイミングＳＥＩメッセージが関連付けられたアクセスユニットにおける復号ユニットの数を指定する。ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１の値は、両端値を含めて、０からＰｉｃＷｉｄｔｈＩｎＣｔｂｓ＊ＰｉｃＨｅｉｇｈｔＩｎＣｔｂｓ−１までの範囲内にある。
【００７１】
１に等しいｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇは、シンタックス要素ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙが存在することを明示する。０に等しいｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇは、シンタックス要素ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙが存在しないことを明示する。
【００７２】
ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、次のように情報を指定する。すなわち、復号ユニットがピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける第１の復号ユニットであれば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、先行アクセスユニットにおいて最新のバッファリング期間ＳＥＩメッセージと関連付けられたアクセスユニットにおける最後の復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける第１の復号ユニットをＣＰＢから除去する前に、いくつのサブピクチャ・クロックティック（ＪＣＴＶＣ−Ｉ１００３のＥ．２．１項を参照）を待機すべきかを指定する。
【００７３】
そうでない場合には、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける先行復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける現在の復号ユニットをＣＰＢから除去する前に、いくつのサブピクチャ・クロックティック（ＪＣＴＶＣ−Ｉ１００３のＥ．２．１項を参照）を待機すべきかを指定する。この値は、付属書Ｃに指定されるように、ＨＳＳに関して、復号ユニット・データのＣＰＢへのできるだけ早い到着の時刻を算出するためにも用いられる。シンタックス要素は、そのビットの長さがｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される固定長符号である。ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、ｍｏｄｕｌｏ  ２（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１）カウンタの剰余である。
【００７４】
ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙを指定する代わりの方法は次の通りである。
【００７５】
ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、最後の復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける現在の復号ユニットをＣＰＢから除去する前に、いくつのサブピクチャ・クロックティック（ＪＣＴＶＣ−Ｉ１００３のＥ．２．１項を参照）を待機すべきかを指定する。この値は、付属書Ｃに指定されるように、ＨＳＳに関して、復号ユニット・データのＣＰＢへのできるだけ早い到着の時刻を算出するためにも用いられる。シンタックス要素は、そのビットの長さがｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される固定長符号である。ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、ｍｏｄｕｌｏ  ２（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１）カウンタの剰余である。
【００７６】
ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙは、バッファリング期間ＳＥＩメッセージを含んだ、異なる符号化ビデオシーケンスのアクセスユニットであってもよい、先行アクセスユニットにおける第１の復号ユニットの除去時刻に対するサブピクチャ・クロックティックの数を指定するが、シンタックス要素ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙの（ビットの）長さを確定するｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１の値は、ピクチャタイミングＳＥＩメッセージと関連付けられた符号化ピクチャに対してアクティブなシーケンスパラメータセットで符号化されるｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１の値である。
【００７７】
ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１［ｉ］＋１は、ピクチャタイミングＳＥＩメッセージが関連付けられたアクセスユニットのｉ番目の復号ユニットにおけるＮＡＬユニットの数を指定する。ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１［ｉ］の値は、両端値を含めて、０からＰｉｃＷｉｄｔｈＩｎＣｔｂｓ＊ＰｉｃＨｅｉｇｈｔＩｎＣｔｂｓ−１までの範囲内にある。
【００７８】
アクセスユニットの第１の復号ユニットは、アクセスユニットにおける復号順に最初のｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１［０］＋１個の連続したＮＡＬユニットからなる。アクセスユニットの（ｉが０より大きい）ｉ番目の復号ユニットは、復号順にアクセスユニットの前の復号ユニットにおける最後のＮＡＬユニットのすぐ後に続くｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１［ｉ］＋１個の連続したＮＡＬユニットからなる。各復号ユニットには少なくとも１つのＶＣＬ  ＮＡＬユニットがある。ＶＣＬ  ＮＡＬユニットと関連付けられたすべての非ＶＣＬ  ＮＡＬユニットは、同じ復号ユニットに含まれる。
【００７９】
ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、先行アクセスユニットにおいて最新のバッファリング期間ＳＥＩメッセージと関連付けられたアクセスユニットにおける第１の復号ユニットのＣＰＢからの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおけるｉ番目の復号ユニットをＣＰＢから除去する前に、いくつのサブピクチャ・クロックティック（ＪＣＴＶＣ−Ｉ１００３のＥ．２．１項を参照）を待機すべきかを指定する。この値は、（例えば、ＪＣＴＶＣ−Ｉ１００３の付属書Ｃに指定されるように）ＨＳＳに関して、復号ユニット・データのＣＰＢへのできるだけ早い到着の時刻を算出するためにも用いられる。シンタックス要素は、そのビットの長さがｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１によって示される固定長符号である。ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、ｍｏｄｕｌｏ  ２（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１）カウンタの剰余である。
【００８０】
ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、バッファリング期間ＳＥＩメッセージを含んだ、異なる符号化ビデオシーケンスのアクセスユニットであってもよい、先行アクセスユニットにおける第１の復号ユニットの除去時刻に対するサブピクチャ・クロックティックの数を指定するが、シンタックス要素ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の（ビットの）長さを確定するｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１の値は、ピクチャタイミングＳＥＩメッセージと関連付けられた符号化ピクチャに対してアクティブなシーケンスパラメータセットで符号化されたｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１の値である。
【００８１】
一構成において、復号ユニット除去のタイミングおよび復号ユニットの復号は、次のように実装される。
【００８２】
ＳｕｂＰｉｃＣｐｂＦｌａｇが０に等しければ、変数ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）は、復号ユニットｍであるアクセスユニットと関連付けられたピクチャタイミングＳＥＩメッセージにおけるｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙの値に設定され、変数Ｔｃは、ｔｃに設定される。そうでない場合に、ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しく、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇが０であれば、変数ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）は、復号ユニットｍを含むアクセスユニットと関連付けられたピクチャタイミングＳＥＩメッセージにおける復号ユニットｍ（ｍは０からｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１に及ぶ）に関するｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の値に設定され、変数Ｔｃは、ｔｃ＿ｓｕｂに設定される。
【００８３】
いくつかのケースでは、そうでない場合に、ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しく、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇが０であれば、変数ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）は、復号ユニットｍを含むアクセスユニットと関連付けられたピクチャタイミングＳＥＩメッセージにおける復号ユニットｍ（ｍは０からｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１に及ぶ）に関する（ｍ＋１）＊ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の値に設定され、変数Ｔｃは、ｔｃ＿ｓｕｂに設定される。
【００８４】
そうでない場合に、ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しく、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇが１であれば、変数ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）は、復号ユニットｍを含むアクセスユニットと関連付けられたピクチャタイミングＳＥＩメッセージにおける復号ユニットｍに関するｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙの値に設定され、変数Ｔｃは、ｔｃ＿ｓｕｂに設定される。
【００８５】
復号ユニットｍが０に等しいｎをもつ復号ユニット（ＨＲＤを初期化するアクセスユニットの第１の復号ユニット）であるときに、復号ユニットのＣＰＢからの名目上の除去時刻は、ｔｒ，ｎ（０）＝ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］／９００００によって指定される。
【００８６】
復号ユニットｍがＨＲＤを初期化しないバッファリング期間の第１のアクセスユニットの第１の復号ユニットであるときに、復号ユニットのＣＰＢからの名目上の除去時刻は、ｔｒ，ｎ（ｍ）＝ｔｒ，ｎ（ｍｂ）＋Ｔｃ＊ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）によって指定され、ここでｔｒ，ｎ（ｍｂ）は、前のバッファリング期間の第１の復号ユニットの名目上の除去時刻である。
【００８７】
復号ユニットｍがバッファリング期間の第１の復号ユニットであるときに、ｍｂは、復号ユニットｍの除去時刻ｔｒ，ｎ（ｍ）におけるｍに等しく設定される。バッファリング期間の第１の復号ユニットではない復号ユニットｍの名目上の除去時刻ｔｒ，ｎ（ｍ）は、ｔｒ，ｎ（ｍ）＝ｔｒ，ｎ（ｍｂ）＋Ｔｃ＊ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）によって示され、ここでｔｒ，ｎ（ｍｂ）は、現在のバッファリング期間の第１の復号ユニットの名目上の除去時刻である。
【００８８】
復号ユニットｍの除去時刻は、次のように指定される。ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが０に等しいか、またはｔｒ，ｎ（ｍ）≧ｔａｆ（ｍ）であれば、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）によって指定される。そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合には、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋Ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／Ｔｃ）によって指定される。後の方の（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）ケースは、復号ユニットｍのサイズｂ（ｍ）が大き過ぎて、名目上の除去時刻における除去を妨げることを示す。
【００８９】
別のケースでは、復号ユニットｍの除去時刻が次のように指定される。ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが０に等しいか、またはｔｒ，ｎ（ｍ）≧ｔａｆ（ｍ）であれば、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）によって指定される。そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合には、アクセスユニットにおける最後の復号ユニットではない復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）によって指定され、アクセスユニットにおける最後の復号ユニットである復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋Ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／Ｔｃ）によって指定される。後の方の（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）ケースは、復号ユニットｍのサイズｂ（ｍ）が大き過ぎて、名目上の除去時刻における除去を妨げることを示す。
【００９０】
別のケースでは、復号ユニットｍの除去時刻は、次のように指定される。ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが０に等しいか、またはｔｒ，ｎ（ｍ）≧ｔａｆ（ｍ）であれば、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）によって指定される。そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合には、アクセスユニットにおける最後の復号ユニットではない復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）によって指定され、アクセスユニットにおける最後の復号ユニットである復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ）によって指定される。後の方の（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）ケースは、復号ユニットｍのサイズｂ（ｍ）が大き過ぎて、名目上の除去時刻における除去を妨げることを示す。
【００９１】
別のケースでは、復号ユニットｍの除去時刻は、次のように指定される。ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが０に等しいか、またはｔｒ，ｎ（ｍ）≧ｔａｆ（ｍ）であれば、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）によって指定される。そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合には、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）によって指定される。後の方の（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）ケースは、復号ユニットｍサイズｂ（ｍ）が大き過ぎて、名目上の除去時刻における除去を妨げることを示す。
【００９２】
ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しいときに、アクセスユニットｎの名目上のＣＰＢ除去時刻ｔｒ，ｎ（ｎ）は、アクセスユニットｎにおける最後の復号ユニットの名目上のＣＰＢ除去時刻に設定され、アクセスユニットｎのＣＰＢ除去時刻ｔｒ（ｎ）は、アクセスユニットｎにおける最後の復号ユニットのＣＰＢ除去時刻に設定される。
【００９３】
ＳｕｂＰｉｃＣｐｂＦｌａｇが０に等しいときには、各復号ユニットがアクセスユニットであり、従って、アクセスユニットｎの名目上のＣＰＢ除去時刻およびＣＰＢ除去時刻は、復号ユニットｎの名目上のＣＰＢ除去時刻およびＣＰＢ除去時刻である。
【００９４】
復号ユニットｍのＣＰＢ除去時刻には、その復号ユニットが直ちに復号される。
【００９５】
本明細書に開示されるシステムおよび方法に従って修正されたピクチャタイミングＳＥＩメッセージに関するシンタックスおよびセマンティクスの別の例が次のように表（２）に示される。本明細書に開示されるシステムおよび方法による修正は太字で示される。
【００９６】
【表３】
0006552197.tif 000006
【００９７】
表（２）に示される例は、復号ユニットを除去するときにいくつのデータをＣＰＢから除去すべきかを確定するために用いられるシンタックス要素ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１を含む。ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１＋１は、ピクチャタイミングＳＥＩメッセージが関連付けられたアクセスユニットの各復号ユニットにおけるＮＡＬユニットの数を指定する。ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１の値は、両端値を含めて、０からＰｉｃＷｉｄｔｈＩｎＣｔｂｓ＊ＰｉｃＨｅｉｇｈｔＩｎＣｔｂｓ−１までの範囲内にある。
【００９８】
アクセスユニットの第１の復号ユニットは、アクセスユニットにおける復号順に最初のｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１＋１個の連続したＮＡＬユニットからなる。アクセスユニットの（ｉが０より大きい）ｉ番目の復号ユニットは、復号順にアクセスユニットの前の復号ユニットにおける最後のＮＡＬユニットのすぐ後に続くｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１＋１個の連続したＮＡＬユニットからなる。各復号ユニットには少なくとも１つのＶＣＬ  ＮＡＬユニットがある。ＶＣＬ  ＮＡＬユニットと関連付けられたすべての非ＶＣＬ  ＮＡＬユニットは、同じ復号ユニットに含まれる。
【００９９】
本明細書に開示されるシステムおよび方法に従って修正されたピクチャタイミングＳＥＩメッセージに関するシンタックスおよびセマンティクスの別の例が次のように表（３）に示される。本明細書に開示されるシステムおよび方法による修正は太字で示される。
【０１００】
【表４】
0006552197.tif 000007
【０１０１】
表（３）に示される例は、１に等しいときにシンタックス要素ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１が存在することを明示するシンタックス要素ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｆｌａｇを含む。０に等しいｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｆｌａｇは、シンタックス要素ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１が存在しないことを明示する。
【０１０２】
さらに別の実施形態のフラグｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇでは、ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１が送信されない。その代わりに、シンタックス要素ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１およびｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙを毎回送信することができるであろう。この場合、これらの要素がシグナリングされないことを示すためには、これらのシンタックス要素に０（または他の何らかの）値を用いることができるであろう。
【０１０３】
ピクチャタイミングＳＥＩメッセージのシンタックス要素およびセマンティクスの修正に加えて、本システムおよび方法は、また、サブピクチャ・ベースのＣＰＢ動作およびアクセスユニット・レベルのＣＰＢ動作が復号ユニット除去の同じタイミングをもたらすようにビットストリーム制約条件を実装する。
【０１０４】
ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、サブピクチャ・レベルのＣＰＢ除去遅延パラメータが存在するときに、ＣＰＢは、アクセスユニット・レベルか、またはサブピクチャ・レベルで動作する。０に等しいｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、サブピクチャ・レベルのＣＰＢ除去遅延パラメータが存在せず、ＣＰＢがアクセスユニット・レベルで動作することを明示する。ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが存在しないときには、その値が０に等しいと推測される。
【０１０５】
アクセスユニット・レベルまたはサブピクチャ・レベルの両方での動作をサポートするために、次のビットストリーム制約条件が用いられる。すなわち、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１であれば、ビットストリーム適合性の要件は、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙおよびすべてのｉに関するｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の値をシグナリングするときに、次の制約条件
【０１０６】
【数３】
0006552197.tif 000008
【０１０７】
に従うことであり、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値であり、ｉは、インデックスである。いくつかの実施形態では、上記の制約条件を満たすために許容パラメータを追加することもできる。
【０１０８】
アクセスユニット・レベルまたはサブピクチャ・レベルの両方での動作をサポートするために、次のようなビットストリーム制約条件が用いられてもよい。すなわち、変数Ｔｄｕ（ｋ）を
【０１０９】
【数４】
0006552197.tif 000009
【０１１０】
として定義するものとし、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１ｋ［ｉ］およびｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１ｋは、ｋ番目のアクセスユニットのｉ番目の復号ユニットに関するパラメータであり（ＨＲＤを初期化したアクセスユニットではｋ＝０、およびｋ＜１ではＴｄｕ（ｋ）＝０）、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１ｋ［ｉ］＋１＝ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙｋ［ｉ］は、ｋ番目のアクセスユニットのＩ番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１ｋは、ｋ番目のアクセスユニットにおける復号ユニットの数であり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｉは、インデックスである。次に、ピクチャタイミング・フラグ（例えば、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ）が１に設定されているときには、次の制約条件が真であるものとする。すなわち、（ａｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１＋１）＊ｔｃ＝＝Ｔｄｕ（ｋ）、ここで（ａｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１＋１）＝ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ、ＣＰＢ除去遅延である。従って、この場合、ＣＰＢ除去遅延（ａｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１＋１）は、サブピクチャ・ベースのＣＰＢの動作およびアクセスユニット・ベースのＣＰＢの動作がアクセスユニット除去およびアクセスユニットの最後の復号ユニット除去の同じタイミングをもたらすように設定される。
【０１１１】
アクセスユニット・レベルまたはサブピクチャ・レベルの両方での動作をサポートするために、次のビットストリーム制約条件が用いられてもよい。すなわち、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１であれば、ビットストリーム適合性の要件は、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙおよびすべてのｉに関するｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の値をシグナリングするときに、次の制約条件
【０１１２】
【数５】
0006552197.tif 000010
【０１１３】
に従うことであり、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値であり、ｉは、インデックスである。
【０１１４】
アクセスユニット・レベルまたはサブピクチャ・レベルの両方での動作をサポートするために、次のビットストリーム制約条件が用いられてもよい。すなわち、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１であれば、ビットストリーム適合性の要件は、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙおよびｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］の値をシグナリングするときに、次の制約条件ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＊ｔｃ＝ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１]＊ｔｃ，ｓｕｂに従うことであり、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１]は、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブクロック・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値である。いくつかの実施形態おいて、上記の制約条件を満たすために許容パラメータを追加することもできる。
【０１１５】
アクセスユニット・レベルまたはサブピクチャ・レベルの両方での動作をサポートするために、次のビットストリーム制約条件が用いられてもよい。すなわち、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１であれば、ビットストリーム適合性の要件は、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙおよびすべてのｉに関するｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の値をシグナリングするときに、次の制約条件−１≦（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＊ｔｃ−ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１]＊ｔｃ，ｓｕｂ）≦１に従うことであり、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブクロック・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値である。
【０１１６】
加えて、本システムおよび方法は、復号ユニット除去のタイミングを修正する。サブピクチャ・レベルのＣＰＢ除去遅延パラメータが存在するときに、（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１であり、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であるときの）「大きいピクチャ」に関する復号ユニットの除去時刻は、クロックティック・カウンタおよびサブピクチャ・クロックティック・カウンタに起因して生じる差を補償するように変更できる。
【０１１７】
ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しいときには、サブピクチャ・レベルのＣＰＢ除去遅延パラメータが存在して、ＣＰＢは、アクセスユニット・レベルまたはサブピクチャ・レベルで動作する。０に等しいｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、サブピクチャ・レベルのＣＰＢ除去遅延パラメータが存在せず、ＣＰＢがアクセスユニット・レベルで動作することを明示する。ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが存在しないときには、その値が０に等しいと推測される。
【０１１８】
具体的には、復号ユニット除去のタイミングおよび復号ユニットの復号の実装の一例は、次の通りである。変数ＳｕｂＰｉｃＣｐｂＰｒｅｆｅｒｒｅｄＦｌａｇは、外部手段によって指定されるか、または外部手段によって指定されないときには０に設定される。変数ＳｕｂＰｉｃＣｐｂＦｌａｇは、次のように導出される。すなわち、ＳｕｂＰｉｃＣｐｂＦｌａｇ＝ＳｕｂＰｉｃＣｐｂＰｒｅｆｅｒｒｅｄＦｌａｇ＆＆ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ。ＳｕｂＰｉｃＣｐｂＦｌａｇが０に等しければ、ＣＰＢは、アクセスユニット・レベルで動作し、各復号ユニットがアクセスユニットである。そうでない場合には、ＣＰＢは、サブピクチャ・レベルで動作し、各復号ユニットは、アクセスユニットの部分集合である。
【０１１９】
ＳｕｂＰｉｃＣｐｂＦｌａｇが０に等しければ、変数ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）は、復号ユニットｍであるアクセスユニットと関連付けられたピクチャタイミングＳＥＩメッセージにおけるｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙの値に設定され、変数Ｔｃは、Ｔｃに設定される。そうでない場合には、変数ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）は、復号ユニットｍを含むアクセスユニットと関連付けられたピクチャタイミングＳＥＩメッセージにおける復号ユニットｍに関するｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］の値に設定され、変数Ｔｃは、Ｔｃ＿ｓｕｂに設定される。
【０１２０】
復号ユニットｍが０に等しいｎをもつ復号ユニット（ＨＲＤを初期化するアクセスユニットの第１の復号ユニット）であるときに、復号ユニットのＣＰＢからの名目上の除去時刻は、ｔｒ，ｎ（０）＝ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］／９００００によって指定される。
【０１２１】
復号ユニットｍがＨＲＤを初期化しないバッファリング期間の第１のアクセスユニットの第１の復号ユニットであるときに、復号ユニットのＣＰＢからの名目上の除去時刻は、ｔｒ，ｎ（ｍ）＝ｔｒ，ｎ（ｍｂ）＋Ｔｃ＊ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）によって指定され、ここでｔｒ，ｎ（ｍｂ）は、前のバッファリング期間の第１の復号ユニットの名目上の除去時刻である。
【０１２２】
復号ユニットｍがバッファリング期間の第１の復号ユニットであるときには、ｍｂは、復号ユニットｍの除去時刻ｔｒ，ｎ（ｍ）におけるｍに等しく設定される。
【０１２３】
バッファリング期間の第１の復号ユニットではない復号ユニットｍの名目上の除去時刻ｔｒ，ｎ（ｍ）は、ｔｒ，ｎ（ｍ）＝ｔｒ，ｎ（ｍｂ）＋Ｔｃ＊ＣｐｂＲｅｍｏｖａｌＤｅｌａｙ（ｍ）によって示され、ｔｒ，ｎ（ｍｂ）は、現在のバッファリング期間の第１の復号ユニットの名目上の除去時刻である。
【０１２４】
復号ユニットｍの除去時刻は、次のように指定される。変数ＣｌｏｃｋＤｉｆｆがＣｌｏｃｋＤｉｆｆ＝（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ−（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ＊（ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１））／ｔｉｍｅ＿ｓｃａｌｅ）として定義される。いくつかのケースでは、ビットストリーム適合性の要件は、次の数式が満たされるようにパラメータｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ、ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１がシグナリングされることである。（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ−（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ＊（ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１）））≧０。
【０１２５】
いくつかの他のケースでは、ビットストリーム適合性の要件は、次の数式が満たされるようにパラメータｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ、ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１がシグナリングされることである。（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ−（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ＊（ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１）））≦０。ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが０に等しいか、またはｔｒ，ｎ（ｍ）≧ｔａｆ（ｍ）であれば、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）によって指定される。
【０１２６】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、ＣＰＢがサブピクチャ・レベルで動作しているときには、ＣｌｏｃｋＤｉｆｆがゼロより大きければ、アクセスユニットｎの最後の復号ユニットであるときの復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋Ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／Ｔｃ）＋ＣｌｏｃｋＤｉｆｆによって指定される。
【０１２７】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、ＣＰＢがアクセスユニット・レベルで動作しているときには、ＣｌｏｃｋＤｉｆｆがゼロより小さければ、アクセスユニットｎの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ）−ＣｌｏｃｋＤｉｆｆによって指定される。
【０１２８】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋Ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／Ｔｃ）によって指定される。後の方の（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）ケースは、復号ユニットｍのサイズｂ（ｍ）が大き過ぎて、名目上の除去時刻における除去を妨げることを示す。
【０１２９】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときには、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｍｉｎ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１３０】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときには、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｍｉｎ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１３１】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作していれば、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＊Ｃｅｉｌ（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１３２】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセス・レベルで動作していれば、アクセスユニットｎの除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１３３】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作していれば、アクセスユニットの最後の復号ユニットではない復号ユニットに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。さらに、アクセスユニットの最後の復号ユニットｍの除去時刻は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ））に従って設定され、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける最後の復号ユニットｍの最終到着時刻である。
【０１３４】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作していれば、アクセスユニットの最後の復号ユニットではない復号ユニットに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。さらに、アクセスユニットの最後の復号ユニットｍの除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ））に従って設定され、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける最後の復号ユニットｍの最終到着時刻である。
【０１３５】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作していれば、復号ユニットに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ここでｔｒ，ｎ（ｍ）は、復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、復号ユニットｍの最終除去時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける復号ユニットｍの最終到着時刻である。
【０１３６】
そうでない（ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇが１に等しく、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）である）場合に、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作していれば、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔａｆ（ｎ）に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１３７】
ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しいときに、アクセスユニットｎの名目上のＣＰＢ除去時刻ｔｒ，ｎ（ｎ）は、アクセスユニットｎにおける最後の復号ユニットの名目上のＣＰＢ除去時刻に設定され、アクセスユニットｎのＣＰＢ除去時刻ｔｒ（ｎ）は、アクセスユニットｎにおける最後の復号ユニットのＣＰＢ除去時刻に設定される。
【０１３８】
ＳｕｂＰｉｃＣｐｂＦｌａｇが０に等しいときには、各復号ユニットがアクセスユニットであり、従って、アクセスユニットｎの名目上のＣＰＢ除去時刻およびＣＰＢ除去時刻は、復号ユニットｎの名目上のＣＰＢ除去時刻およびＣＰＢ除去時刻である。復号ユニットｍのＣＰＢ除去時刻には、その復号ユニットが直ちに復号される。
【０１３９】
先に示されたように、本明細書に開示されるシステムおよび方法は、サブピクチャ・ベースのパラメータを運ぶピクチャタイミングＳＥＩメッセージのビットストリームを修正するシンタックスおよびセマンティクスを提供する。いくつかの構成において、本明細書に開示されるシステムおよび方法は、ＨＥＶＣ仕様に適用されてもよい。
【０１４０】
便宜上、本明細書に開示されるシステムおよび方法に適用されるいくつかの定義が次のように示される。ランダムアクセスポイントは、ビットストリームを復号するステップが、出力順に現在のピクチャおよび前記現在のピクチャに続くすべてのピクチャを復号するためにそのランダムアクセスポイントに先行するビットストリーム中のいかなるポイントへのアクセスも必要としない、データのストリーム（例えば、ビットストリーム）における任意のポイントである。
【０１４１】
バッファリング期間は、復号順にバッファリング期間ＳＥＩメッセージの２つのインスタンス間のアクセスユニットの集合として指定される。付加拡張情報（ＳＥＩ）は、ＶＣＬ  ＮＡＬユニットから符号化ピクチャのサンプルを復号するためには必須でない情報を含む。ＳＥＩメッセージは、復号、表示または他の目的に関係する手順を補助する。適合デコーダは、出力順をＨＥＶＣ仕様に適合させるためにこの情報の処理を必要としない（例えば、ＨＥＶＣ仕様（ＪＣＴＶＣ−Ｉ１００３）の付属書Ｃが適合に関する仕様を含む）。いくつかのＳＥＩメッセージ情報は、ビットストリーム適合性をチェックして、デコーダの出力タイミングを適合させるために用いられる。
【０１４２】
バッファリング期間ＳＥＩメッセージは、バッファリング期間に関係するＳＥＩメッセージである。ピクチャタイミングＳＥＩメッセージは、ＣＰＢ除去タイミングに関係するＳＥＩメッセージである。これらのメッセージは、ビットストリーム到着タイミングおよび符号化ピクチャ除去タイミングを規定するシンタックスおよびセマンティクスを定義する。
【０１４３】
符号化ピクチャバッファ（ＣＰＢ）は、仮想参照デコーダ（ＨＲＤ）において指定された復号順にアクセスユニットを含んだ先入れ先出しバッファである。アクセスユニットは、復号順に連続したネットワークアクセス層（ＮＡＬ）ユニットの集合であり、１つだけの符号化ピクチャを含む。符号化ピクチャの符号化スライスＮＡＬユニットに加えて、アクセスユニットは、符号化ピクチャのスライスを含まない他のＮＡＬユニットも含む。アクセスユニットの復号は、常に復号ピクチャをもたらす。ＮＡＬユニットは、従うべきデータ・タイプの指標と、必要に応じてエミュレーション防止バイトが点在したロー・バイト・シーケンス・ペイロード形式のそのデータとを含んだシンタックス構造である。
【０１４４】
本明細書では、用語「共通」は、一般に１つ以上のものに適用可能なシンタックス要素または変数を指す。例えば、ピクチャタイミングＳＥＩメッセージにおけるシンタックス要素のコンテキストでは、用語「共通」は、シンタックス要素（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）がピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおけるすべての復号ユニットに適用可能であることを意味する。加えて、データのユニットは、「ｎ」および「ｍ」で記載され、一般にそれぞれアクセスユニットおよび復号ユニットを指す。
【０１４５】
次に、図面を参照して様々な構成が記載される。図面中、同様の参照番号は、機能的に類似した要素を示す。本明細書において図面に一般的に記載され、示されるシステムおよび方法は、多種多様に異なった実装で配置され、設計されてもよい。従って、図面に表現されるいくつかの構成の以下のさらに詳細な記載は、特許請求の範囲を限定するものではなく、システムおよび方法を単に代表するに過ぎない。
【０１４６】
図１は、メッセージを送信し、ビットストリームをバッファリングにするためのシステムおよび方法が実装された１つ以上の電子デバイス１０２の例を示すブロック図である。この例では、電子デバイスＡ１０２ａおよび電子デバイスＢ１０２ｂが示される。しかしながら、留意すべきは、電子デバイスＡ１０２ａおよび電子デバイスＢ１０２ｂに関して記載される特徴および機能性の１つ以上がいくつかの構成では単一の電子デバイスに組み合わされてもよいことである。
【０１４７】
電子デバイスＡ１０２ａは、エンコーダ１０４を含む。エンコーダ１０４は、メッセージ生成モジュール１０８を含む。電子デバイスＡ１０２ａ内に含まれるそれぞれの要素（例えば、エンコーダ１０４およびメッセージ生成モジュール１０８）は、ハードウェア、ソフトウェアまたは両方の組み合わせで実装されてもよい。
【０１４８】
電子デバイスＡ１０２ａは、１つ以上の入力ピクチャ１０６を取得する。いくつかの構成において、入力ピクチャ（単数または複数）１０６は、イメージセンサを用いて電子デバイスＡ１０２ａ上に取り込まれてもよく、メモリから読み出されてもよく、および／または別の電子デバイスから受信されてもよい。
【０１４９】
エンコーダ１０４は、符号化データを作り出すために入力ピクチャ（単数または複数）１０６を符号化する。例えば、エンコーダ１０４は、一連の入力ピクチャ１０６（例えば、ビデオ）を符号化する。一構成において、エンコーダ１０４は、高効率ビデオ符号化（ＨＥＶＣ）エンコーダであってもよい。符号化データは、デジタルデータ（例えば、ビットストリーム１１４の一部）である。エンコーダ１０４は、入力信号に基づいてオーバーヘッド・シグナリングを生成する。
【０１５０】
メッセージ生成モジュール１０８は、１つ以上のメッセージを生成する。例えば、メッセージ生成モジュール１０８は、１つ以上のＳＥＩメッセージまたは他のメッセージを生成する。サブピクチャ・レベルの動作をサポートするＣＰＢに対して、電子デバイス１０２は、サブピクチャ・パラメータ（例えば、ＣＰＢ除去遅延パラメータ）を送信する。特に、電子デバイス１０２（例えば、エンコーダ１０４）は、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきかどうかを確定する。例えば、電子デバイスは、エンコーダ１０４が共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）をピクチャタイミングＳＥＩメッセージに含んでいるときには、フラグ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇ）を１に設定する。共通復号ユニットＣＰＢ除去遅延パラメータが含まれるときに、電子デバイスは、アクセスユニットにおけるすべての復号ユニットに適用可能な、共通復号ユニットＣＰＢ除去遅延パラメータを生成する。言い換えれば、復号ユニットＣＰＢ除去遅延パラメータをアクセスユニットにおける復号ユニットごとに含むのではなく、ピクチャタイミングＳＥＩメッセージが関連付けられたアクセスユニットにおけるすべての復号ユニットに共通パラメータが適用される。
【０１５１】
対照的に、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきでないときには、電子デバイス１０２は、ピクチャタイミングＳＥＩメッセージが関連付けられたアクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延を生成する。メッセージ生成モジュール１０８は、下の図２および図３に関連して記載された手順の１つ以上を行う。
【０１５２】
いくつかの構成において、電子デバイスＡ１０２ａは、ビットストリーム１１４の一部としてメッセージを電子デバイスＢ１０２ｂへ送信する。いくつかの構成において、電子デバイスＡ１０２ａは、別の送信１１０によってメッセージを電子デバイスＢ１０２ｂへ送信する。例えば、別の送信は、ビットストリーム１１４の一部でなくてもよい。例として、ピクチャタイミングＳＥＩメッセージまたは他のメッセージは、何らかの帯域外メカニズムを用いて送信されてもよい。いくつかの構成において、他のメッセージが上記のピクチャタイミングＳＥＩメッセージの特徴の１つ以上を含みうることに留意すべきである。そのうえ、１つ以上の態様において他のメッセージが上記のＳＥＩメッセージと同様に利用されてもよい。
【０１５３】
エンコーダ１０４（および、例えばメッセージ生成モジュール１０８）は、ビットストリーム１１４を作り出す。ビットストリーム１１４は、入力ピクチャ（単数または複数）１０６に基づく符号化ピクチャ・データを含む。いくつかの構成において、ビットストリーム１１４は、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ、スライスヘッダ（単数または複数）、ピクチャパラメータセット（単数または複数）（ＰＰＳ：Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ（単数または複数））などのような、オーバーヘッド・データも含む。追加の入力ピクチャ１０６が符号化されたときに、ビットストリーム１１４は、１つ以上の符号化ピクチャを含む。例として、ビットストリーム１１４は、対応するオーバーヘッド・データ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）をもつ１つ以上の符号化ピクチャを含む。
【０１５４】
ビットストリーム１１４は、デコーダ１１２へ供給される。一例において、ビットストリーム１１４は、有線または無線リンクを用いて電子デバイスＢ１０２ｂへ送信される。いくつかのケースでは、これは、インターネットまたはローカルエリアネットワーク（ＬＡＮ：Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）のようなネットワークを通じて行われる。図１に示されるように、デコーダ１１２は、電子デバイスＡ１０２ａ上のエンコーダ１０４から分離して電子デバイスＢ１０２ｂ上に実装されてもよい。しかしながら、留意すべきは、エンコーダ１０４およびデコーダ１１２がいくつかの構成では同じ電子デバイス上に実装されることである。例として、エンコーダ１０４およびデコーダ１１２が同じ電子デバイス上に実装される実装では、ビットストリーム１１４がバスを通じてデコーダ１１２へ供給されてもよく、またはデコーダ１１２による読み出しのためにメモリに記憶されてもよい。
【０１５５】
デコーダ１１２は、ハードウェア、ソフトウェアまたは両方の組み合わせで実装されてもよい。一構成において、デコーダ１１２は、ＨＥＶＣデコーダであってもよい。デコーダ１１２は、ビットストリーム１１４を受信する（例えば、取得する）。デコーダ１１２は、ビットストリーム１１４に基づいて１つ以上の復号ピクチャ１１８を生成する。復号ピクチャ（単数または複数）１１８は、表示される、再生される、メモリに記憶されるか、および／または別のデバイスへ送信されるなどである。
【０１５６】
デコーダ１１２は、ＣＰＢ１２０を含む。ＣＰＢ１２０は、符号化ピクチャを一時的に記憶する。ＣＰＢ１２０は、データをいつ除去すべきかを確定するために、ピクチャタイミングＳＥＩメッセージに見出されたパラメータを用いる。ＣＰＢ１２０がサブピクチャ・レベルの動作をサポートするときには、アクセスユニット全体を一度に除去するのではなく、個々の復号ユニットを除去することができる。
【０１５７】
デコーダ１１２は、メッセージ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）を受信する。デコーダ１１２は、また、受信したメッセージが共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）を含むかどうかを確定する。これは、ピクチャタイミングＳＥＩメッセージに共通パラメータが存在するときに設定されるフラグ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇ）を識別することを含む。共通パラメータが存在すれば、デコーダ１１２は、アクセスユニットにおけるすべての復号ユニットに適用可能な共通復号ユニットＣＰＢ除去遅延パラメータを確定する。共通パラメータが存在しなければ、デコーダ１１２は、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータを確定する。デコーダ１１２は、また、共通復号ユニットＣＰＢ除去遅延パラメータか、または個別の復号ユニットＣＰＢ除去遅延パラメータのいずれかを用いて復号ユニットをＣＰＢ１２０から除去する。ＣＰＢ１２０は、下の図４および図５に関連して記載された手順の１つ以上を行う。
【０１５８】
上記のＨＲＤは、図１に示されるデコーダ１１２の一例である。このように、電子デバイス１０２は、いくつかの構成において、上記のＨＲＤおよびＣＰＢ１２０に従って動作する。
【０１５９】
留意すべきは、電子デバイス（単数または複数）１０２に含まれる要素またはその部分の１つ以上がハードウェアで実装されてもよいことである。例えば、これらの要素またはその部分の１つ以上は、チップ、回路素子またはハードウェア部品などとして実装されてもよい。本明細書に記載される機能または方法の１つ以上は、ハードウェアで実装されてもよく、および／またはハードウェアを用いて行われてもよいことにも留意すべきである。例えば、本明細書に記載される方法の１つ以上は、チップセット、特定用途向け集積回路（ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ−Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、大規模集積回路（ＬＳＩ：Ｌａｒｇｅ−Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）または集積回路などで実装されてもよく、および／またはそれらを用いて実現されてもよい。
【０１６０】
図２は、メッセージを送信するための方法２００の一構成を示すフロー図である。方法２００は、エンコーダ１０４またはその１つのサブパーツ（例えば、メッセージ生成モジュール１０８）によって行われる。エンコーダ１０４は、ＣＰＢ１２０がサブピクチャ・レベルの動作をサポートするかどうかを示すピクチャタイミング・フラグ（例えば、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ）を確定する（ステップ２０２）。例えば、ピクチャタイミング・フラグが１に設定されているときに、ＣＰＢ１２０は、アクセスユニット・レベルまたはサブピクチャ・レベルで動作する。ピクチャタイミング・フラグが１に設定されているときでも、実際にサブピクチャ・レベルで動作すべきかどうかの決定は、デコーダ１１２自体に委ねられることに留意すべきである。
【０１６１】
エンコーダ１０４は、アクセスユニットにおける復号ユニットに関して１つ以上の除去遅延も確定する（ステップ２０４）。例えば、エンコーダ１０４は、ＣＰＢ１２０からのアクセスユニットにおけるすべての復号ユニットに適用可能な単一の共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）を確定する。代わりに、エンコーダ１０４は、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延（例えば、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）を確定する。
【０１６２】
エンコーダ１０４は、アクセスユニットにおける各復号ユニットのＮＡＬユニットの量から１を差し引いた値を示す、１つ以上のＮＡＬパラメータも確定する（ステップ２０６）。例えば、エンコーダ１０４は、ＣＰＢ１２０からのアクセスユニットにおけるすべての復号ユニットに適用可能な単一の共通ＮＡＬパラメータ（例えば、ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１）を確定する。代わりに、エンコーダ１０４は、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延（例えば、ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１［ｉ］）を確定する。
【０１６３】
エンコーダ１０４は、また、ピクチャタイミング・フラグ、除去遅延およびＮＡＬパラメータを含むピクチャタイミングＳＥＩメッセージを送信する（ステップ２０８）。ピクチャタイミングＳＥＩメッセージは、他のパラメータ（例えば、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ、ｄｐｂ＿ｏｕｔｐｕｔ＿ｄｅｌａｙなど）も含む。例えば、電子デバイス１０２は、無線伝送、有線伝送、デバイスバス、ネットワークなどの１つ以上を通じてメッセージを送信する。例として、電子デバイスＡ１０２ａは、メッセージをデバイスＢ１０２ｂへ送信する。メッセージは、例えば、ビットストリーム１１４の一部であってもよい。いくつかの構成において、電子デバイスＡ１０２ａは、（ビットストリーム１１４の一部ではない）別の送信１１０でメッセージをデバイスＢ１０２ｂへ送る（ステップ２０８）。例として、メッセージは、何らかの帯域外メカニズムを用いて送信されてもよい。いくつかのケースでは、ステップ２０４、２０６に示される情報は、ピクチャタイミングＳＥＩメッセージとは異なるＳＥＩメッセージで送信される。さらに別のケースでは、ステップ２０４、２０６に示される情報は、パラメータセット、例えば、ビデオパラメータセットおよび／またはシーケンスパラメータセットおよび／またはピクチャパラメータセットおよび／または適応パラメータセットおよび／またはスライスヘッダで送信される。
【０１６４】
図３は、アクセスユニットにおける復号ユニットに関して１つ以上の除去遅延を確定するための方法３００の一構成を示すフロー図である。言い換えれば、図３に示される方法３００は、図２に示される方法２００におけるステップ２０４をさらに説明する。方法３００は、エンコーダ１０４によって行われる。エンコーダ１０４は、共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）を含めるべきかどうかを確定する（ステップ３０２）。これは、共通復号ユニットＣＰＢ除去遅延フラグ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇ）が設定されているかどうかを確定するステップを含む。エンコーダ１０４は、復号ユニットが一定の間隔でＣＰＢから除去される場合に、この共通パラメータを送信する。例えば、各復号ユニットがピクチャの一定数の行に対応するか、または他のなんらかの規則的な構造を有するときにこれが当て嵌まる。
【０１６５】
例えば、共通復号ユニットＣＰＢ除去遅延フラグは、共通復号ユニットＣＰＢ除去遅延パラメータをピクチャタイミングＳＥＩメッセージに含めるべきときに、１に設定され、それを含めるべきでないときには０に設定される。ｙｅｓであれば（例えば、フラグが１に設定されていれば）、エンコーダ１０４は、アクセスユニットにおけるすべての復号ユニットに適用可能な共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）を確定する（ステップ３０４）。ｎｏであれば（例えば、フラグが０に設定されていれば）、エンコーダ１０４は、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）を確定する（ステップ３０６）。
【０１６６】
共通復号ユニットＣＰＢ除去遅延パラメータがピクチャタイミングＳＥＩメッセージ中に存在すれば、これは、直前の復号ユニットのＣＰＢ１２０からの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける現在の復号ユニットをＣＰＢ１２０から除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【０１６７】
例えば、復号ユニットがアクセスユニットにおける第１の復号ユニットであるときに、共通復号ユニットＣＰＢ１２０除去遅延パラメータは、先行アクセスユニットにおいて最新のバッファリング期間ＳＥＩメッセージと関連付けられたアクセスユニットにおける最後の復号ユニットのＣＰＢ１２０からの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける第１の復号ユニットをＣＰＢ１２０から除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【０１６８】
復号ユニットがアクセスユニットにおける第１ではない復号ユニットであるときには、共通復号ユニットＣＰＢ除去遅延パラメータは、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける先行復号ユニットのＣＰＢ１２０からの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおける現在の復号ユニットをＣＰＢから除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。
【０１６９】
対照的に、共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）がピクチャタイミングＳＥＩメッセージで送信されないときには、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）がピクチャタイミングＳＥＩメッセージに含められる。復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）は、最後の復号ユニットのＣＰＢ１２０からの除去後に、ピクチャタイミングＳＥＩメッセージと関連付けられたアクセスユニットにおけるｉ番目の復号ユニットをＣＰＢ１２０から除去する前に、待機すべきサブピクチャ・クロックティックの量を指定する。復号ユニットＣＰＢ除去遅延パラメータは、ｍｏｄｕｌｏ  ２（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１）カウンタの剰余に従って算出され、ここでｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｌｅｎｇｔｈ＿ｍｉｎｕｓ１＋１は、共通復号ユニットＣＰＢ除去遅延パラメータの長さである。
【０１７０】
図４は、ビットストリームをバッファリングにするための方法４００の一構成を示すフロー図である。方法４００は、メッセージ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）を受信する（ステップ４０２）。電子デバイス１０２（例えば、電子デバイスＢ１０２ｂ）におけるデコーダ１１２によって行われる。例えば、電子デバイス１０２は、無線伝送、有線伝送、デバイスバス、ネットワークなどの１つ以上を通じてメッセージを受信する（ステップ４０２）。例として、電子デバイスＢ１０２ｂは、メッセージを電気デバイスＡ１０２ａから受信する（ステップ４０２）。メッセージは、例えば、ビットストリーム１１４の一部であってもよい。別の例では、電子デバイスＢ１０２ｂは、（例えば、ビットストリーム１１４の一部ではない）別の送信１１０でメッセージをデバイスＡ１０２ａから受信する。例として、ピクチャタイミングＳＥＩメッセージは、何らかの帯域外メカニズムを用いて受信されてもよい。いくつかの構成において、メッセージは、ピクチャタイミング・フラグ、アクセスユニットにおける復号ユニットに関する１つ以上の除去遅延、および１つ以上のＮＡＬパラメータのうちの１つ以上を含む。メッセージを受信するステップ４０２は、ピクチャタイミング・フラグ、アクセスユニットにおける復号ユニットに関する１つ以上の除去遅延、および１つ以上のＮＡＬパラメータのうちの１つ以上を受信することを含む。
【０１７１】
デコーダ１１２は、ＣＰＢ１２０がアクセスユニット・レベルまたはサブピクチャ・レベルで動作するかどうかを確定する（ステップ４０４）。例えば、デコーダ１１２は、低レイテンシーを達成したければ、サブピクチャ・ベースで動作することを決定する。あるいは、決定は、デコーダ１１２がサブピクチャ・ベースの動作をサポートするのに十分なリソースを有するかどうかに基づく。ＣＰＢ１２０がサブピクチャ・レベルで動作する場合、デコーダは、アクセスユニットにおける復号ユニットに関して１つ以上の除去遅延を確定する（ステップ４０６）。例えば、デコーダ１１２は、アクセスユニットにおけるすべての復号ユニットに適用可能な単一の共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）を確定する。あるいは、デコーダ１１２は、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延（例えば、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）を確定する。言い換えれば、ピクチャタイミングＳＥＩメッセージは、アクセスユニットにおけるすべての復号ユニットに適用可能な共通パラメータか、または復号ユニットごとに個別のパラメータを含む。
【０１７２】
デコーダ１１２は、また、復号ユニットに関するＣＰＢ除去遅延に基づいて、すなわち、アクセスユニットにおけるすべての復号ユニットに適用可能な共通パラメータか、または復号ユニットごとに個別のパラメータのいずれかを用いて、復号ユニットを除去する（ステップ４０８）。デコーダ１１２は、また、復号ユニットを復号する（ステップ４１０）。
【０１７３】
デコーダ１１２は、シグナリングされた様々なパラメータから確定されるための除去時刻を確定するときに、変数ＣｌｏｃｋＤｉｆｆを用いる。特に、ＣｌｏｃｋＤｉｆｆは、ＣｌｏｃｋＤｉｆｆ＝（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋ−（ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋ＊（ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１））／ｔｉｍｅ＿ｓｃａｌｅ）に従って確定され、ここでｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｔｉｃｋは、クロックティック・カウンタのインクリメント１に対応する、周波数ｔｉｍｅ＿ｓｃａｌｅ  Ｈｚで動作しているクロックの時間単位の数であり、ｎｕｍ＿ｕｎｉｔｓ＿ｉｎ＿ｓｕｂ＿ｔｉｃｋは、サブピクチャ・クロックティック・カウンタのインクリメント１に対応する、周波数ｔｉｍｅ＿ｓｃａｌｅ  Ｈｚで動作しているクロックの時間単位の数であり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１＋１は、アクセスユニットにおける復号ユニットの量であり、ｔｉｍｅ＿ｓｃａｌｅは、１秒間に経過する時間単位の数である。
【０１７４】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しており、ＣｌｏｃｋＤｉｆｆがゼロより大きいときに、復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）＋ＣｌｏｃｋＤｉｆｆに従って確定され、ここでｔｒ，ｎ（ｍ）は、復号ユニットｍの名目上の除去時間であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。
【０１７５】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しており、ＣｌｏｃｋＤｉｆｆがゼロより大きいときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）−ＣｌｏｃｋＤｉｆｆに従って確定され、ここでｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１７６】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットにおける最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｍａｘ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１７７】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｍａｘ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１７８】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットｍに関する除去時間ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋ｍｉｎ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１７９】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋ｍｉｎ（（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ）），（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ）））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１８０】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂはサブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１８１】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時刻ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔｒ，ｎ（ｎ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｎ）−ｔｒ，ｎ（ｎ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂはサブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１８２】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットではない復号ユニットに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。さらに、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＿ｓｕｂ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ＿ｓｕｂ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける最後の復号ユニットの最終除去時刻である。
【０１８３】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、アクセスユニットの最後の復号ユニットではない復号ユニットに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻である。さらに、アクセスユニットの最後の復号ユニットｍに関する除去時刻ｔｒ（ｍ）は、ｔｒ（ｍ）＝ｔｒ，ｎ（ｍ）＋（ｔｃ＊Ｃｅｉｌ（（ｔａｆ（ｍ）−ｔｒ，ｎ（ｍ））／ｔｃ））に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける最後の復号ユニットの最終到着時刻である。
【０１８４】
低遅延仮想参照デコーダ（ＨＲＤ）フラグ（例えば、ｌｏｗ＿ｄｅｌａｙ＿ｈｒｄ＿ｆｌａｇ）が１に設定され、ｔｒ，ｎ（ｍ）＜ｔａｆ（ｍ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがサブピクチャ・レベルで動作しているときに、復号ユニットに関する除去時刻は、ｔｒ（ｍ）＝ｔａｆ（ｍ）として設定され、ここでｔｒ，ｎ（ｍ）は、復号ユニットｍの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻であり、ｔａｆ（ｍ）は、アクセスユニットｎにおける復号ユニットの最終到着時刻である。
【０１８５】
低遅延仮想参照デコーダ（ＨＲＤ）フラグが１に設定され、ｔｒ，ｎ（ｎ）＜ｔａｆ（ｎ）であり、ピクチャタイミング・フラグが１に設定され、ＣＰＢがアクセスユニット・レベルで動作しているときに、アクセスユニットｎに関する除去時間ｔｒ（ｎ）は、ｔｒ（ｎ）＝ｔａｆ（ｎ）に従い、ここでｔｒ，ｎ（ｍ）は、最後の復号ユニットｎの名目上の除去時刻であり、ｔｃ＿ｓｕｂは、サブピクチャ・クロックティックであり、Ｃｅｉｌ（）は、天井関数であり、ｔａｆ（ｍ）は、最後の復号ユニットｍの最終到着時刻であり、ｔｒ，ｎ（ｎ）は、アクセスユニットｎの名目上の除去時刻であり、ｔｃは、クロックティックであり、ｔａｆ（ｎ）は、アクセスユニットｎの最終到着時刻である。
【０１８６】
ＣＰＢがアクセスユニット・レベルで動作する場合、デコーダ１１２は、ＣＰＢ除去遅延パラメータを確定する（ステップ４１２）。このパラメータは、受信したピクチャタイミングＳＥＩメッセージ（例えば、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）に含まれる。デコーダ１１２は、また、ＣＰＢ除去遅延パラメータに基づいてアクセスユニットを除去し（ステップ４１４）、そのアクセスユニットを復号する（ステップ４１６）。言い換えれば、デコーダ１１２は、アクセスユニット内の復号ユニットではなく、アクセスユニット全体を一度に復号する。
【０１８７】
図５は、アクセスユニットにおける復号ユニットに関して１つ以上の除去遅延を確定するための方法５００の一構成を示すフロー図である。言い換えれば、図５に示される方法５００は、図４に示される方法４００におけるステップ４０６をさらに説明する。方法５００は、デコーダ１１２によって行われる。デコーダ１１２は、受信したピクチャタイミングＳＥＩメッセージが共通復号ユニットＣＰＢ除去遅延パラメータを含むかどうかを確定する（ステップ５０２）。これは、共通復号ユニットＣＰＢ除去遅延フラグ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｆｌａｇ）が設定されているかどうかを確定するステップを含む。ｙｅｓであれば、デコーダ１１２は、アクセスユニットにおけるすべての復号ユニットに適用可能な共通復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ）を確定する（ステップ５０４）。ｎｏであれば、デコーダ１１２は、アクセスユニットにおける復号ユニットごとに個別の復号ユニットＣＰＢ除去遅延パラメータ（例えば、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）を確定する（ステップ５０６）。
【０１８８】
ピクチャタイミングＳＥＩメッセージのセマンティクスの修正に加えて、本システムおよび方法は、また、サブピクチャ・ベースのＣＰＢ動作およびアクセスユニット・ベースのＣＰＢ動作が復号ユニット除去の同じタイミングをもたらすように、ビットストリーム制約条件を課する。具体的には、ピクチャタイミング・フラグ（例えば、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ）が１に設定されているときに、ＣＰＢ除去遅延は、
【０１８９】
【数６】
0006552197.tif 000011
【０１９０】
に従って設定され、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値であり、ｉは、インデックスである。
【０１９１】
あるいは、ＣＰＢ除去遅延は、次に記載されるように設定される。すなわち、変数Ｔｄｕ（ｋ）を
【０１９２】
【数７】
0006552197.tif 000012
【０１９３】
として定義するものとし、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１ｋ［ｉ］およびｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１ｋは、ｋ番目のアクセスユニットのｉ番目の復号ユニットに関するパラメータであり（ＨＲＤを初期化したアクセスユニットに対してｋ＝０、およびｋ＜１ではＴｄｕ（ｋ）＝０）、ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１ｋ［ｉ］＋１＝ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙｋ［ｉ］は、ｋ番目のアクセスユニットのi番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１ｋは、ｋ番目のアクセスユニットの復号ユニットの数であり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｉおよびｋは、インデックスである。次に、ピクチャタイミング・フラグ（例えば、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ）が１に設定されているときには、次に条件が真であるとものする。すなわち、（ａｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１＋１）＊ｔｃ＝＝Ｔｄｕ（ｋ）、ここで（ａｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１＋１）＝ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ、ＣＰＢ除去遅延である。従って、この場合、ＣＰＢ除去遅延（ａｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｍｉｎｕｓ１＋１）は、サブピクチャ・ベースのＣＰＢ動作およびアクセスユニット・ベースのＣＰＢ動作が、アクセスユニット除去およびアクセスユニットの最後の復号ユニット除去の同じタイミングをもたらすように設定される。
【０１９４】
代わりに、ＣＰＢ除去遅延は、
【０１９５】
【数８】
0006552197.tif 000013
【０１９６】
に従って設定されてもよく、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］は、復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値であり、ｉは、インデックスである。
【０１９７】
あるいは、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙおよびｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］は、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＊ｔｃ＝ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］＊ｔｃ，ｓｕｂに従って設定されてもよく、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］は、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値である。
【０１９８】
ピクチャタイミングＳＥＩメッセージのシンタックスの修正に加えて、本システムおよび方法は、また、サブピクチャ・ベースのＣＰＢ動作およびアクセスユニット・レベルのＣＰＢ動作が復号ユニット除去の同じタイミングをもたらすように、ビットストリーム制約条件を課す。具体的には、ピクチャタイミング・フラグ（例えば、ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ）が１に設定されているときに、ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙおよびｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｕｎｓ１］に関する値は、−１≦（ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＊ｔｃ−ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］＊ｔｃ，ｓｕｂ）≦１を満たすように設定され、ここでｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１］は、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１番目の復号ユニットに関する復号ユニットＣＰＢ除去遅延パラメータであり、ｔｃは、クロックティックであり、ｔｃ，ｓｕｂは、サブピクチャ・クロックティックであり、ｎｕｍ＿ｄｅｃｏｄｉｎｇ＿ｕｎｉｔｓ＿ｍｉｎｕｓ１は、アクセスユニットにおける復号ユニットの量から１を差し引いた値である。
【０１９９】
図６は、電子デバイス６０２上のエンコーダ６０４の一構成を示すブロック図である。留意すべきは、電子デバイス６０２内に含まれるように示される要素の１つ以上がハードウェア、ソフトウェアまたは両方の組み合わせで実装されてもよいことである。例えば、電子デバイス６０２は、ハードウェア、ソフトウェアまたは両方の組み合わせで実装されてもよいエンコーダ６０４を含む。例として、エンコーダ６０４は、回路、集積回路、特定用途向け集積回路（ＡＳＩＣ）、実行可能な命令をもつメモリと電子通信を行うプロセッサ、ファームウェア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ：ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）など、またはそれらの組み合わせとして実装されてもよい。いくつかの構成において、エンコーダ６０４は、ＨＥＶＣコーダであってもよい。
【０２００】
電子デバイス６０２は、ソース６２２を含む。ソース６２２は、ピクチャ、または１つ以上の入力ピクチャ６０６としての画像データ（例えば、ビデオ）をエンコーダ６０４へ供給する。ソース６２２の例は、イメージセンサ、メモリ、通信インターフェース、ネットワークインターフェース、無線受信機、ポートなどを含む。
【０２０１】
１つ以上の入力ピクチャ６０６は、フレーム内予測モジュールおよび再構成バッファ６２４へ供給される。入力ピクチャ６０６は、また、動き推定および動き補償モジュール６４６へ、そして減算モジュール６２８へ供給される。
【０２０２】
フレーム内予測モジュールおよび再構成バッファ６２４は、１つ以上の入力ピクチャ６０６および再構成データ６６０に基づいて、イントラモード情報６４０およびイントラ信号６２６を生成する。動き推定および動き補償モジュール６４６は、１つ以上の入力ピクチャ６０６および参照ピクチャバッファ６７６信号６７８に基づいて、インターモード情報６４８およびインター信号６４４を生成する。いくつかの構成において、参照ピクチャバッファ６７６は、１つ以上の参照ピクチャからのデータを参照ピクチャバッファ６７６に含む。
【０２０３】
エンコーダ６０４は、モードに従ってイントラ信号６２６とインター信号６４４との間で選択を行う。イントラ信号６２６は、イントラ符号化モードでピクチャ内の空間的特性を活用するために用いられる。インター信号６４４は、インター符号化モードでピクチャ間の時間的特性を活用するために用いられる。イントラ符号化モードにある間に、イントラ信号６２６が減算モジュール６２８へ供給され、イントラモード情報６４０がエントロピー符号化モジュール６４２へ供給される。インター符号化モードにある間には、インター信号６４４が減算モジュール６２８へ供給され、インターモード情報６４８がエントロピー符号化モジュール６４２へ供給される。
【０２０４】
減算モジュール６２８では、予測残差６３０を作り出すために、（モードに依存して）イントラ信号６２６またはインター信号６４４のいずれかが入力ピクチャ６０６から減算される。予測残差６３０は、変換モジュール６３２へ供給される。変換モジュール６３２は、量子化モジュール６３６へ供給される変換信号６３４を作り出すために予測残差６３０を圧縮する。量子化モジュール６３６は、変換および量子化された係数（ＴＱＣ：ｔｒａｎｓｆｏｒｍｅｄ  ａｎｄ  ｑｕａｎｔｉｚｅｄ  ｃｏｅｆｆｉｃｉｅｎｔ）６３８を作り出すために変換信号６３４を量子化する。
【０２０５】
ＴＱＣ６３８は、エントロピー符号化モジュール６４２および逆量子化モジュール６５０へ供給される。逆量子化モジュール６５０は、逆変換モジュール６５４へ供給される逆量子化された信号６５２を作り出すためにＴＱＣ６３８の逆量子化を行う。逆変換モジュール６５４は、再構成モジュール６５８へ供給される展開された信号６５６を作り出すために逆量子化された信号６５２を展開する。
【０２０６】
再構成モジュール６５８は、展開された信号６５６に基づいて再構成されたデータ６６０を作り出す。例えば、再構成モジュール６５８は、ピクチャを再構成（修正）する。再構成されたデータ６６０は、デブロッキングフィルタ６６２へ、ならびにイントラ予測モジュールおよび再構成バッファ６２４へ供給される。デブロッキングフィルタ６６２は、再構成されたデータ６６０に基づいてフィルタされた信号６６４を作り出す。
【０２０７】
フィルタされた信号６６４は、サンプル適応オフセット（ＳＡＯ：ｓａｍｐｌｅ  ａｄａｐｔｉｖｅ  ｏｆｆｓｅｔ）モジュール６６６へ供給される。ＳＡＯモジュール６６６は、エントロピー符号化モジュール６４２へ供給されるＳＡＯ情報６６８、および適応ループフィルタ（ＡＬＦ：ａｄａｐｔｉｖｅ  ｌｏｏｐ  ｆｉｌｔｅｒ）６７２へ供給されるＳＡＯ信号６７０を作り出す。ＡＬＦ６７２は、参照ピクチャバッファ６７６へ供給されるＡＬＦ信号６７４を作り出す。ＡＬＦ信号６７４は、参照ピクチャとして用いられる１つ以上のピクチャからのデータを含む。
【０２０８】
エントロピー符号化モジュール６４２は、ビットストリームＡ６１４ａ（例えば、符号化ピクチャ・データ）を作り出すためにＴＱＣ６３８を符号化する。例えば、エントロピー符号化モジュール６４２は、コンテキスト適応型可変長符号化（ＣＡＶＬＣ：Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）またはコンテキスト適応型２値算術符号化（ＣＡＢＡＣ：Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）を用いてＴＱＣ６３８を符号化する。特に、エントロピー符号化モジュール６４２は、イントラモード情報６４０、インターモード情報６４８およびＳＡＯ情報６６８のうちの１つ以上に基づいてＴＱＣ６３８を符号化する。ビットストリームＡ６１４ａ（例えば、符号化ピクチャ・データ）は、メッセージ生成モジュール６０８へ供給される。メッセージ生成モジュール６０８は、図１に関連して記載されたメッセージ生成モジュール１０８と同様に構成される。加えて、または代わりに、メッセージ生成モジュール６０８は、図２および図３に関連して記載された手順の１つ以上を行う。
【０２０９】
例えば、メッセージ生成モジュール６０８は、サブピクチャ・パラメータを含んだメッセージ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）を生成する。サブピクチャ・パラメータは、復号ユニットに関する１つ以上の除去遅延（例えば、ｃｏｍｍｏｎ＿ｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙまたはｄｕ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ｉ］）、および１つ以上のＮＡＬパラメータ（例えば、ｃｏｍｍｏｎ＿ｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１またはｎｕｍ＿ｎａｌｕｓ＿ｉｎ＿ｄｕ＿ｍｉｎｕｓ１［ｉ］）を含む。いくつかの構成では、ビットストリームＢ６１４ｂを作り出すために、メッセージがビットストリームＡ６１４ａに挿入される。従って、メッセージは、例えば、ビットストリームＡ６１４ａ全体が生成された後に（例えば、ビットストリームＢ６１４ｂの大部分が生成された後に）生成される。他の構成では、メッセージは、ビットストリームＡ６１４ａには挿入されない（その場合、ビットストリームＢ６１４ｂはビットストリームＡ６１４ａと同じである）が、別の送信６１０で供給される。
【０２１０】
いくつかの構成において、電子デバイス６０２は、ビットストリーム６１４を別の電子デバイスへ送信する。例えば、ビットストリーム６１４は、通信インターフェース、ネットワークインターフェース、無線送信機、ポートなどへ供給される。例として、ビットストリーム６１４は、ＬＡＮ、インターネット、セルラーフォン基地局などを通じて別の電子デバイスへ送信される。加えて、または代わりに、ビットストリーム６１４は、電子デバイス６０２上のメモリまたは他のコンポーネントに記憶されてもよい。
【０２１１】
図７は、電子デバイス７０２上のデコーダ７１２の一構成を示すブロック図である。デコーダ７１２は、電子デバイス７０２に含まれる。例えば、デコーダ７１２は、ＨＥＶＣデコーダであってもよい。デコーダ７１２、およびデコーダ７１２に含まれるように示される要素の１つ以上は、ハードウェア、ソフトウェアまたは両方の組み合わせで実装されてもよい。デコーダ７１２は、復号のためにビットストリーム７１４（例えば、ビットストリーム７１４に含まれた１つ以上の符号化ピクチャおよびオーバーヘッド・データ）を受信する。いくつかの構成では、受信したビットストリーム７１４は、受信したオーバーヘッド・データ、例えば、メッセージ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）、スライスヘッダ、ＰＰＳなどを含む。いくつかの構成では、デコーダ７１２は、追加的に別の送信７１０を受信する。別の送信７１０は、メッセージ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）を含みうる。例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージは、ビットストリーム７１４の代わりに別の送信７１０で受信されてもよい。しかしながら、別の送信７１０は、随意的であり、いくつかの構成では利用されないことに留意すべきである。
【０２１２】
デコーダ７１２は、ＣＰＢ７２０を含む。ＣＰＢ７２０は、上の図１に関連して記載されたＣＰＢ１２０と同様に構成される。加えて、または代わりに、デコーダ７１２は、図４および図５に関連して記載された手順の１つ以上を行う。例えば、デコーダ７１２は、サブピクチャ・パラメータをもつメッセージ（例えば、ピクチャタイミングＳＥＩメッセージまたは他のメッセージ）を受信し、サブピクチャ・パラメータに基づいてアクセスユニットにおける復号ユニットを除去して復号する。留意すべきは、ビットストリームには１つ以上のアクセスユニットが含まれ、これらのアクセスユニットが１つ以上の符号化ピクチャ・データおよびオーバーヘッド・データを含むことである。
【０２１３】
符号化ピクチャバッファ（ＣＰＢ）７２０は、符号化ピクチャ・データをエントロピー復号モジュール７０１へ供給する。符号化ピクチャ・データは、エントロピー復号モジュール７０１によりエントロピー復号され、それによって動き情報信号７０３ならびに量子化、スケーリングおよび／または変換された係数７０５が作り出される。
【０２１４】
動き情報信号７０３は、フレーム間予測信号７８２を作り出す動き補償モジュール７８０において、フレームメモリ７０９からの参照フレーム信号７９８の一部分と結合される。量子化、デスケーリングおよび／または変換された係数７０５は、逆モジュール７０７により逆量子化、スケーリングおよび逆変換され、それによって復号された残差信号７８４を作り出す。復号された残差信号７８４は、結合信号７８６を作り出すために予測信号７９２に加算される。予測信号７９２は、動き補償モジュール７８０によって作り出されたフレーム間予測信号７８２、またはフレーム内予測モジュール７８８によって作り出されたフレーム内予測信号７９０のいずれかから選択された信号である。いくつかの構成において、この信号選択は、ビットストリーム７１４に基づく（例えば、ビットストリーム７１４によって制御される）。
【０２１５】
フレーム内予測信号７９０は、（例えば、現フレームにおける）結合信号７８６から予め復号された情報から予測される。結合信号７８６は、また、デブロッキングフィルタ７９４によってフィルタされる。フィルタされて生じた信号７９６は、フレームメモリ７０９に書き込まれる。フィルタされて生じた信号７９６は、復号ピクチャを含む。フレームメモリ７０９は、復号ピクチャ７１８を供給する。いくつかのケースでは、７０９は、復号ピクチャバッファである。
【０２１６】
図８は、送信用電子デバイス８０２において利用される様々なコンポーネントを示す。本明細書に記載される電子デバイス１０２、６０２、７０２の１つ以上は、図８に示される送信用電子デバイス８０２に従って実装される。
【０２１７】
送信用電子デバイス８０２は、電子デバイス８０２の動作を制御するプロセッサ８１７を含む。プロセッサ８１７は、ＣＰＵとも呼ばれる。メモリ８１１は、リードオンリーメモリ（ＲＯＭ：ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ：ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）の両方または情報を記憶する任意のタイプのデバイスを含み、命令８１３ａ（例えば、実行可能な命令）およびデータ８１５ａをプロセッサ８１７へ供給する。メモリ８１１の一部分は、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ：ｎｏｎ−ｖｏｌａｔｉｌｅ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）も含んでよい。メモリ８１１は、プロセッサ８１７と電子通信を行う。
【０２１８】
命令８１３ｂおよびデータ８１５ｂは、プロセッサ８１７にも存在する。プロセッサ８１７に読み込まれた命令８１３ｂおよび／またはデータ８１５ｂは、プロセッサ８１７による実行または処理のために読み込まれた、メモリ８１１からの命令８１３ａおよび／またはデータ８１５ａも含んでよい。命令８１３ｂは、本明細書に開示されるシステムおよび方法を実装するためにプロセッサ８１７によって実行される。例えば、命令８１３ｂは、上記の方法２００、３００、４００、５００の１つ以上を行うために実行可能である。
【０２１９】
送信用電子デバイス８０２は、他の電子デバイス（例えば、受信用電子デバイス）との通信のための１つ以上の通信インターフェース８１９を含む。通信インターフェース８１９は、有線通信技術、無線通信技術、または両方に基づいてもよい。通信インターフェース８１９の例は、シリアルポート、パラレルポート、ユニバーサルシリアルバス（ＵＳＢ：Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、イーサネット（登録商標）アダプタ、ＩＥＥＥ１３９４バスインターフェース、小型計算機システムインターフェース（ＳＣＳＩ：ｓｍａｌｌ  ｃｏｍｐｕｔｅｒ  ｓｙｓｔｅｍ  ｉｎｔｅｒｆａｃｅ）バスインターフェース、赤外線（ＩＲ：ｉｎｆｒａｒｅｄ）通信ポート、Ｂｌｕｅｔｏｏｔｈ（登録商標）無線通信アダプタ、第３世代パートナーシップ・プロジェクト（３ＧＰＰ：３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ）仕様による無線トランシーバなどを含む。
【０２２０】
送信用電子デバイス８０２は、１つ以上の出力デバイス８２３および１つ以上の入力デバイス８２１を含む。出力デバイス８２３の例は、スピーカ、プリンタなどを含む。電子デバイス８０２に含まれる出力デバイスの１つのタイプは、表示デバイス８２５である。本明細書に開示される構成とともに用いられる表示デバイス８２５は、任意の適切な画像投影技術、例えば、陰極線管（ＣＲＴ：ｃａｔｈｏｄｅ  ｒａｙ  ｔｕｂｅ）、液晶表示（ＬＣＤ：ｌｉｑｕｉｄ  ｃｒｙｓｔａｌ  ｄｉｓｐｌａｙ）、発光ダイオード（ＬＥＤ：ｌｉｇｈｔ−ｅｍｉｔｔｉｎｇ  ｄｉｏｄｅ）、気体プラズマ、エレクトロルミネセンスなどを利用する。表示コントローラ８２７は、メモリ８１１に記憶されたデータをディスプレイ８２５上に示されるテキスト、グラフィックス、および／または動画に（適宜）変換するために提供される。入力デバイス８２１の例は、キーボード、マウス、マイクロフォン、リモートコントロールデバイス、ボタン、ジョイスティック、トラックボール、タッチパッド、タッチスクリーン、ライトペンなどを含む。
【０２２１】
送信用電子デバイス８０２の様々なコンポーネントは、データバスに加えて、電力バス、制御信号バスおよびステータス信号バスを含むバスシステム８２９によって結合される。しかしながら、明確にするために、図８では様々なバスがバスシステム８２９として示される。図８に示される送信用電子デバイス８０２は、具体的なコンポーネントのリスティングではなく、機能ブロック図である。
【０２２２】
図９は、受信用電子デバイス９０２において利用される様々なコンポーネントを示すブロック図である。本明細書に記載される電子デバイス１０２、６０２、７０２の１つ以上は、図９に示される受信用電子デバイス９０２に従って実装される。
【０２２３】
受信用電子デバイス９０２は、電子デバイス９０２の動作を制御するプロセッサ９１７を含む。プロセッサ９１７は、ＣＰＵとも呼ばれる。メモリ９１１は、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）の両方または情報を記憶する任意のタイプのデバイスを含み、命令９１３ａ（例えば、実行可能な命令）およびデータ９１５ａをプロセッサ９１７へ供給する。メモリ９１１の一部分は、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）も含んでよい。メモリ９１１は、プロセッサ９１７と電子通信を行う。
【０２２４】
命令９１３ｂおよびデータ９１５ｂは、プロセッサ９１７にも存在する。プロセッサ９１７に読み込まれた命令９１３ｂおよび／またはデータ９１５ｂは、プロセッサ９１７による実行または処理のために読み込まれた、メモリ９１１からの命令９１３ａおよび／またはデータ９１５ａも含んでよい。命令９１３ｂは、本明細書に開示されるシステムおよび方法を実装するためにプロセッサ９１７によって実行される。例えば、命令９１３ｂは、上記の方法２００、３００、４００、５００の１つ以上を行うために実行可能である。
【０２２５】
受信用電子デバイス９０２は、他の電子デバイス（例えば、送信用電子デバイス）との通信のための１つ以上の通信インターフェース９１９を含む。通信インターフェース９１９は、有線通信技術、無線通信技術、または両方に基づいてもよい。通信インターフェース９１９の例は、シリアルポート、パラレルポート、ユニバーサルシリアルバス（ＵＳＢ）、イーサネットアダプタ、ＩＥＥＥ１３９４バスインターフェース、小型計算機システムインターフェース（ＳＣＳＩ）バスインターフェース、赤外線（ＩＲ）通信ポート、Ｂｌｕｅｔｏｏｔｈ無線通信アダプタ、第３世代パートナーシップ・プロジェクト（３ＧＰＰ）仕様による無線トランシーバなどを含む。
【０２２６】
受信用電子デバイス９０２は、１つ以上の出力デバイス９２３および１つ以上の入力デバイス９２１を含む。出力デバイス９２３の例は、スピーカ、プリンタなどを含む。電子デバイス９０２に含まれる出力デバイスの１つのタイプは、表示デバイス９２５である。本明細書に開示される構成とともに用いられる表示デバイス９２５は、任意の適切な画像投影技術、例えば、陰極線管（ＣＲＴ）、液晶表示（ＬＣＤ）、発光ダイオード（ＬＥＤ）、気体プラズマ、エレクトロルミネセンスなどを利用する。表示コントローラ９２７は、メモリ９１１に記憶されたデータをディスプレイ９２５上に示されるテキスト、グラフィックス、および／または動画へ（適宜）変換するために提供される。入力デバイス９２１の例は、キーボード、マウス、マイクロフォン、リモートコントロールデバイス、ボタン、ジョイスティック、トラックボール、タッチパッド、タッチスクリーン、ライトペンなどを含む。
【０２２７】
受信用電子デバイス９０２の様々なコンポーネントは、データバスに加えて、電力バス、制御信号バスおよびステータス信号バスを含むバスシステム９２９によって結合される。しかしながら、明確にするために、図９では様々なバスがバスシステム９２９として示される。図９に示される受信用電子デバイス９０２は、具体的なコンポーネントのリスティングではなく、機能ブロック図である。
【０２２８】
図１０は、メッセージを送信するためのシステムおよび方法が実装された電子デバイス１００２の一構成を示すブロック図である。電子デバイス１００２は、符号化手段１０３１および送信手段１０３３を含む。符号化手段１０３１および送信手段１０３３は、上の図１、図２、図３、図６および図８の１つ以上に関連して記載された機能の１つ以上を行うように構成される。例えば、符号化手段１０３１および送信手段１０３３は、ビットストリーム１０１４を生成する。上の図８は、図１０の具体的な装置構造の一例を示す。図１、図２、図３、図６および図８の機能の１つ以上を実現するために、他の様々な構造が実装されてもよい。例えば、ＤＳＰがソフトウェアによって実現されてもよい。
【０２２９】
図１１は、ビットストリーム１１１４をバッファリングするためのシステムおよび方法が実装された電子デバイス１１０２の一構成を示すブロック図である。電子デバイス１１０２は、受信手段１１３５および復号手段１１３７を含む。受信手段１１３５および復号手段１１３７は、上の図１、図４、図５、図７および図９の１つ以上に関連して記載された機能のうちの１つ以上を行うように構成される。例えば、受信手段１１３５および復号手段１１３７は、ビットストリーム１１１４を受信する。上の図９は、図１１の具体的な装置構造の一例を示す。図１、図４、図５、図７および図９の１つ以上の機能を実現するために、他の様々な構造が実装されてもよい。例えば、ＤＳＰがソフトウェアによって実現されてもよい。
【０２３０】
用語「コンピュータ可読媒体」は、コンピュータまたはプロセッサによってアクセスできる任意の利用可能な媒体を指す。用語「コンピュータ可読媒体」は、本明細書では、非一時的かつ有形のコンピュータおよび／またはプロセッサ可読媒体を示す。限定ではなく、例として、コンピュータ可読またはプロセッサ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスク記憶、磁気ディスク記憶もしくは他の磁気記憶デバイス、あるいは命令の形態の所望のプログラムコードまたはデータ構造を運ぶか、または記憶するために用いることができ、コンピュータまたはプロセッサによってアクセスできる任意の他の媒体を備える。ディスク（ｄｉｓｋ）およびディスク（ｄｉｓｃ）は、本明細書では、コンパクトディスク（ＣＤ：ｃｏｍｐａｃｔ  ｄｉｓｃ）、レーザディスク（ｌａｓｅｒ  ｄｉｓｃ）、光ディスク（ｏｐｔｉｃａｌ  ｄｉｓｃ）、デジタルバーサタイルディスク（ＤＶＤ：ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｃ）、フロッピー（登録商標）ディスク（ｆｌｏｐｐｙ（登録商標）  ｄｉｓｋ）およびＢｌｕ−ｒａｙ（登録商標）ディスク（ｄｉｓｃ）を含み、ディスク（ｄｉｓｋ）は、通常、磁気的にデータを再生し、一方でディスク（ｄｉｓｃ）は、レーザを用いて光学的にデータを再生する。
【０２３１】
留意すべきは、本明細書に記載される方法の１つ以上がハードウェアで実装されてもよく、および／またはハードウェアを用いて行われてもよいことである。例えば、本明細書に記載される方法またはアプローチの１つ以上は、チップセット、ＡＳＩＣ、大規模集積回路（ＬＳＩ）または集積回路などで実装されてもよく、および／またはそれらを用いて実現されてもよい。
【０２３２】
本明細書に開示されるそれぞれの方法は、記載される方法を達成するための１つ以上のステップまたは動作を備える。本方法のステップおよび／または動作は、特許請求の範囲から逸脱することなく、相互に交換されてもよく、および／または単一のステップに組み合わされてもよい。言い換えれば、記載される方法の適切な操作のためにステップまたは動作の特定の順序が必要とされない限り、特定のステップおよび／または動作の順序および／または使用は、特許請求の範囲から逸脱することなく、修正されてもよい。
【０２３３】
理解すべきは、特許請求の範囲が上に示された通りの構成および構成要素には限定されないことである。特許請求の範囲から逸脱することなく、本明細書に記載される配置、動作、ならびにシステム、方法、および装置の詳細に様々な修正、変更および変形がなされてもよい。
【図１】
0006552197.tif 000014
【図２】
0006552197.tif 000015
【図３】
0006552197.tif 000016
【図４】
0006552197.tif 000017
【図５】
0006552197.tif 000018
【図６】
0006552197.tif 000019
【図７】
0006552197.tif 000020
【図８】
0006552197.tif 000021
【図９】
0006552197.tif 000022
【図１０】
0006552197.tif 000023
【図１１】
0006552197.tif 000024