コード化ビデオピクチャのシーケンスを備えるカプセル化されたビデオデータを出力する方法であって、前記方法は、前記コード化ビデオピクチャとは別個の1つまたは複数の補足エンハンスメント情報SEIメッセージを生成することと、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャのシーケンスとは別個に前記SEIメッセージを出力することと、を備える方法。前記SEIメッセージは、2つ以上のアクセスユニットに適用可能なシーケンスレベルSEIメッセージを備え、前記2つ以上のアクセスユニットは前記コード化ビデオピクチャのシーケンスを備え、前記1つまたは複数のSEIメッセージを生成することは、前記アクセスユニットから前記シーケンスレベルSEIメッセージを分離することを備える、請求項1に記載の方法。前記SEIメッセージは、H.264/AdvancedVideoCodingAVC、H.264のScalableVideoCodingSVC拡張、およびH.264のMultiviewVideoCodingMVC拡張のうちの少なくとも1つのSEIメッセージタイプとして定義される、請求項1に記載の方法。出力することは、前記SEIメッセージと前記コード化ビデオピクチャとをビデオファイルの形態でカプセル化することを備え、出力することは、さらに、前記コード化ビデオピクチャのシーケンスを含むファイルユニットとは別個のファイルユニット中に前記SEIメッセージを含めることを備える、請求項1に記載の方法。前記SEIメッセージを含む前記別個のファイルユニットは前記ビデオファイルのパラメータセットトラックを備え、前記パラメータセットトラックは、さらに、前記コード化ビデオピクチャのシーケンスのシーケンスパラメータセットデータおよびピクチャパラメータセットデータのうちの少なくとも1つを備える、請求項4に記載の方法。メディア表現のための初期化セグメントは前記別個のファイルユニットを備える、請求項4に記載の方法。前記SEIメッセージを生成することは、前記SEIメッセージのうちの少なくとも1つ内に、前記SEIメッセージに対応する前記コード化ビデオピクチャのシーケンスの持続時間をシグナリングするシグナリング情報を生成することを備える、請求項1に記載の方法。前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記SEIメッセージはSEIメッセージの第1のセットを備え、前記方法は、コード化ビデオピクチャの第2のシーケンスとは別個の1つまたは複数のSEIメッセージの第2のセットを生成することと、前記SEIメッセージの第2のセットは、前記コード化ビデオピクチャの第2のシーケンスの各々を記述し、前記コード化ビデオピクチャの第2のシーケンスのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャの第2のシーケンスとは別個に前記SEIメッセージの第2のセットを出力することと、をさらに備える請求項1に記載の方法。出力することは、前記SEIメッセージと前記コード化ビデオピクチャのシーケンスとを備えるビデオデータを符号化することと、ネットワーク上で前記符号化されたビデオデータをストリーミングすることと、を備える請求項1に記載の方法。前記ビデオデータをストリーミングすることは、少なくとも1つの伝送制御プロトコルTCP接続を介して前記ビデオデータをストリーミングすることを備える、請求項9に記載の方法。前記少なくとも1つのTCP接続はハイパーテキスト転送プロトコルHTTP接続を備える、請求項10に記載の方法。生成することは、コーデックレベルのビデオエンコーダによって、前記コード化ビデオピクチャのシーケンスとは別個に前記SEIメッセージを符号化することを備える、請求項1に記載の方法。コード化ビデオピクチャのシーケンスを備えるカプセル化されたビデオデータを出力するための装置であって、前記装置は、前記コード化ビデオピクチャとは別個の1つまたは複数の補足エンハンスメント情報SEIメッセージを生成するように構成された制御ユニットと、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャのシーケンスとは別個に前記SEIメッセージを出力するように構成された出力インターフェースと、を備える装置。前記SEIメッセージは、2つ以上のアクセスユニットに適用可能なシーケンスレベルSEIメッセージを備え、前記2つ以上のアクセスユニットは前記コード化ビデオピクチャのシーケンスを備え、前記制御ユニットは、前記アクセスユニットから前記シーケンスレベルSEIメッセージを分離するように構成された、請求項13に記載の装置。前記制御ユニットは、前記SEIメッセージと前記コード化ビデオピクチャとをビデオファイルの形態でカプセル化するように構成され、前記制御ユニットは、前記コード化ビデオピクチャのシーケンスを含むファイルユニットとは別個のファイルユニット中に前記SEIメッセージを含めるように構成された、請求項13に記載の装置。前記SEIメッセージを含む前記別個のファイルユニットは前記ビデオファイルのパラメータセットトラックを備え、前記パラメータセットトラックは、さらに、前記コード化ビデオピクチャのシーケンスのシーケンスパラメータセットデータおよびピクチャパラメータセットデータのうちの少なくとも1つを備える、請求項15に記載の装置。メディア表現のための初期化セグメントは前記別個のファイルユニットを備える、請求項15に記載の装置。前記制御ユニットは、前記SEIメッセージのうちの少なくとも1つ内に、前記SEIメッセージに対応する前記コード化ビデオピクチャのシーケンスの持続時間をシグナリングするシグナリング情報を生成するように構成された、請求項13に記載の装置。前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記SEIメッセージはSEIメッセージの第1のセットを備え、前記制御ユニットは、コード化ビデオピクチャの第2のシーケンスとは別個の1つまたは複数のSEIメッセージの第2のセットを生成するように構成され、前記SEIメッセージの第2のセットは、前記コード化ビデオピクチャの第2のシーケンスの各々を記述し、前記コード化ビデオピクチャの第2のシーケンスのうちの2つ以上に共通の要素を含み、前記出力インターフェースは、前記コード化ビデオピクチャの第2のシーケンスとは別個に前記SEIメッセージの第2のセットを出力するように構成された、請求項13に記載の装置。前記装置は、集積回路と、マイクロプロセッサと、前記制御ユニットを含むワイヤレス通信デバイスと、のうちの少なくとも1つを備える、請求項13に記載の装置。コード化ビデオピクチャのシーケンスを備えるカプセル化されたビデオデータを出力するための装置であって、前記装置は、前記コード化ビデオピクチャとは別個の1つまたは複数の補足エンハンスメント情報SEIメッセージを生成する手段と、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャのシーケンスとは別個に前記SEIメッセージを出力する手段と、を備える装置。前記SEIメッセージは、2つ以上のアクセスユニットに適用可能なシーケンスレベルSEIメッセージを備え、前記2つ以上のアクセスユニットは前記コード化ビデオピクチャのシーケンスを備え、前記1つまたは複数のSEIメッセージを生成する手段は、前記アクセスユニットから前記シーケンスレベルSEIメッセージを分離する手段を備える、請求項21に記載の装置。前記出力する手段は、前記SEIメッセージと前記コード化ビデオピクチャとをビデオファイルの形態でカプセル化する手段を備え、前記出力する手段は、前記コード化ビデオピクチャのシーケンスを含むファイルユニットとは別個のファイルユニット中に前記SEIメッセージを含める手段をさらに備える、請求項21に記載の装置。前記SEIメッセージを含む前記別個のファイルユニットは前記ビデオファイルのパラメータセットトラックを備え、前記パラメータセットトラックは、さらに、前記コード化ビデオピクチャのシーケンスのシーケンスパラメータセットデータおよびピクチャパラメータセットデータのうちの少なくとも1つを備える、請求項23に記載の装置。メディア表現のための初期化セグメントが前記別個のファイルユニットを備える、請求項23に記載の装置。前記SEIメッセージを生成する手段は、前記SEIメッセージのうちの少なくとも1つ内に、前記SEIメッセージに対応する前記コード化ビデオピクチャのシーケンスの持続時間をシグナリングするシグナリング情報を生成する手段を備える、請求項21に記載の装置。前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記SEIメッセージがSEIメッセージの第1のセットを備え、前記装置は、コード化ビデオピクチャの第2のシーケンスとは別個の1つまたは複数のSEIメッセージの第2のセットを生成する手段と、前記SEIメッセージの第2のセットは、前記コード化ビデオピクチャの第2のシーケンスの各々を記述し、前記コード化ビデオピクチャの第2のシーケンスのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャの第2のシーケンスとは別個に前記SEIメッセージの第2のセットを出力する手段と、をさらに備える、請求項21に記載の装置。前記出力する手段は、前記SEIメッセージと前記コード化ビデオピクチャのシーケンスとを備えるビデオデータを符号化する手段と、ネットワーク上で前記符号化されたビデオデータをストリーミングする手段と、を備える、請求項21に記載の装置。実行されたとき、コード化ビデオデータを出力するための装置のプロセッサに、前記コード化ビデオピクチャとは別個の1つまたは複数の補足エンハンスメント情報SEIメッセージを生成させる命令と、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャのシーケンスとは別個に前記SEIメッセージを出力させる命令と、が記憶されたコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。前記出力させる命令は、前記SEIメッセージと前記コード化ビデオピクチャとをビデオファイルの形態でカプセル化させる命令を備え、前記出力させる命令は、さらに、前記コード化ビデオピクチャのシーケンスを含むファイルユニットとは別個のファイルユニット中に前記SEIメッセージを含ませる命令を備える、請求項29に記載のコンピュータプログラム製品。前記SEIメッセージを含む前記別個のファイルユニットは前記ビデオファイルのパラメータセットトラックを備え、前記パラメータセットトラックは、さらに、前記コード化ビデオピクチャのシーケンスのシーケンスパラメータセットデータおよびピクチャパラメータセットデータのうちの少なくとも1つを備える、請求項30に記載のコンピュータプログラム製品。メディア表現のための初期化セグメントは前記別個のファイルユニットを備える、請求項30に記載のコンピュータプログラム製品。前記SEIメッセージを生成させる命令は、前記SEIメッセージのうちの少なくとも1つ内に、前記SEIメッセージに対応する前記コード化ビデオピクチャのシーケンスの持続時間をシグナリングするシグナリング情報を生成させる命令を備える、請求項29に記載のコンピュータプログラム製品。コード化ビデオピクチャの前記シーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記SEIメッセージはSEIメッセージの第1のセットを備え、コード化ビデオピクチャの第2のシーケンスとは別個の1つまたは複数のSEIメッセージの第2のセットを生成させる命令と、前記SEIメッセージの第2のセットは、前記コード化ビデオピクチャの第2のシーケンスの各々を記述し、前記コード化ビデオピクチャの第2のシーケンスのうちの2つ以上に共通の要素を含み、前記コード化ビデオピクチャの第2のシーケンスとは別個に前記SEIメッセージの第2のセットを出力させる命令と、をさらに備える、請求項29に記載のコンピュータプログラム製品。符号化ビデオデータを受信する方法であって、前記方法は、ビデオファイルのコード化ビデオピクチャのシーケンスを記述する補足エンハンスメント情報SEIメッセージを受信することと、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記SEIメッセージとは別個に前記ビデオファイルの前記コード化ビデオピクチャのシーケンスを受信することと、前記コード化ビデオピクチャのシーケンスが復号された後に、前記SEIメッセージに基づいて前記コード化ビデオピクチャのシーケンスをレンダリングすることと、を備える方法。前記SEIメッセージについての第1の要求をサブミットすることと、前記SEIメッセージを受信することは、前記第1の要求に応答して前記SEIメッセージを受信することを備え、前記SEIメッセージを受信した後にのみ、前記コード化ビデオピクチャのシーケンスについての第2の要求をサブミットすることと、前記コード化ビデオピクチャのシーケンスを受信することは、前記第2の要求に応答して前記コード化ビデオピクチャのシーケンスを受信することを備える、をさらに備える請求項35に記載の方法。前記SEIメッセージはSEIメッセージの第1のセットを備え、前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記方法は、さらに、前記コード化ビデオピクチャの第1のシーケンスを受信した後に、SEIメッセージの第2のセットについての第3の要求をサブミットすることと、前記第3の要求に応答して前記SEIメッセージの第2のセットを受信することと、前記SEIメッセージの第2のセットによって記述されるコード化ビデオピクチャの第2のシーケンスについての第4の要求をサブミットすることと、前記SEIメッセージの第2のセットを受信した後に、前記コード化ビデオピクチャの第2のシーケンスを受信することと、前記コード化ビデオピクチャの第2のシーケンスが復号された後に、前記SEIメッセージの第2のセットに基づいて前記コード化ビデオピクチャの第2のシーケンスをレンダリングすることと、を備える請求項36に記載の方法。パラメータセットトラックと、コード化ビデオピクチャを含まないトラックフラグメントと、コード化ビデオデータを含まない第3世代パートナーシッププロジェクト3GPPフォーマットファイルとのうちの少なくとも1つから、前記SEIメッセージを抽出することをさらに備える、請求項35に記載の方法。前記SEIメッセージをパースし、復号することをさらに備え、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスを備えるアクセスユニットとは別個にコーディングされる、請求項35に記載の方法。符号化ビデオデータを受信するための装置であって、前記装置は、ビデオファイルのコード化ビデオピクチャのシーケンスを記述する補足エンハンスメント情報SEIメッセージを受信し、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記SEIメッセージとは別個に前記ビデオファイルの前記コード化ビデオピクチャのシーケンスを受信するように構成された制御ユニットと、前記コード化ビデオピクチャのシーケンスが復号された後に、前記コード化ビデオピクチャのシーケンスをレンダリングするように構成されたビデオ出力と、を備える装置。前記制御ユニットは、前記SEIメッセージについての第1の要求をサブミットし、前記第1の要求に応答して前記SEIメッセージを受信し、前記SEIメッセージを受信した後にのみ前記コード化ビデオピクチャのシーケンスについての第2の要求をサブミットし、前記第2の要求に応答して前記コード化ビデオピクチャのシーケンスを受信するように構成された、請求項40に記載の装置。前記SEIメッセージはSEIメッセージの第1のセットを備え、前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記制御ユニットは、前記コード化ビデオピクチャの第1のシーケンスを受信した後にSEIメッセージの第2のセットについての第3の要求をサブミットし、前記第3の要求に応答して前記SEIメッセージの第2のセットを受信し、前記SEIメッセージの第2のセットによって記述されたコード化ビデオピクチャの第2のシーケンスについての第4の要求をサブミットし、前記SEIメッセージの第2のセットを受信した後に前記コード化ビデオピクチャの第2のシーケンスを受信するように構成され、前記ビデオ出力は、前記コード化ビデオピクチャの第2のシーケンスが復号された後に、前記SEIメッセージの第2のセットに基づいて前記コード化ビデオピクチャの第2のシーケンスをレンダリングするように構成された、請求項41に記載の装置。前記制御ユニットは、パラメータセットトラックと、コード化ビデオピクチャを含まないトラックフラグメントと、コード化ビデオデータを含まない第3世代パートナーシッププロジェクト3GPPフォーマットファイルとのうちの少なくとも1つから、前記SEIメッセージを抽出するように構成された、請求項40に記載の装置。前記装置は、集積回路と、マイクロプロセッサと、前記制御ユニットを含むワイヤレス通信デバイスと、のうちの少なくとも1つを備える、請求項40に記載の装置。符号化ビデオデータを受信するための装置であって、前記装置は、ビデオファイルのコード化ビデオピクチャのシーケンスを記述する補足エンハンスメント情報SEIメッセージを受信する手段と、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記SEIメッセージとは別個に前記ビデオファイルの前記コード化ビデオピクチャのシーケンスを受信する手段と、前記コード化ビデオピクチャのシーケンスが復号された後に、前記SEIメッセージに基づいて前記コード化ビデオピクチャのシーケンスをレンダリングする手段と、を備える装置。前記SEIメッセージについての第1の要求をサブミットする手段と、前記SEIメッセージを受信する手段は、前記第1の要求に応答して前記SEIメッセージを受信する手段を備え、前記SEIメッセージを受信した後にのみ前記コード化ビデオピクチャのシーケンスについての第2の要求をサブミットする手段と、前記コード化ビデオピクチャのシーケンスを受信する手段は、前記第2の要求に応答して前記コード化ビデオピクチャのシーケンスを受信する手段を備える、をさらに備える、請求項45に記載の装置。前記SEIメッセージはSEIメッセージの第1のセットを備え、前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記装置は、前記コード化ビデオピクチャの第1のシーケンスを受信した後に、SEIメッセージの第2のセットについての第3の要求をサブミットする手段と、前記第3の要求に応答して前記SEIメッセージの第2のセットを受信する手段と、前記SEIメッセージの第2のセットによって記述されるコード化ビデオピクチャの第2のシーケンスについての第4の要求をサブミットする手段と、前記SEIメッセージの第2のセットを受信した後に、前記コード化ビデオピクチャの第2のシーケンスを受信する手段と、前記コード化ビデオピクチャの第2のシーケンスが復号された後に、前記SEIメッセージの第2のセットに基づいて前記コード化ビデオピクチャの第2のシーケンスをレンダリングする手段と、をさらに備える、請求項46に記載の装置。パラメータセットトラックと、コード化ビデオピクチャを含まないトラックフラグメントと、コード化ビデオデータを含まない第3世代パートナーシッププロジェクト3GPPフォーマットファイルとのうちの少なくとも1つから、前記SEIメッセージを抽出する手段をさらに備える、請求項45に記載の装置。実行されたとき、コード化ビデオデータを受信するための装置のプロセッサに、ビデオファイルのコード化ビデオピクチャのシーケンスを記述する補足エンハンスメント情報SEIメッセージを受信させる命令と、前記SEIメッセージは、前記コード化ビデオピクチャのシーケンスの各々を記述し、前記コード化ビデオピクチャのうちの2つ以上に共通の要素を含み、前記SEIメッセージとは別個に前記ビデオファイルの前記コード化ビデオピクチャのシーケンスを受信させる命令と、前記コード化ビデオピクチャのシーケンスが復号された後に、前記SEIメッセージに基づいて前記コード化ビデオピクチャのシーケンスをレンダリングさせる命令と、が記憶されたコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。前記SEIメッセージについての第1の要求をサブミットさせる命令と、前記SEIメッセージを受信させる命令は、前記第1の要求に応答して前記SEIメッセージを受信させる命令を備え、前記SEIメッセージを受信した後にのみ前記コード化ビデオピクチャのシーケンスについての第2の要求をサブミットさせる命令と、前記コード化ビデオピクチャのシーケンスを受信させる命令は、前記第2の要求に応答して前記コード化ビデオピクチャのシーケンスを受信させる命令を備え、をさらに備える、請求項49に記載のコンピュータプログラム製品。前記SEIメッセージはSEIメッセージの第1のセットを備え、前記コード化ビデオピクチャのシーケンスはコード化ビデオピクチャの第1のシーケンスを備え、前記コード化ビデオピクチャの第1のシーケンスを受信した後に、SEIメッセージの第2のセットについての第3の要求をサブミットさせる命令と、前記第3の要求に応答して前記SEIメッセージの第2のセットを受信させる命令と、前記SEIメッセージの第2のセットによって記述されるコード化ビデオピクチャの第2のシーケンスについての第4の要求をサブミットさせる命令と、前記SEIメッセージの第2のセットを受信した後に、前記コード化ビデオピクチャの第2のシーケンスを受信させる命令と、前記コード化ビデオピクチャの第2のシーケンスが復号された後に、前記SEIメッセージの第2のセットに基づいて前記コード化ビデオピクチャの第2のシーケンスをレンダリングさせる命令と、をさらに備える、請求項50に記載のコンピュータプログラム製品。パラメータセットトラックと、コード化ビデオピクチャを含まないトラックフラグメントと、コード化ビデオデータを含まない第3世代パートナーシッププロジェクト3GPPフォーマットファイルとのうちの少なくとも1つから、前記SEIメッセージを抽出させる命令をさらに備える、請求項49に記載のコンピュータプログラム製品。0023概して、本開示は、ハイパーテキスト転送プロトコルHTTPストリーミングなどのストリーミングネットワークプロトコルを使用してビデオデータの配信をサポートするための技法について説明する。特に、本開示の技法は、ビデオデータを、例えばビデオファイルの形態で送信するときに、特定のビデオサンプルから、シーケンスレベルSEIメッセージのようないくつかの補足エンハンスメント情報SEIメッセージを分離することを対象とする。さらに、本技法は、符号化されたビデオピクチャの復号およびレンダリングをサポートするために、宛先デバイスにおいてシーケンスレベルSEIメッセージを解釈することを含む。0024本開示ではまた、コーデックレベルにおいてビデオサンプルからSEIメッセージを分離することについて説明するが、SEIメッセージは、たとえば、SEIメッセージがアクセスユニットに関連するときに、必ずしも特定のコード化ピクチャに関連する必要があるとは限らない。コード化ピクチャからSEIメッセージが分離された場合、どの持続時間にSEIメッセージが適用可能であるかを指定するタイミング情報がSEIメッセージの一部としてシグナリングされ得る。0025SEIメッセージは、いくつかの符号化されたビデオピクチャを復号および/または表示するようにデコーダおよび/またはレンダラを支援するために使用される情報を含むことがある。また、SEIメッセージは誤り耐性を与えるために使用され得る。いくつかのSEIメッセージは、シーケンスレベルでありたとえば、コード化ピクチャグループGOPまたはコード化ビデオピクチャの他のシーケンスに関係し、他のSEIメッセージは特定のコード化ピクチャに関係し得る。SEIメッセージは、一般に、特定のコード化ピクチャとともに送信される。すなわち、SEIメッセージを検索するために、デコーダは通常、そのSEIメッセージを含むコード化ピクチャを検索する必要がある。デコーダがコード化ピクチャのためのデータを必要としない場合、これは、一般に、帯域幅の浪費につながる。その上、場合によっては、様々なコード化ピクチャの2つのSEIメッセージまたは2つのGOPは、本質的に同じ情報を含んでいることがあり、それにより、SEIメッセージを繰り返し送信することは同様に、帯域幅の浪費を引き起こすことがある。0026本開示の技法は、たとえば、SEIメッセージがコード化ビデオピクチャのシーケンスのシーケンスデータを記述する場合、コード化ビデオデータとは別個にたとえば、独立してSEIメッセージを送信することを含む。シーケンスデータは、コード化ビデオピクチャのシーケンスに共通であるデータに対応し得る。H.264/AVCアドバンストビデオコーディングに関係するいくつかの例では、SEIメッセージがパンスキャン矩形panscanrectangleに関係する情報とステレオビデオ情報とを含むとき、SEIメッセージはパラメータセットエレメンタリストリームとともに送信され得る。パラメータセットエレメンタリストリームは、シーケンスパラメータセットSPSおよび/またはピクチャパラメータセットPPSメッセージを含み得る。すなわち、パラメータセットエレメンタリストリームは、これらの技法に従って、1つまたは複数のSEIメッセージに加えてPPSおよび/またはSPSメッセージを含み得る。H.264/AVCにおけるそのようなSEIメッセージの一例は、フレームパッキング配置framepackingarrangementSEIであり、これは、どのように画像ペアの2つのビューが1つのフレーム中に一緒にインターリーブされるかについての情報を指定する。別の例として、スケーラブルビデオコーディングSVCに関して、SEIメッセージがスケーラビリティ情報を与えるとき、SEIメッセージはパラメータセットエレメンタリストリーム中で送られ得る。さらに別の例として、マルチビュービデオコーディングMVCでは、SEIメッセージがビュースケーラビリティ情報、マルチビュー取得情報、および/またはマルチビューシーン情報を含むとき、SEIメッセージはパラメータセットエレメンタリストリーム中に含まれ得る。0027従来のシーケンスレベルSEIメッセージは、瞬時デコーダリフレッシュIDRピクチャを備えるアクセスユニットなどのいくつかのアクセスユニットに関連付けられている。しかしながら、本開示の技法は、アクセスユニットからシーケンスレベルSEIメッセージを分離することを対象とする。したがって、本開示の技法は、シーケンスレベルSEIメッセージを含むアクセスユニットを検索するのではなく、クライアントデバイスが、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャとは別個にシーケンスレベルSEIメッセージを検索することを可能にし得る。したがって、クライアントデバイスがコード化ビデオピクチャのシーケンスの一部分のみを復号および表示するように構成された場合、クライアントデバイスは、そうでなければSEIメッセージが一緒に含まれるIDRピクチャなどの他のピクチャを検索する必要なしに、シーケンスの一部分のみを検索し得る。本開示の技法によれば、クライアントデバイスは、コード化ビデオピクチャの所望される一部分とは別個にSEIメッセージを検索し得る。0028いくつかの例では、シーケンスレベルSEIメッセージおよび/または他のシーケンスデータをパラメータセットトラック中に含めるのではなく、代わりに、シーケンスレベルSEIメッセージはファイル中に連続的に含まれ、それにより、HTTP-Getオペレーションは、任意のポイントにおいてビデオファイルを復号および表示するために使用され得る情報を検索するためにクライアントによって使用される。すなわち、ユーザは、ビデオファイル中の任意のポイントをシークし、デコーダは、追加の不要なコード化ビデオデータ、たとえば、シーク要求に対応するビデオファイル内の時間ロケーションに先行し、シーク要求の時間ロケーションにおいて、およびそれを越えてビデオデータを復号するために使用されないコード化ビデオデータ、を検索することなしにSEIメッセージを検索し得る。0029ビデオ表現またはオーディオ表現は1つまたは複数のセグメントを含み得る。各表現は初期化セグメントを含むことがあるか、または表現中の各メディアセグメントは自己初期化していることがある。初期化セグメントは、対応する表現のデータ、たとえば、初期化セグメントによって記述されるメディアセグメントにアクセスするための初期化情報を含むことがある。初期化セグメントは、概して、メディアデータを含んでおらず、代わりに初期化データのみを含み得る。各メディアコンポーネントが、オーディオ、ビデオ、または時限テキストtimedtextなど、個々のメディアタイプの符号化バージョンである場合、各表現は、1つまたは複数のメディアコンポーネントを含み得る。メディアコンポーネントは、1つの表現内の連続する複数のメディアセグメントの境界にわたって時間連続であり得る。0030さらに別の例として、本開示の技法は、シーケンスデータたとえば、PPS、SPS、およびシーケンスレベルSEIメッセージ、特に、コード化ビデオデータを含んでいないファイルセグメント、すなわち、ビデオサンプルを送ることを含む。ソースデバイスおよび宛先デバイスは、シーケンスデータを含むビデオサンプルのロケーションを用いて、および/またはこれらのビデオサンプルのロケーションを決定するための方法とを用いて構成される。シーケンスデータは、いくつかの例では、符号化されたビデオデータが送られる前に、サーバからクライアントに送られる。すなわち、ソースデバイスは、シーケンスデータによって参照される符号化されたビデオデータを送る前に、クライアントデバイスに、PPS、SPS、およびシーケンスレベルSEIメッセージなど、シーケンスデータを与え得る。ファイルセグメントに基づくHTTPストリーミングでは、SEIメッセージ、たとえば、シーケンスレベルSEIメッセージは、シーケンスパラメータセットおよびピクチャパラメータセットなどのパラメータセットとともに、コード化オーディオまたはビデオサンプルを含んでいない初期化セグメント中に入れられる。0031本開示の技法は、ISOベースメディアファイルフォーマット、スケーラブルビデオコーディングSVCファイルフォーマット、AdvancedVideoCodingAVCファイルフォーマット、ThirdGenerationPartnershipProject3GPPファイルフォーマット、および/またはマルチビュービデオコーディングMVCファイルフォーマットのいずれかに準拠するビデオファイルに適用され得る。ISOベースメディアファイルフォーマットは、メディアの交換、管理、編集、およびプレゼンテーションを可能にする、フレキシブルな、拡張可能なフォーマットのプレゼンテーションのための、時限メディア情報を含むように設計される。ISOベースメディアファイルフォーマットISO/IEC14496-12:2004は、時間ベースメディアファイルのための一般的な構造を定義するMPEG-4Part12において規定されている。それは、H.264/MPEG-4AVCビデオ圧縮のサポートを定義したAVCファイルフォーマットISO/IEC14496-15、3GPPファイルフォーマット、SVCファイルフォーマット、およびMVCファイルフォーマットなどのファミリー中の他のファイルフォーマットに対する基準として使用される。3GPPファイルフォーマットおよびMVCファイルフォーマットはAVCファイルフォーマットの拡張である。ISOベースメディアファイルフォーマットは、オーディオビジュアルプレゼンテーションなどのメディアデータの時限シーケンスのためのタイミング、構造、およびメディア情報を含む。ファイル構造はオブジェクト指向である。ファイルは、非常に単純に基本オブジェクトに分解され、オブジェクトの構造はそれらのタイプから暗示される。0032ISOベースメディアファイルフォーマットおよびそれの拡張に準拠するファイルは、ボックスと呼ばれる一連のオブジェクトとして形成される。ISOベースメディアファイルフォーマット中のデータはボックス中に含まれ、ファイル内のボックスの外部にデータがある必要はない。これは、特定のファイルフォーマットによって必要とされる初期シグナチャを含む。ボックスは、一意のタイプ識別子と長さとによって定義されるオブジェクト指向ビルディングブロックであり得る。一般に、プレゼンテーションは1つのファイル中に含まれ、メディアプレゼンテーションは独立型selfcontainedである。ムービーコンテナムービーボックスはメディアのメタデータを含み、ビデオおよびオーディオフレームは、メディアデータコンテナ中に含まれており、他のファイル中にあり得る。0033プレゼンテーション動きシーケンスは、いくつかのファイル中に含まれていることがある。タイミングおよびフレーミング位置およびサイズ情報は概してISOベースメディアファイル中にあり、補助ファイルは本質的に任意のフォーマットを使用し得る。このプレゼンテーションは、プレゼンテーションを含んでいるシステムに対してローカルであり得るか、あるいはネットワークまたは他のストリーム配信機構を介して与えられ得る。0034ファイルは、論理構造と時間構造と物理構造とを有し得、これらの構造は結合される必要はない。ファイルの論理構造は、次に時間並列timeparallelトラックのセットを含むビデオデータとオーディオデータの両方を潜在的に含むムービーまたはビデオクリップであり得る。ファイルの時間構造は、トラックが時間的なサンプルのシーケンスを含み、それらのシーケンスは、オプションのエディットリストによってムービー全体のタイムラインにマッピングされ得る。ファイルの物理構造は、メディアデータサンプル自体から、論理、時間、および構造的分解のために必要とされるデータを分離し得る。この構造的情報は、ムービーボックス中に集められ、場合によってはムービーフラグメントボックスによって時間的に拡張され得る。ムービーボックスは、サンプルの論理関係およびタイミング関係をドキュメント化し、また、サンプルが配置される場所へのポインタを含む。これらのポインタは、同じファイルまたはたとえばURLによって参照される別のファイルへのものである。0035各メディアストリームは、そのメディアタイプオーディオ、ビデオなどに専用のトラック中に含まれ、さらにサンプルエントリによってパラメータ表示され得る。サンプルエントリは、厳密なメディアタイプストリームを復号するために必要とされるデコーダのタイプの名前と、必要とされるそのデコーダのパラメータ表示を含む。名前はまた、4文字コード、たとえば、moov、またはtrakの形態をとる。MPEG-4メディアについてだけでなく、このファイルフォーマットファミリーを使用する他の編成によって使用されるメディアタイプについても、定義済みのサンプルエントリフォーマットがある。0036メタデータのサポートは、概して2つの形態をとる。第1に、時限メタデータが、適切なトラックに記憶され、必要に応じて、それが表しているメディアデータと同期され得る。第2に、ムービーまたは個々のトラックにアタッチされた非時限メタデータの全般的サポートがあり得る。構造的サポートは、全般的であり、メディアデータ、すなわち、コード化ビデオピクチャの記憶と同様の方法で、ファイル中の他の場所または別のファイル中でのメタデータリソースの記憶を可能にする。さらに、これらのリソースは名前付きであり、保護され得る。0037ISOベースメディアファイルフォーマットでは、サンプルグルーピングは、1つのサンプルグループのメンバーであるべきトラック中のサンプルの各々の割当てである。サンプルグループ中のサンプルは連続である必要はない。たとえば、AVCファイルフォーマットにおけるH.264/AVCを提示するとき、1つの時間レベルのビデオサンプルは、1つのサンプルグループにサンプリングされ得る。サンプルグループは、SampleToGroupボックスsbdpとSampleGroupDescriptionボックスとの2つのデータ構造によって表される。SampleToGroupボックスは、サンプルグループへのサンプルの割当てを表す。対応するグループのプロパティについて説明するために、各サンプルグループエントリのためのSampleGroupDescriptionボックスの一インスタンスがある。0038オプションのメタデータトラックは、それが有する興味深い特性をもつ各トラックをタグ付けするために使用され、その値はグループの他のメンバーたとえば、それのビットレート、スクリーンサイズ、または言語とは異なり得る。トラック内のいくつかのサンプルは、特殊な特性を有するか、または個々に識別され得る。その特性の一例は、同期ポイントしばしば、ビデオIフレームである。これらのポイントは、各トラック中の特殊なテーブルによって識別され得る。より一般には、トラックサンプル間の依存性の性質は、メタデータを使用してドキュメント化されることもある。メタデータは、ちょうどビデオトラックのように、ファイルフォーマットサンプルのシーケンスとして構造化され得る。そのようなトラックはメタデータトラックと呼ばれる。各メタデータサンプルはメタデータステートメントとして構造化される。対応するファイルフォーマットサンプルまたはその構成サンプルについて質問され得る様々な質問questionに対応する、様々な種類のステートメントがある。0039メディアがストリーミングプロトコルを介して配信されるとき、メディアは、それがファイルにおいて表される形から変換される必要があり得る。これの一例は、メディアがリアルタイムプロトコルRTPを介して送信されるときである。ファイルでは、たとえば、ビデオの各フレームが、ファイルフォーマットサンプルとして連続して記憶される。RTPでは、これらのフレームをRTPパケット中に配置するために、使用されるコーデックに固有のパケット化ルールが順守されなければならない。ストリーミングサーバは、実行runtime時にそのようなパケット化を計算するように構成され得る。ただし、ストリーミングサーバの支援のためのサポートがある。ヒントトラックと呼ばれる特殊なトラックがファイルに入れられ得る。0040ヒントトラックは、特定のプロトコルのためのメディアトラックからどのようにパケットストリームを形成するかに関する、ストリーミングサーバのための一般的な命令を含む。これらの命令の形態はメディア独立型であるので、新しいコーデックが導入されたときにサーバが修正される必要がない。さらに、符号化および編集editingソフトウェアはストリーミングサーバに気づいていない。ファイル上で編集が完了すると、ファイルをストリーミングサーバに置く前に、ヒントトラックをファイルに追加するために、ヒンターhinterと呼ばれる1個のソフトウェアが使用され得る。一例として、MPEG-4ファイルフォーマット規格におけるRTPストリームのための定義されたヒントトラックフォーマットがある。0041プログレッシブダウンロードという用語は、一般に、HTTPプロトコルを使用した、サーバからクライアントへのデジタルメディアファイルの転送を説明するために使用される。コンピュータから開始されるとき、コンピュータは、ダウンロードが完了する前にメディアの再生を開始する。ストリーミングメディアとプログレッシブダウンロードとの間の1つの相違は、デジタルメディアにアクセスしているエンドユーザデバイスによるデジタルメディアデータの受信および記憶方法にある。プログレッシブダウンロード再生が可能であるメディアプレーヤは、ファイルのヘッダ中に配置されたメタデータが損なわれておらず、デジタルメディアファイルのローカルバッファがデジタルメディアファイルがウェブサーバからダウンロードされたときのままであることに依存する。指定された量のバッファデータがローカル再生デバイスに利用可能になった時点で、デバイスはメディアを再生し始め得る。この指定された量のバッファデータは、エンコーダ設定においてコンテンツの製作者によってファイルに埋め込まれ、クライアントコンピュータのメディアプレーヤによって課される追加のバッファ設定によって補強され得る。0042AVCおよび3GPPはISOベースメディアファイルフォーマットの拡張であり、SVCおよびMVCはAVCファイルフォーマットの拡張である。したがって、本開示の技法は、ISOベースメディアファイルフォーマット、AVCファイルフォーマットおよびそれらの拡張、たとえば、SVCおよびMVC、ならびに/あるいはThirdGenerationPartnershipProject3GPPファイルフォーマットに準拠するビデオファイルに対して適用され得る。本技法は、これらのフォーマットのこれらおよび他の拡張にさらに適用され得、SEIメッセージが記述するビデオデータとは別個にSEIメッセージを与えるように他のファイルフォーマットを拡張するためにさらに適用され得る。したがって、例としてAVCに関して一般的に説明するが、本開示の技法は概して他のファイルフォーマットに適用され得ることを理解されたい。0043MovingPicturesExpertsGroupMPEGは、ISOベースメディアファイルフォーマットの拡張としてAVCファイルフォーマットを開発した。AVCファイルフォーマットでは、シーケンスパラメータセットおよびピクチャパラメータセットを含むパラメータセットは、ビデオトラック中にあるビデオエレメンタリストリームに関連付けられ得る。パラメータセットトラックと呼ばれる別のトラック中にパラメータセットを有することも可能であり、この別のトラックは、SPSまたはPPSネットワークアブストラクションレイヤNAL:networkabstractionlayerユニットであるサンプルを含んでいるパラメータセットエレメンタリストリームを含む。しかしながら、SEIメッセージを使用するピクチャより前の復号時間をもつサンプル中にこのSEIメッセージが提示される限り、SEIメッセージNALユニットのロケーションはAVCファイルフォーマットでは制限されない。0044AVCファイルフォーマットはSVCおよびMVC拡張を有し、それぞれSVCおよびMVCの記憶をサポートする。SVCおよびMVCでは、1つのビデオトラックまたは複数のビデオトラック中に複数のレイヤ/ビューが含まれ得る。レイヤ/ビューが様々な編成で提示されるとき、オペレーションポイントを構築するために、SVCおよびMVC仕様において定義されたツールがある。0045SVCのいくつかの機能はH.264/AVCから引き継がれている。前のスケーラブル規格と比較して、SVC規格は、たとえば、階層時間スケーラビリティ、レイヤ間予測、シングルループ復号、およびフレキシブルトランスポートインターフェースなどの様々な利点を与え得る。H.264/AVCは、高度の時間スケーラビリティを可能にするフレキシブルな階層Bピクチャコーディング構造を与える。H.264/AVCから引き継がれたこの特徴により、SVCは、異なる解像度をもつレイヤの時間スケーラビリティをサポートする。SVCでは、ピクチャグループGOPは、いわゆるキーピクチャと、このキーピクチャと前のキーピクチャとの間に出力/表示順序で配置されたすべてのピクチャとを含む。キーピクチャは、規則的または不規則な間隔でコーディングされ得、前のキーピクチャを動き補償予測のための基準として使用してイントラコーディングされるか、またはインターコーディングされ得る。非キーピクチャは、より低い時間レベルをもつピクチャから階層的に予測され、キーピクチャは、最も低い時間レベルを有し得る。ピクチャの時間レベルは、NALユニットヘッダSVC拡張中のシンタックス要素temporal_idによって示され得る。0046SVCは、テクスチャと残差と動きとに基づいて、空間スケーラビリティと信号対雑音比SNRスケーラビリティとのレイヤ間予測を導入する。SVCにおける空間スケーラビリティは、2つのレイヤ間の任意の解像度比に一般化され得る。SNRスケーラビリティは、粗粒度スケーラビリティCGS:CoarseGranularityScalability、中粒度スケーラビリティMGS:MediumGranularityScalability、または細粒度スケーラビリティFGS:FineGrainScalabilityによって実現され得る。SVCでは、2つの空間レイヤまたはCGSレイヤは、NALユニットヘッダ中でdependency_idによって示され得る異なる依存性レイヤに属するが、2つのMGSレイヤは同じ依存性レイヤ中にあり得る。1つの依存性レイヤは、品質エンハンスメントqualityenhancementレイヤに対応する、0からより高い値までのquality_idをもつ品質レイヤを含み得る。SVCは、レイヤ間冗長性を低減するために利用されるレイヤ間予測方法を与える。それらは、レイヤ間テクスチャ予測、レイヤ間残差予測、およびレイヤ間動き予測として要約される。0047SVCはまた、スケーラブルマルチメディアアプリケーションシステムへのコーデックのシームレスな統合を可能にする、フレキシブルなシステムおよびトランスポートインターフェース設計を提供する。圧縮およびスケーラビリティプロビジョニングとは異なり、システムおよびトランスポートインターフェースは、コーデック機能に焦点を当てており、一般的にビデオコーデックについては、インターオペラビリティおよび準拠、拡張性、ランダムアクセス、タイミング、バッファ管理、ならびに誤り耐性などであり、特にスケーラブルコーディングについては、後方互換性、スケーラビリティ情報プロビジョニング、およびスケーラビリティ適応などである。0048SVCはシングルループ復号方式をさらに提供する。シングルループ復号方式では、ターゲットレイヤのみが動き補償され、完全復号される必要がある。したがって、一般に、あらゆる空間レイヤまたはSNRスケーラブルレイヤに対して動き補償および完全復号が実行される、他のマルチループ復号方式と比較して、SVCのシングルループ復号方式は復号複雑度ならびにDPBサイズを大幅に低減することができる。0049SVCおよびMVCは、たとえば、NALユニットヘッダ、シーケンスパラメータセット、およびSEIメッセージ中に、同様のハイレベルシンタックス設計を有する。SVCとMVCの両方において、ビットストリーム全体の抽出は、帯域幅またはデバイス能力の適応のために、ある程度までサポートされる。抽出されたサブビットストリームは異なるオペレーションポイントに対応する。0050いくつかの例では、本開示の技法は、H.264/AVCコーデック、または、SVC、MVC、またはH.264/AVCの他の拡張などのAVCに基づくコーデックに適用され得る。そのようなコーデックは、SEIメッセージが1つのコード化ピクチャ、たとえば、アクセスユニットに関連するときにそのSEIメッセージを認識するように構成され、SEIメッセージは、ISOベースメディアファイルフォーマットまたはMPEG-2システムビットストリームでアクセスユニット内にカプセル化され得る。本技法はまた、SEIメッセージによって記述されるアクセスユニットとは別個にSEIメッセージを搬送することを可能にするために、将来のコーディング規格、たとえば、H.265/HEVCに対処する。0051別の例として、3GPPに関して、ダウンロードおよびプログレッシブダウンロードのために3GPファイルに対してHTTP/TCP/IPトランスポートがサポートされる。さらに、ビデオストリーミングにHTTPを使用することはいくつかの利点を与え、HTTPに基づくビデオストリーミングサービスが普及しつつある。HTTPストリーミングは、ネットワーク上でビデオデータをトランスポートするための新しい技法を開発するために新たな労力が必要とされないように、既存のインターネットコンポーネントおよびプロトコルが使用されることを含むいくつかの利点を与え得る。他のトランスポートプロトコル、たとえばRTPペイロードフォーマットは、メディアフォーマットおよびシグナリングコンテキストを認識するために、中間ネットワークデバイス、たとえば中間ボックスを必要とする。また、HTTPストリーミングはクライアント主導型であり得、それにより、制御問題を回避し得る。0052たとえば、最適性能を取得するための特徴を活用するために、サーバは、まだ肯定応答されていないパケットのサイズとコンテンツとを追跡する。サーバはまた、RD最適切替え/シニングthinning決定を行うために、ファイル構造を分析し、クライアントバッファの状態を再構成し得る。さらに、ネゴシエートされたプロファイルに準拠した状態を保つために、ビットストリーム変動に関する制約が満たされ得る。HTTPは、HTTP1.1が実装されたウェブサーバにおいて、新しいハードウェアまたはソフトウェア実装を必ずしも必要とはしない。HTTPストリーミングはまた、TCPフレンドリネスとファイアウォールトラバーサルfirewalltraversalとを実現する。0053HTTPストリーミングでは、頻繁に使用される動作にはGETおよびパーシャルGETがある。GETオペレーションは、所与のユニフォームリソースロケータURLまたはユニフォームリソースネームURNに関連するファイル全体を取り出す。パーシャルGETオペレーションは、入力パラメータとしてバイト範囲を受信し、受信したバイト範囲に対応するファイルの連続するいくつかのバイトを取り出す。したがって、パーシャルGETオペレーションは1つまたは複数の個々のムービーフラグメントを得ることができるので、HTTPストリーミングのためのムービーフラグメントが与えられ得る。ムービーフラグメントには、異なるトラックのいくつかのトラックフラグメントがあり得ることに留意されたい。HTTPストリーミングでは、メディアプレゼンテーションは、クライアントがアクセス可能であるデータの構造化された集合であり得る。クライアントは、ストリーミングサービスをユーザに提示するために、メディアデータ情報を要求し、ダウンロードし得る。0054図1は、オーディオ/ビデオA/Vソースデバイス20がオーディオおよびビデオデータをA/V宛先デバイス40にトランスポートする例示的なシステム10を示すブロック図である。図1のシステム10は、ビデオ通信会議システム、サーバ/クライアントシステム、放送事業者/受信機システム、またはA/Vソースデバイス20などのソースデバイスからA/V宛先デバイス40などの宛先デバイスにビデオデータが送られる任意の他のシステムに対応し得る。いくつかの例では、A/Vソースデバイス20およびA/V宛先デバイス40は双方向情報交換を実行し得る。すなわち、A/Vソースデバイス20およびA/V宛先デバイス40は、オーディオおよびビデオデータの符号化と復号および、送信と受信の両方が可能であり得る。いくつかの例では、オーディオエンコーダ26は、ボコーダとも呼ばれるボイスエンコーダを備え得る。0055A/Vソースデバイス20は、図1の例では、オーディオソース22とビデオソース24とを備える。オーディオソース22は、たとえば、オーディオエンコーダ26によって符号化されるべき、キャプチャされたオーディオデータを表す電気信号を生成するマイクロフォンを備え得る。代替的に、オーディオソース22は、前に記録されたオーディオデータを記憶する記憶媒体、コンピュータシンセサイザなどのオーディオデータ生成器、またはオーディオデータの任意の他のソースを備え得る。ビデオソース24は、ビデオエンコーダ28によって符号化されるべきビデオデータを生成するビデオカメラ、前に記録されたビデオデータで符号化された記憶媒体、ビデオデータ生成ユニット、またはビデオデータの任意の他のソースを備え得る。0056未加工オーディオおよびビデオデータは、アナログまたはデジタルデータを備え得る。アナログデータは、オーディオエンコーダ26および/またはビデオエンコーダ28によって符号化される前にデジタル化され得る。オーディオソース22は、通話参加者が話している間、通話参加者からオーディオデータを取得し、同時に、ビデオソース24は、通話参加者のビデオデータを取得し得る。他の例では、オーディオソース22は、記憶されたオーディオデータを備えるコンピュータ可読記憶媒体を備え得、ビデオソース24は、記憶されたビデオデータを備えるコンピュータ可読記憶媒体を備え得る。このようにして、本開示で説明する技法は、ライブ、ストリーミング、リアルタイムオーディオおよびビデオデータ、またはアーカイブされた、あらかじめ記録されたオーディオおよびビデオデータに適用され得る。0057ビデオフレームに対応するオーディオフレームは、概して、ビデオフレーム内に含まれている、ビデオソース24によってキャプチャされたビデオデータと同時にオーディオソース22によってキャプチャされたオーディオデータを含んでいるオーディオフレームである。たとえば、通話参加者が概して話すことによってオーディオデータを生成する間、オーディオソース22はオーディオデータをキャプチャし、同時に、すなわちオーディオソース22がオーディオデータをキャプチャしている間、ビデオソース24は通話参加者のビデオデータをキャプチャする。したがって、オーディオフレームは、1つまたは複数の特定のビデオフレームに時間的に対応し得る。したがって、ビデオフレームに対応するオーディオフレームは、概して、オーディオデータとビデオデータとが同時にキャプチャされる状況、およびオーディオフレームとビデオフレームとが、それぞれ、同時にキャプチャされたオーディオデータとビデオデータとを備える状況に対応する。0058いくつかの例では、オーディオエンコーダ26は、符号化オーディオフレームのオーディオデータが記録された時間を表す、各符号化オーディオフレームにおけるタイムスタンプを符号化し、同様に、ビデオエンコーダ28は、符号化ビデオフレームのビデオデータが記録された時間を表す、各符号化ビデオフレームにおけるタイムスタンプを符号化し得る。そのような例では、ビデオフレームに対応するオーディオフレームは、タイムスタンプを備えるオーディオフレームと、同じタイムスタンプを備えるビデオフレームとを備え得る。A/Vソースデバイス20は、オーディオエンコーダ26および/またはビデオエンコーダ28がタイムスタンプを生成するか、あるいはオーディオソース22およびビデオソース24がオーディオおよびビデオデータをそれぞれタイムスタンプに関連付けるために使用し得る内部クロックを含む。0059いくつかの例では、オーディオソース22は、オーディオデータが記録された時間に対応するデータをオーディオエンコーダ26に送り、ビデオソース24は、ビデオデータが記録された時間に対応するデータをビデオエンコーダ28に送る。いくつかの例では、オーディオエンコーダ26は、符号化オーディオデータの相対的時間順序付けを示すために、符号化オーディオデータ中のシーケンス識別子を符号化するが、必ずしもオーディオデータが記録された絶対時刻を示す必要はない。同様に、ビデオエンコーダ28も、符号化ビデオデータの相対的時間順序付けを示すためにシーケンス識別子を使用し得る。同様に、いくつかの例では、シーケンス識別子は、タイムスタンプにマッピングされるか、または場合によってはタイムスタンプと相関する。0060本開示の技法は、概して、符号化マルチメディアたとえば、オーディオおよびビデオデータのトランスポートと、トランスポートされたマルチメディアデータの受信ならびに後続の解釈および復号とを対象とする。図1の例に示すように、ビデオソース24はシーンの複数のビューをビデオエンコーダ28に与える。0061A/Vソースデバイス20は、A/V宛先デバイス40にサービスを提供し得る。サービスは、概して、MVCデータの利用可能なビューのサブセットに対応する。たとえば、MVCデータは、0から7まで順序付けられた8つのビューについて利用可能である。あるサービスは、2つのビューを有するステレオビデオに対応し、別のサービスは4つのビューに対応し、さらに別のサービスは8つのビューすべてに対応し得る。概して、サービスは、利用可能なビューの任意の組合せすなわち、任意のサブセットに対応する。サービスはまた、利用可能なビューならびにオーディオデータの組合せに対応する。A/Vソースデバイス20が、A/Vソースデバイス20によって提供されるサービスごとにオペレーションポイント記述子をさらに与え得るように、オペレーションポイントがサービスに対応し得る。0062各データストリームはオーディオかビデオかにかかわらずエレメンタリストリームと呼ばれる。エレメンタリストリームは、デジタル的にコーディングされた場合によっては圧縮されたプログラムの単一の構成要素である。たとえば、プログラムのコーディングされたビデオまたはオーディオ部分はエレメンタリストリームである。エレメンタリストリームは、ビデオファイル内にカプセル化される前に、パケット化エレメンタリストリームPES:packetizedelementarystreamに変換され得る。同じプログラム内では、1つのエレメンタリストリームに属するPESパケットを他のものから区別するためにストリームIDが使用される。エレメンタリストリームの基本データ単位はパケット化エレメンタリストリームPESパケットである。したがって、MVCビデオデータの各ビューはそれぞれのエレメンタリストリームに対応する。同様に、オーディオデータは1つまたは複数のそれぞれのエレメンタリストリームに対応する。たとえば、シーケンスパラメータセット、ピクチャパラメータセット、およびシーケンスレベルSEIメッセージを含み得るシーケンスデータセットは、本開示の技法によれば、パラメータセットトラックまたはパラメータセットエレメンタリストリーム中に含まれ得る。本開示の技法は、パケット化エレメンタリストリームPES、プログラムストリームPS、およびトランスポートストリームTS、ならびにそれらのAVC拡張、SVC拡張、およびMVC拡張を含む、MPEG-2システムに準拠するビデオファイルまたはビデオストリームに適用され得る。0063MVCコード化ビデオシーケンスは、各々がエレメンタリストリームであるいくつかのサブビットストリームに分離され得る。各サブビットストリームは、MVCview_idサブセットを使用して識別され得る。各MVCview_idサブセットの概念に基づいて、MVCビデオサブビットストリームが定義される。MVCビデオサブビットストリームは、MVCview_idサブセットに記載されているビューのNALユニットを含んでいる。プログラムストリームは、概して、エレメンタリストリームのものであるNALユニットのみを含んでいる。それはまた、任意の2つのエレメンタリストリームが同じビューを含むことができないように設計されている。0064図1の例では、カプセル化ユニット30は、ビデオエンコーダ28からビデオデータを備えるエレメンタリストリームを受信し、オーディオエンコーダ26からオーディオデータを備えるエレメンタリストリームを受信する。いくつかの例では、ビデオエンコーダ28およびオーディオエンコーダ26はそれぞれ、符号化データからPESパケットを形成するためのパケッタイザを含む。他の例では、ビデオエンコーダ28およびオーディオエンコーダ26は、それぞれ、符号化データからPESパケットを形成するため、それぞれのパケッタイザとインターフェースする。さらに他の例では、カプセル化ユニット30は、符号化オーディオデータと符号化ビデオデータとからPESパケットを形成するためのパケッタイザを含む。0065本開示で使用するプログラムは、オーディオデータとビデオデータとの組合せ、たとえば、A/Vソースデバイス20のサービスによって配信されたオーディオエレメンタリストリームと利用可能なビューのサブセットとを備え得る。各PESパケットは、PESパケットが属するエレメンタリストリームを識別するstream_idを含む。カプセル化ユニット30は、エレメンタリストリームをビデオファイルにアセンブルすることを担う。0066カプセル化ユニット30は、オーディオエンコーダ26とビデオエンコーダ28とからプログラムのエレメンタリストリームのPESパケットを受信し、PESパケットから対応するネットワークアブストラクションレイヤNALユニットを形成する。H.264/AVCAdvancedVideoCodingの例では、コード化ビデオセグメントは、ビデオテレフォニー、ストレージ、ブロードキャスト、またはストリーミングなどの適用例に対処するネットワークフレンドリーなビデオ表現を与えるNALユニットに編成される。NALユニットは、VideoCodingLayerVCLNALユニットと非VCLNALユニットとにカテゴリー分類され得る。VCLユニットは、コア圧縮エンジンを含むことがあり、ブロック、マクロブロック、および/またはスライスレベルのデータを含み得る。他のNALユニットは非VCLNALユニットであり得る。いくつかの例では、通常はプライマリコード化ピクチャとして提示される、1つの時間インスタンス中のコード化ピクチャは、1つまたは複数のNALユニットを含むアクセスユニット中に含まれる。0067非VCLNALユニットは、特に、パラメータセットNALユニットとSEINALユニットとを含み得る。パラメータセットは、シーケンスパラメータセットSPS:sequenceparameterset中のシーケンスレベルヘッダ情報とピクチャパラメータセットPPS:pictureparameterset中のまれに変化するピクチャレベルヘッダ情報とを含むことがある。パラメータセットたとえば、PPSおよびSPSがある場合、まれに変化する情報をシーケンスごとまたはピクチャごとに繰り返す必要はなく、したがってコーディング効率が改善され得る。さらに、パラメータセットの使用は重要なヘッダ情報の帯域外送信を可能にし、誤り耐性のための冗長送信の必要を回避する。帯域外送信の例では、SEINALユニットなど、他のNALユニットとは異なるチャネル上でパラメータセットNALユニットが送信され得る。0068補足エンハンスメント情報SEIは、VCLNALユニットからのコード化ピクチャサンプルを復号するためには必要でないが、復号、表示、誤り耐性、および他の目的に関係するプロセスを支援する情報を含むことがある。SEIメッセージは、非VCLNALユニット中に含まれていることがある。SEIメッセージは、一部の標準規格の規範的部分であり、したがって、常に標準準拠デコーダ実装のために必須であるとは限らない。SEIメッセージは、シーケンスレベルのSEIメッセージまたはピクチャレベルのSEIメッセージであり得る。SVCの例ではスケーラビリティ情報SEIメッセージ、MVCではビュースケーラビリティ情報SEIメッセージなど、SEIメッセージ中に何らかのシーケンスレベル情報が含まれていることがある。これらの例示的なSEIメッセージは、たとえば、オペレーションポイントの抽出およびそれらのオペレーションポイントの特性に関する情報を伝達する。0069本開示の技法によれば、カプセル化ユニット30は、シーケンスレベルSEIメッセージが、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャから分離されるようにビデオファイルのデータを構成し得る。このようにして、カプセル化ユニット30は、コード化ビデオデータを含む特定のアクセスユニットからシーケンスレベルSEIメッセージを分離し得る。たとえば、カプセル化ユニット30は、たとえば、AVC、またはMVCおよびSVCなどのその拡張に従って符号化されたビデオデータのSPSデータおよびPPSデータとともに、シーケンスレベルSEIメッセージをパラメータセットエレメンタリストリーム中に含める。さらに、ビデオデータがMVCおよび/またはSVCに従って符号化される例では、カプセル化ユニット30は、サブセットSPSをパラメータセットエレメンタリストリーム中に含める。0070いくつかの例では、カプセル化ユニット30は、パラメータセットエレメンタリストリーム中にいくつかのSEIメッセージのみを配置するように構成される。たとえば、H.264/AVCの場合、カプセル化ユニット30は、パンスキャン矩形情報およびステレオビデオ情報を記述するSEIメッセージをパラメータセットエレメンタリストリーム中に含める。別の例として、SVCの場合、カプセル化ユニット30は、スケーラビリティ情報を記述するSEIメッセージをパラメータセットエレメンタリストリーム中に含め得る。さらに別の例として、MVCの場合、カプセル化ユニット30は、ビュースケーラビリティ情報、マルチビュー取得情報、およびマルチビューシーン情報を記述するSEIメッセージを含める。0071一般に、SPSおよびPPSならびに、たとえば、MVCおよびSVCのためのサブセットSPSは、シーケンスレベルSEIメッセージとともに、シーケンスデータセットと総称される。上記で説明したように、シーケンスデータセットは、パラメータセットエレメンタリストリームなどの別個のトラック中に含まれ得る。いくつかの例では、別個のパラメータトラック中にシーケンスデータセットを配置するのではなく、カプセル化ユニット30は、宛先デバイス40がHTTPパーシャルGET要求を使用してシーケンスデータセット全体を取り出すことができるように、シーケンスのシーケンスデータセットを連続的にファイル中に提示し得る。たとえば、シーケンスデータセットは、コード化ビデオデータ、たとえば、コード化ビデオピクチャの一部分またはコード化ビデオピクチャ全体を含んでいない専用のビデオサンプル中に含まれる。0072シーケンスデータセットによって記述されたビデオデータからシーケンスデータセットを分離することによって、宛先デバイス40は、シーケンスデータセットによって記述されたビデオデータとは別個にシーケンスデータセットを取り出し得る。このようにして、ソースデバイス20は、シーケンスデータセットによって記述されたビデオデータを宛先デバイス40に送信するより前に、シーケンスデータセットを宛先デバイス40に送信し得る。したがって、ソースデバイス20は、コード化ビデオピクチャを含むムービーフラグメントが宛先デバイス40に送られる前に、シーケンスデータセットを宛先デバイス40に送り得る。0073いくつかの例では、たとえば、3GPPビデオファイルの使用に関して、シーケンスデータセットは、宛先デバイス40がメディアプレゼンテーション記述子にアクセスした後に宛先デバイス40に送られ得る別個の3GPPファイル中に含まれる。すなわち、宛先デバイス40は、ビデオデータのシーケンスのメディアプレゼンテーション記述子を取り出し、次いで、ビデオデータのシーケンスのシーケンスデータセットを含む3GPPファイルを取り出し、次いで、ビデオデータ自体のシーケンスを取り出す。いくつかの例では、シーケンスデータセットは、メディアプレゼンテーション記述子自体の一部を形成する。いくつかの例では、シーケンスデータセットは、コード化ビデオデータを含んでいないムービーボックスの一部に含まれる。いくつかの例では、シーケンスデータセットは、ムービーボックスの後に配置されるムービーフラグメントを形成する。0074カプセル化ユニット30は、NALが属するプログラムを識別するヘッダ、ならびに、たとえば、オーディオデータ、ビデオデータ、あるいはNALユニットが対応するトランスポートまたはプログラムストリームを記述するデータといったペイロードを備えるNALユニットを形成し得る。たとえば、H.264/AVCでは、NALユニットは1バイトのヘッダと変動するサイズのペイロードとを含む。一例では、NALユニットヘッダは、priority_id要素と、temporal_id要素と、anchor_pic_flag要素と、view_id要素と、non_idr_flag要素と、inter_view_flag要素とを備える。従来のMVCでは、4バイトMVCNALユニットヘッダとNALユニットペイロードとを含む、プレフィックスNALユニットとMVCコード化スライスNALユニットとを除いて、H.264によって定義されたNALユニットが保持される。0075NALヘッダのpriority_id要素は、単純なワンパスonepathビットストリーム適合プロセスのために使用され得る。temporal_id要素は、異なる時間レベルが異なるフレームレートに対応する場合、対応するNALユニットの時間レベルを指定するために使用され得る。0076anchor_pic_flag要素は、ピクチャがアンカーピクチャであるか非アンカーピクチャであるかを示す。アンカーピクチャと、出力順序すなわち、表示順序でそれに続くすべてのピクチャとは、復号順序すなわち、ビットストリーム順序で前のピクチャを復号することなしに正しく復号され、したがってランダムアクセスポイントとして使用され得る。アンカーピクチャと非アンカーピクチャとは異なる依存性を有することができ、その両方はシーケンスパラメータセット中でシグナリングされる。他のフラグについては、本章の以下のセクションで説明され、使用される。そのようなアンカーピクチャはまた、オープンGOPGroupOfPicturesアクセスポイントと呼ばれることもあり、non_idr_flag要素が0に等しいとき、クローズGOPアクセスポイントもサポートされる。non_idr_flag要素は、ピクチャが瞬時デコーダリフレッシュIDR:instantaneousdecoderrefreshであるかビューIDRV-IDRピクチャであるかを示す。概して、IDRピクチャと、出力順序またはビットストリーム順序でそれに続くすべてのピクチャとは、復号順序または表示順序のいずれかで前のピクチャを復号することなしに正しく復号され得る。0077view_id要素は、ビューを識別するために使用され得るシンタックス情報を備え、それは、MVCデコーダ内でデータ対話性のために、たとえば、ビュー間予測のために、およびデコーダ外で、たとえば、レンダリングのために使用され得る。inter_view_flag要素は、対応するNALユニットが他のビューによってビュー間予測のために使用されるかどうかを指定し得る。AVCに準拠し得る、ベースビューの4バイトNALユニットヘッダ情報を搬送するために、MVCにおいてプレフィックスNALユニットが定義される。MVCのコンテキストにおいて、ベースビューアクセスユニットは、ビューの現在の時間インスタンスのVCLNALユニット、ならびにNALユニットヘッドのみを含むプレフィックスNALユニットを含む。H.264/AVCデコーダはプレフィックスNALユニットを無視し得る。0078そのペイロード中にビデオデータを含むNALユニットは、様々な粒度granularityレベルのビデオデータを備え得る。たとえば、NALユニットは、ビデオデータのブロック、マクロブロック、複数のマクロブロック、ビデオデータのスライス、またはビデオデータのフレーム全体を備える。カプセル化ユニット30は、ビデオエンコーダ28から符号化ビデオデータをエレメンタリストリームのPESパケットの形態で受信し得る。カプセル化ユニット30は、各エレメンタリストリームを対応するプログラムに関連付け得る。0079カプセル化ユニット30はまた、複数のNALユニットからアクセスユニットをアセンブルし得る。概して、アクセスユニットは、ビデオデータのフレームを表すための、ならびにそのフレームに対応するオーディオデータが利用可能であるときにそのようなオーディオデータを表すための、1つまたは複数のNALユニットを備え得る。アクセスユニットは、概して、1つの出力時間インスタンスについてすべてのNALユニット、たとえば1つの時間インスタンスについてすべてのオーディオおよびビデオデータを含む。たとえば、各ビューが20フレーム毎秒fpsのフレームレートを有する場合、各時間インスタンスは0.05秒の時間間隔に対応する。この時間間隔中に、同じアクセスユニット同じ時間インスタンスのすべてのビューについて特定のフレームが同時にレンダリングされ得る。H.264/AVCに対応する例では、アクセスユニットは、プライマリコード化ピクチャとして提示される、1つの時間インスタンス中のコード化ピクチャを備える。したがって、アクセスユニットは、共通の時間インスタンスのすべてのオーディオおよびビデオフレーム、たとえば、時間Xに対応するすべてのビューを備え得る。また、本開示では、特定のビューの符号化ピクチャをビューコンポーネントと呼ぶ。すなわち、ビューコンポーネントは、特定の時間における特定のビューの符号化ピクチャまたはフレームを備え得る。したがって、アクセスユニットは、共通の時間インスタンスのすべてのビューコンポーネントを備えるものと定義され得る。アクセスユニットの復号順序は、必ずしも出力または表示順序と同じである必要はない。0080多くのビデオコーディング規格の場合と同様に、H.264/AVCは、誤りのないビットストリームのためのシンタックスと、セマンティクスと、復号プロセスとを定義し、そのいずれも特定のプロファイルまたはレベルに準拠する。H.264/AVCはエンコーダを指定しないが、エンコーダは、生成されたビットストリームがデコーダの規格に準拠することを保証することを課される。ビデオコーディング規格のコンテキストでは、プロファイルは、アルゴリズム、機能、またはツールと、それらに適用される制約とのサブセットに対応する。たとえば、H.264規格によって定義されるプロファイルは、H.264規格によって指定されたビットストリームシンタックス全体のサブセットである。レベルは、たとえば、ピクチャの解像度、ビットレート、およびマクロブロックMB処理レートに関係するデコーダメモリおよび計算など、デコーダリソース消費の制限に対応する。プロファイルはprofile_idcプロファイルインジケータ値を用いてシグナリングされ、レベルはlevel_idcレベルインジケータ値を用いてシグナリングされ得る。0081H.264規格は、たとえば、与えられたプロファイルのシンタックスによって課される限界内で、復号されたピクチャの指定されたサイズのような、ビットストリーム中のシンタックス要素がとる値に応じて、エンコーダおよびデコーダのパフォーマンスにおける大きい変動が要求される可能性が依然としてあることを認識している。H.264規格は、さらに、多くのアプリケーションにおいて、特定のプロファイル内でシンタックスのすべての仮定的使用を処理することが可能なデコーダを実装することが現実的でも経済的でもないことを認識している。したがって、H.264規格は、ビットストリーム中のシンタックス要素の値に課された制約の指定されたセットとしてレベルを定義している。これらの制約は、値に関する単純な限界であり得る。代替的に、これらの制約は、値の演算の組合せたとえば、ピクチャ幅×ピクチャ高さ×毎秒復号されるピクチャの数に関する制約の形態をとり得る。H.264規格は、さらに、個別の実装形態が、サポートされるプロファイルごとに異なるレベルをサポートすることを規定している。0082プロファイルに準拠するデコーダは、通常、プロファイル中で定義されたすべての機能をサポートする。たとえば、コーディング機能として、Bピクチャコーディングは、H.264/AVCのベースラインプロファイルではサポートされないが、H.264/AVCの他のプロファイルではサポートされる。1つのレベルに準拠するデコーダは、当該レベルにおいて定義された制限を超えたリソースを必要としない任意のビットストリームを復号できなければならない。プロファイルおよびレベルの定義は、説明可能性のために役立ち得る。たとえば、ビデオ送信中に、プロファイル定義とレベル定義のペアが全送信セッションについてネゴシエートされ、同意される。より詳細には、H.264/AVCでは、レベルは、たとえば、処理する必要があるマクロブロックの数に関する制限と、復号されたピクチャバッファDPBサイズと、コード化ピクチャバッファCPBサイズと、垂直動きベクトル範囲と、2つの連続するMBごとの動きベクトルの最大数と、Bブロックが8×8ピクセル未満のサブマクロブロックパーティションを有することができるかどうかとを定義する。このようにして、デコーダは、デコーダがビットストリームを適切に復号することができるかどうかを決定し得る。0083パラメータセットは、概して、シーケンスパラメータセットSPS中のシーケンスレイヤヘッダ情報とピクチャパラメータセットPPS中のまれに変化するピクチャレイヤヘッダ情報とを含む。パラメータセットがある場合、このまれに変化する情報をシーケンスごとまたはピクチャごとに繰り返す必要はなく、したがってコーディング効率が改善される。さらに、パラメータセットの使用はヘッダ情報の帯域外送信を可能にし、誤り耐性を達成するための冗長送信の必要を回避できる。帯域外送信では、他のNALユニットとは異なるチャネル上でパラメータセットNALユニットが送信される。0084SVCおよびMVCの例は、スケーラブルビデオまたはマルチビュービデオのためのシーケンスパラメータセットSPS拡張を与える。SPS拡張情報は、他のNALユニットとは異なるNALユニットタイプを有する、サブSPSNALユニット中に含まれ得る。サポートされるオペレーションポイントについてのプロファイルおよびレベル情報は、SPS拡張情報を含むNALユニット中に含まれ得る。0085メディアプレゼンテーションは、異なる複数の代替表現たとえば、異なる品質をもつ複数のビデオサービスの記述を含むメディアプレゼンテーション記述MPDを含み得、記述は、たとえば、コーデック情報、プロファイル値、およびレベル値を含み得る。様々なプレゼンテーションの複数のムービーフラグメントにアクセスする方法を決定するために、宛先デバイス40はメディアプレゼンテーションのMPDを取り出す。ムービーフラグメントは、ビデオファイルのムービーフラグメントボックスmoofボックス中に配置される。0086ITU-TH.261、H.262、H.263、MPEG-1、MPEG-2およびH.264/MPEG-4part10などのビデオ圧縮規格は、時間冗長性を低減するために動き補償時間予測を利用する。エンコーダは、動きベクトルに従って現在のコード化ピクチャを予測するために、いくつかの前の本明細書ではフレームとも呼ぶ符号化ピクチャからの動き補償予測を使用する。典型的なビデオコーディングには3つの主要なピクチャタイプがある。それらは、イントラコード化ピクチャIピクチャまたはIフレームと、予測ピクチャPピクチャまたはPフレームと、双方向予測ピクチャBピクチャまたはBフレームと、である。Pピクチャは、時間順序で現在のピクチャの前の参照ピクチャのみを使用する。Bピクチャでは、Bピクチャの各ブロックは、1つまたは2つの参照ピクチャから予測され得る。これらの参照ピクチャは、時間順序で現在のピクチャの前または後に位置し得る。0087H.264コーディング規格によれば、一例として、Bピクチャは、前にコーディングされた参照ピクチャの2つのリスト、すなわち、リスト0とリスト1とを使用する。これらの2つのリストは、それぞれ、過去および/または将来のコード化ピクチャを時間順序で含むことができる。Bピクチャ中のブロックは、いくつかの方法、すなわちリスト0参照ピクチャからの動き補償予測、リスト1参照ピクチャからの動き補償予測、またはリスト0参照ピクチャとリスト1参照ピクチャの両方の組合せからの動き補償予測のうちの1つで予測され得る。リスト0参照ピクチャとリスト1参照ピクチャの両方の組合せを得るために、2つの動き補償基準エリアが、それぞれリスト0参照ピクチャおよびリスト1参照ピクチャから取得される。それらの組合せは現在のブロックを予測するために使用される。0088ITU-TH.264規格は、ルーマ成分については16×16、8×8、または4×4、およびクロマ成分については8×8など、様々なブロックサイズのイントラ予測をサポートし、ならびにルーマ成分については16×16、16×8、8×16、8×8、8×4、4×8および4×4、およびクロマ成分については対応するスケーリングされたサイズなど、様々なブロックサイズのインター予測をサポートする。本開示では、×とbyは、垂直ディメンションdimensionおよび水平ディメンションに関するブロックのピクセルディメンション、たとえば、16×16ピクセルまたは16by16ピクセルを指すために互換的に使用される。一般に、16×16ブロックは、垂直方向に16ピクセルを有しy=16、水平方向に16ピクセルを有するx=16。同様に、N×Nブロックは、一般に、垂直方向にNピクセルを有し、水平方向にNピクセルを有し、Nは、非負整数値を表す。ブロック中のピクセルは行と列に構成される。008916×16よりも小さいブロックサイズは16×16マクロブロックのパーティションと呼ばれることがある。ビデオブロックは、ピクセル領域中のピクセルデータのブロックを備え、あるいは、たとえば、離散コサイン変換DCT、整数変換、ウェーブレット変換、またはコード化ビデオブロックと予測ビデオブロックとの間のピクセル差分を表す残差ビデオブロックデータへの概念的に同様の変換などの変換を適用した後の変換領域中の変換係数のブロックを備え得る。場合によっては、ビデオブロックは、変換領域中の量子化変換係数のブロックを備え得る。0090ビデオブロックは、小さいほどより良い解像度が得られ、高い詳細レベルを含むビデオフレームの位置決めに使用され得る。一般に、マクロブロック、およびサブブロックと呼ばれることがある様々なパーティションは、ビデオブロックと見なされ得る。さらに、スライスは、マクロブロックおよび/またはサブブロックなど、複数のビデオブロックであると見なされ得る。各スライスはビデオフレームの単独で復号可能なユニットであり得る。代替的に、フレーム自体が復号可能なユニットであるか、またはフレームの他の部分が復号可能なユニットとして定義され得る。コード化ユニットまたはコーディングユニットという用語は、フレーム全体、フレームのスライス、シーケンスとも呼ばれるピクチャグループGOPのようなビデオフレームの単独で復号可能な任意のユニット、または、適用可能なコーディング技法に従って定義される別の単独で復号可能なユニットを指すことがある。0091マクロブロックという用語は、16×16ピクセルを備える2次元ピクセルアレイに従ってピクチャおよび/またはビデオデータを符号化するためのデータ構造を指す。各ピクセルはクロミナンス成分と輝度成分とを備える。したがって、マクロブロックは、各々が8×8ピクセルの2次元アレイを備える4つの輝度ブロックと、各々が16×16ピクセルの2次元アレイを備える2つのクロミナンスブロックと、コード化ブロックパターンCBP、符号化モードたとえば、イントラIまたはインターPまたはB符号化モード、イントラ符号化ブロックのパーティションのパーティションサイズたとえば、16×16、16×8、8×16、8×8、8×4、4×8、または4×4、あるいはインター符号化マクロブロックのための1つまたは複数の動きベクトルなどのシンタックス情報を備えるヘッダと、を定義し得る。0092ビデオエンコーダ28、ビデオデコーダ48、オーディオエンコーダ26、オーディオデコーダ46、カプセル化ユニット30、およびカプセル化解除ユニット38は、それぞれ、適用可能なとき、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサDSP、特定用途向け集積回路ASIC、フィールドプログラマブルゲートアレイFPGA、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなどの様々な好適な処理回路のいずれか、またはそれらの任意の組合せとして実装され得る。ビデオエンコーダ28およびビデオデコーダ48の各々は1つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ/デコーダコーデックの一部として統合され得る。同様に、オーディオエンコーダ26およびオーディオデコーダ46の各々は1つまたは複数のエンコーダまたはデコーダ中に含められ得、そのいずれかは複合CODECの一部として統合され得る。ビデオエンコーダ28、ビデオデコーダ48、オーディオエンコーダ26、オーディオデコーダ46、カプセル化ユニット30、および/またはカプセル化解除ユニット38を含む装置は、集積回路、マイクロプロセッサ、および/またはセルラー電話などのワイヤレス通信デバイスを備え得る。0093カプセル化ユニット30が、受信したデータに基づいてNALユニットおよび/またはアクセスユニットをビデオファイルにアセンブルした後、カプセル化ユニット30はビデオファイルを出力のために出力インターフェース32に渡す。いくつかの例では、カプセル化ユニット30は、ビデオファイルをローカルに記憶するか、またはビデオファイルを直接宛先デバイス40に送るのではなく、出力インターフェース32を介してビデオファイルをリモートサーバに送る。出力インターフェース32は、たとえば、送信機、トランシーバ、たとえば、オプティカルドライブ、磁気メディアドライブたとえば、フロッピー登録商標ドライブなど、コンピュータ可読媒体にデータを書き込むためのデバイス、ユニバーサルシリアルバスUSBポート、ネットワークインターフェース、または他の出力インターフェースを備える。出力インターフェース32は、ビデオファイルを、たとえば、送信信号、磁気メディア、光メディア、メモリ、フラッシュドライブ、または他のコンピュータ可読媒体など、コンピュータ可読媒体34に出力する。0094最終的に、入力インターフェース36はコンピュータ可読媒体34からデータを取り出す。入力インターフェース36は、たとえば、オプティカルドライブ、磁気メディアドライブ、USBポート、受信機、トランシーバ、または他のコンピュータ可読媒体インターフェースを備える。入力インターフェース36は、NALユニットまたはアクセスユニットをカプセル化解除ユニット38に与える。カプセル化解除ユニット38は、ビデオファイルの要素を構成PESストリームにカプセル化解除し、符号化データを取り出すためにPESストリームをパケット化解除し、たとえば、ストリームのPESパケットヘッダによって示されるように、符号化データがオーディオの一部であるのかビデオストリームの一部であるのかに応じて、符号化データをオーディオデコーダ46またはビデオデコーダ48に送る。オーディオデコーダ46は、符号化オーディオデータを復号し、復号されたオーディオデータをオーディオ出力42に送り、ビデオデコーダ48は、符号化ビデオデータを復号し、ストリームの複数のビューを含み得る復号されたビデオデータをビデオ出力44に送る。0095さらに、カプセル化解除ユニット38は、PPSデータ、SPSデータ、および/またはシーケンスレベルSEIメッセージを含み得る復号シーケンスデータセットをビデオ出力44に送り得る。ビデオ出力44は、シーンの単一のビューまたはシーンの複数のビューを使用するディスプレイ、たとえば、同時に、または高速に交互に連続してシーンの各ビューを提示するステレオスコープstereoscopicディスプレイまたはオートステレオスコープautostereoscopicディスプレイを備えることができる。ビデオ出力44は、復号されたビデオピクチャを表示するためにシーケンスデータセットを使用し得る。シーケンスレベルSEIメッセージは、復号プロセスを支援するためにも使用され得るが、SEIメッセージは、ビデオシーケンスのサンプルを適切に復号するために必要とされない。したがって、ビデオデコーダ48は、ビデオファイルのビデオサンプルを復号するときに、シーケンスレベルSEIメッセージをも使用し得る。0096上記のように、SEIメッセージは様々な目的のために使用され得る。たとえば、シーケンスレベルSEIメッセージは、表示されたときにビデオデータを様々なスクリーンサイズに適応するように調整するためのパンアンドスキャン情報を記述する。したがって、ビデオ出力44または、それの制御ユニットは、ビデオ出力44によって表示されるようにビデオデータを調整するために、シーケンスレベルSEIメッセージを使用し得る。0097別の例として、シーケンスレベルSEIメッセージはステレオビデオ情報を記述し得る。すなわち、シーケンスレベルSEIメッセージは、どのピクチャが3次元ビデオアプリケーションのための左画像であるか、または右画像であるかを記述し得る。したがって、ビデオ出力44は、どのように3次元ビデオデータを提示すべきかを判断するために、シーケンスレベルSEIメッセージを使用し得る。たとえば、ビデオ出力44は、光の様々な偏光を使用して、または様々なカラーフィルタたとえば、赤および緑を用いて、左画像と右画像とを表示するか、あるいは、ビデオ出力44に関連付けられたアクティブ眼鏡が、光を通すレンズが交互に変わるように、左画像と右画像とが交互に高速に変わる。0098さらに別の例として、たとえば、ビデオファイルがSVCまたはMVCに従って構築される例では、シーケンスレベルSEIメッセージはスケーラビリティ情報を与える。したがって、ビデオデコーダ48は、エンハンスメントレイヤ情報が受信されたかどうかを決定するために、したがって、受信したエンハンスメントレイヤデータを使用すべきかどうかを決定するために、またはベースレイヤビデオデータをアップサンプリングするために値を補間すべきかを決定するために、シーケンスレベルSEIメッセージを使用し得る。0099別の例として、たとえば、ビデオファイルがMVCに従って構築される例では、シーケンスレベルSEIメッセージは、マルチビュー取得情報またはマルチビューシーン情報を与え得る。一般に、マルチビュー取得情報SEIメッセージは、たとえば、内部および外部カメラパラメータ、ビューの数、焦点距離、主点、スキューファクタ、回転パラメータ、および/または変換パラメータなどの収集環境のパラメータを指定する。マルチビューシーン情報SEIメッセージは、複数のビューがキャプチャされるときの、それらのビュー間の最大視差を指定し得る。この情報は、3次元ビデオデータを復号および/またはレンダリングするときに、たとえば、既存の画像から追加の画像を構築するときに、ビデオデコーダ48および/またはビデオ出力44によって使用され得る。マルチビューシーン情報はまた、1つまたは複数のカメラの特性、または、たとえば、最高1024個のビューのカメラ設定によって生じる最大視差がどのくらいかなど、画像収集中の状態を記述し得る。マルチビューシーン情報はまた、カメラキャリブレーションおよび修正に関係する詳細を与え得る。00100図2は、例示的なカプセル化ユニット30の構成要素を示すブロック図である。図2の例では、カプセル化ユニット30は、ビデオ入力インターフェース80と、オーディオ入力インターフェース82と、ビデオファイル作成ユニット60と、ビデオファイル出力インターフェース84とを含む。この例では、ビデオファイル作成ユニット60は、ネットワークアブストラクションレイヤNALユニットコンストラクタ62と、SEIメッセージ抽出ユニット64と、シーケンスデータセット作成ユニット66とを含む。00101ビデオ入力インターフェース80およびオーディオ入力インターフェース82は、それぞれ符号化ビデオデータおよび符号化オーディオデータを受信する。ビデオ入力インターフェース80およびオーディオ入力インターフェース82は、データが符号化されると、符号化ビデオデータおよび符号化オーディオデータを受信するか、または符号化ビデオデータおよび符号化オーディオデータをコンピュータ可読媒体から取り出し得る。符号化ビデオデータおよび符号化オーディオデータを受信すると、ビデオ入力インターフェース80およびオーディオ入力インターフェース82は、ビデオファイルにアセンブルするために符号化ビデオデータおよび符号化オーディオデータをビデオファイル作成ユニット60に受け渡す。00102ビデオファイル作成ユニット60は、それによる機能およびプロシージャを実行するように構成されたハードウェア、ソフトウェア、および/またはファームウェアを含む制御ユニットに対応し得る。制御ユニットは、概して、カプセル化ユニット30による機能をさらに実行し得る。ビデオファイル作成ユニット60がソフトウェアおよび/またはファームウェアで実施される例では、カプセル化ユニット30は、ビデオファイル作成ユニット60のための命令を備えるコンピュータ可読媒体と、命令を実行するための処理ユニットとを含み得る。ビデオファイル作成ユニット60のサブユニットこの例では、NALユニットコンストラクタ62、SEIメッセージ抽出ユニット64、およびシーケンスデータセット作成ユニット66の各々は、個々のハードウェアユニットおよび/またはソフトウェアモジュールとして実装され、機能的に統合されるか、または追加のサブユニットにさらに分離され得る。ビデオファイル作成ユニット60は、たとえば、1つまたは複数のマイクロプロセッサ、特定用途向け集積回路ASIC、フィールドプログラマブルゲートアレイFPGA、デジタル信号プロセッサDSP、またはそれらの任意の組合せなど、任意の好適な処理ユニットまたは処理回路に対応し得る。ビデオファイル作成ユニット60は、NALユニットコンストラクタ62、SEIメッセージ抽出ユニット64、およびシーケンスデータセット作成ユニット66のいずれかまたはすべてのための命令を記憶する非一時的コンピュータ可読媒体、ならびに命令を実行するためのプロセッサをさらに含み得る。00103概して、ビデオファイル作成ユニット60は、受信したオーディオおよびビデオデータを含むビデオファイルを作成し得る。NALユニットコンストラクタ62は、符号化ビデオおよびオーディオサンプルを含むNALユニットを形成し得る。ビデオファイル作成ユニット60は、特定の時間インスタンスについてのすべてのNALユニットを含むアクセスユニットをアセンブルするようにさらに構成され得る。さらに、ビデオファイル作成ユニット60は、シーケンスレベルSEIメッセージによって記述された符号化されたビデオピクチャからシーケンスレベルSEIメッセージを分離し、シーケンスレベルSEIメッセージによって記述された符号化されたビデオピクチャとは別個に、シーケンスレベルSEIメッセージを作成されたビデオファイルに記憶するように構成され得る。00104ビデオエンコーダ28図1は、ビデオデータのサンプルとともにSEIメッセージを含み得る。いくつかの個々のサンプルのためのビデオエンコーダ28から受信したSEIメッセージは、場合によっては、サンプルの各々のためのSEIメッセージと同じである。したがって、個々のサンプルのためのSEIメッセージがサンプルの各々のためのSEIメッセージと同じまたはまったく同様であると判断すると、SEIメッセージ抽出ユニット64は、サンプルの各々のための同じSEIメッセージを送信するのではなく、SEIメッセージによって記述されたサンプルからSEIメッセージを分離し得る。2つ以上の符号化されたビデオピクチャに関係し得るそのようなSEIメッセージは、シーケンスレベルSEIメッセージと呼ばれることがある。00105追加または代替として、ビデオファイル作成ユニット60は、コード化ビデオピクチャのシーケンスのためのシーケンスレベルSEIメッセージを生成するように構成され得る。このようにして、ビデオファイル作成ユニット60は、シーケンスレベルSEIメッセージを生成し得るか、またはビデオサンプルのうちの1つまたは複数を記述するシーケンスレベルSEIメッセージを形成するためにビデオサンプルから既存のSEIメッセージを分離し得る。00106シーケンスデータセット作成ユニット66は、ビデオファイル作成ユニット60によって生成されたビデオファイルのシーケンスデータセットを作成し得る。シーケンスデータセット作成ユニット66は、シーケンスレベルSEIメッセージをシーケンスパラメータセットおよび/またはピクチャパラメータセットデータとともにグループ化し得る。たとえば、シーケンスデータセット作成ユニット66は、SPSと、PPSと、いくつかの例では、たとえば、SVCおよびMVCに関してサブセットSPSとを含むパラメータセットエレメンタリストリーム中に、シーケンスレベルSEIメッセージを含める。別の例として、シーケンスデータセット作成ユニット66は、コード化ビデオピクチャのシーケンスのシーケンスレベルSEIメッセージを、作成されたビデオファイルの連続セクション中に含める。すなわち、シーケンスデータセット作成ユニット66は、コード化ビデオピクチャの特定のシーケンスのためのシーケンスレベルSEIメッセージについてのデータが、連続する一連の1つまたは複数のバイト中に一緒にグループ化されることを保証し得る。たとえば、シーケンスデータセット作成ユニット66は、シーケンスレベルSEIメッセージとシーケンスデータセットについての他のデータとを、コード化ビデオピクチャのどの部分も含んでいない特定のビデオサンプル中にアセンブルする。00107別の例として、たとえば、3GPPに関して、シーケンスデータセット作成ユニット66は、コード化ビデオピクチャのシーケンスについてのシーケンスデータセットを、シーケンスデータセットによって記述されたコード化ビデオピクチャのシーケンスを含む1つまたは複数の3GPPファイルに先行する比較的小さい3GPPファイル中にアセンブルする。代替的に、シーケンスデータセット作成ユニット66は、シーケンスデータセットを、1つまたは複数の3GPPファイルを含む1つまたは複数の関係するプレゼンテーションのメディアプレゼンテーション記述MPDファイル中に含め得る。00108さらに別の例として、シーケンスデータセット作成ユニット66は、ムービーボックスmoovボックスがコード化ビデオピクチャを含まないとき、ビデオファイルのムービーボックス内にシーケンスデータセットを含める。別の例として、シーケンスデータセット作成ユニット66は、ビデオファイルのムービーボックスmoovボックスの後であるが、コード化ビデオピクチャを含む任意のムービーフラグメントボックスmoofボックスの前に発生するシーケンスデータセットをムービーフラグメントボックス内に含める。00109SPS、PPS、シーケンスレベルSEIメッセージ、および/またはサブセットSPSをシーケンスデータセット中にグループ化することによって、シーケンスデータセット作成ユニット66は、シーケンスデータを宛先デバイス40などのクライアントデバイスに与えるタスクを簡略化し得る。このようにして、シーケンスレベルSEIメッセージは、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャが宛先デバイス40に送信される前に、宛先デバイス40に送信され得る。00110一般に、シーケンスデータセットのSPS、PPS、およびシーケンスレベルSEIメッセージは、シーケンスデータセットによって記述されたビデオサンプルのシーケンスについて一定のままであると予想される。しかしながら、場合によっては、SPS、PPS、および/またはシーケンスレベルSEIメッセージのいくつかの部分は、個々のコード化ビデオピクチャについて、あるいはコード化ビデオピクチャのセットまたはサブシーケンスについてわずかに変動し得る。たとえば、いくつかのコード化ビデオピクチャをカプセル化するビデオファイル中には、SPS、PPS、またはシーケンスレベルSEIメッセージの同じ情報を必ずしも共有しない1つまたは複数のシーケンスが存在する。00111このとき、シーケンスデータセット作成ユニット66は複数のパラメータセットトラックを作成し得、各トラックは、SPS、PPS、および/またはSEIメッセージのセット、ならびにトラックのシーケンスデータセットが当てはまるときを示すタイミング情報のインジケーションを含み得る。たとえば、タイミング情報は、トラックがビデオシーケンスに当てはまり始める時間を示すビデオシーケンスの開始時間、および/またはタイミング情報を含むトラックがもはや当てはまらないビデオシーケンスの終了時間を示し得る。代替的に、各トラックについてのタイミング情報は終了時間だけを示し得、それにより、特定のパラメータセットトラックの終了時間に達すると、クライアントデバイスは、次のパラメータセットトラックにジャンプし得る。そのようなタイミング情報は、協定世界時UTCcoordinateduniversaltimeに対応するか、またはパラメータセットトラックが、ファイルカプセル化フォーマットのビデオ全体のために使用される時間スケールに当てはまる終了時間の最後のビデオサンプルの持続時間に対応し得る。00112複数のパラメータセットトラックのうちの1つは、ビデオファイルのすべてのサンプルに当てはまり得る。シーケンスデータセット作成ユニット66は、パラメータセットトラックについてのタイミング情報を、任意のムービーサンプルまたはムービーフラグメントよりも後のUTC時間に設定することによって、ビデオファイルのすべてのサンプルに当てはまるパラメータセットトラックを示し得る。代替的に、シーケンスデータセット作成ユニット66は、ビデオファイルのすべてのサンプルに当てはまるパラメータセットトラックについてのタイミング情報について、持続時間0を示し得る。00113シーケンスデータセット作成ユニット66が複数のパラメータセットトラックを作成する例では、シーケンスデータセット作成ユニット66は、パラメータセットトラックの各々にそれぞれの一意の識別子を割り当て得る。宛先デバイス40などのクライアントデバイスが、たとえば、ローカル再生によって、またはHTTPストリーミング中に、特定の時間ロケーションをシークするように要求するとき、宛先デバイス40は、いくつかのパラメータセットトラックのうちのどのパラメータセットトラックが、シークされた時間ロケーションに当てはまるかを判断し得る。クライアントデバイスは、それぞれのパラメータセットトラックがシークされた時間ロケーションよりも後のビデオサンプルに当てはまることを示すタイミング情報を有するパラメータセットトラックの識別子を要求し得る。サーバたとえば、ソースデバイス20は、関係するパラメータセットトラックが、たとえば、HTTPストリーミングのコンテキスト中でクライアントに配信されることを保証するために、そのような関係するパラメータセットトラックをマークするようにデータ構造を維持し得る。ローカル再生中、クライアントは、関係するパラメータセットトラックがクライアントデバイスによってパースされることを保証するために、同様のデータ構造を維持し得る。00114その上、いくつかのパラメータセットトラックを含めるのではなく、シーケンスデータセット作成ユニット66は、各々がファイル内に連続的に記憶される得るいくつかのシーケンスデータセットをビデオファイル中に含め得る。すなわち、シーケンスデータセットの各々は、シーケンスデータセットのうちの特定のシーケンスデータセットについてのすべてのデータが連続するように連続的に記憶され得るが、シーケンスデータセットは互いに連続的に記憶される必要はない。たとえば、シーケンスデータセット作成ユニット66は、シーケンスデータセットが関係する一連のフラグメントに先行するビデオフラグメントにシーケンスデータセットを記憶し、その一連のフラグメントの後に新しいシーケンスデータセットを記憶する。新しいシーケンスデータセットは、新しいシーケンスデータセットを記憶しているフラグメントに続く他のビデオフラグメントに関係し得る。複数のシーケンスデータセットをファイルに記憶するとき、シーケンスデータセット作成ユニット66は、シーケンスデータセットの各々についてのタイミング情報、ならびにシーケンスデータセットの各々についての一意の識別子を与え得る。00115ビデオファイル作成ユニット60が、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャから分離されたシーケンスレベルSEIメッセージを含むビデオファイルを生成した後、ビデオファイル作成ユニット60は、そのビデオファイルをビデオファイル出力インターフェース84に渡す。ビデオファイル出力インターフェース84は、たとえば、ソースデバイス20の出力インターフェース32に、ビデオファイルを出力する。いくつかの例では、ビデオファイル出力インターフェース84は、ビデオファイルをソースデバイス20の記憶媒体図示せずに出力する。ビデオファイルは、ソースデバイス20内にローカルに記憶され、DVD、ブルーレイ登録商標ディスク、フラッシュドライブ、フロッピー登録商標ディスクなどのポータブル記憶媒体、または他のポータブル記憶媒体に記憶され、たとえば、HTTPストリーミングなどのストリーミングプロトコルに従って、ネットワークを介して出力され、または場合によっては、ビデオファイルが宛先デバイス40などのクライアントデバイスによって受信され得るような方法で出力され得る。このようにして、ビデオデータ、たとえば、シーケンスレベルSEIメッセージおよびシーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャの出力は、ビデオデータの記憶、転送、送信、およびブロードキャストを含み得る。00116図3は、様々なロケーションにおけるシーケンスレベルSEIメッセージを含み得る例示的なビデオファイル100の要素を示すブロック図である。上記で説明したように、ISOベースメディアファイルフォーマットおよびそれの拡張によるビデオファイルは、データをボックスと呼ばれる一連のオブジェクトに記憶する。図3の例では、ビデオファイル100は、ファイルタイプFTYPボックス102と、ムービーMOOVボックス104と、ムービーフラグメントMOOFボックス112と、ムービーフラグメントランダムアクセスMFRAボックス114とを含む。00117ファイルタイプボックス102は、概して、ビデオファイル100のためのファイルタイプを記述する。ファイルタイプボックス102は、ビデオファイル100のための最も良い使用を記述する仕様を識別するデータを含み得る。ファイルタイプボックス102は、MOOVボックス104、ムービーフラグメントボックス112、およびMFRAボックス114の前に配置され得る。00118MOOVボックス104は、図3の例では、ムービーヘッダMVHDボックス106と、トラックTRAKボックス108と、1つまたは複数のムービーエクステンドMVEXボックス110とを含む。概して、MVHDボックス106は、ビデオファイル100の一般的な特性を記述し得る。たとえば、MVHDボックス106は、ビデオファイル100が最初に作成されたとき、ビデオファイル100が最後に変更されたときに記述するデータ、ビデオファイル100のための時間スケール、ビデオファイル100のための再生の持続時間、またはビデオファイル100を概して記述する他のデータを含み得る。00119TRAKボックス108は、ビデオファイル100のトラックのためのデータを含み得る。TRAKボックス108は、TRAKボックス108に対応するトラックの特性を記述するトラックヘッダTKHDボックスを含み得る。いくつかの例では、TRAKボックス108はコード化ビデオピクチャを含むが、他の例では、トラックのコード化ビデオピクチャは、TRAKボックス108のデータによって参照され得るムービーフラグメント112中に含まれる。00120いくつかの例では、ビデオファイル100は2つ以上のトラックを含む。したがって、MOOVボックス104は、ビデオファイル100中のトラックの数に等しいいくつかのTRAKボックスを含み得る。TRAKボックス108は、ビデオファイル100の対応するトラックの特性を記述し得る。たとえば、TRAKボックス108は、対応するトラックのための時間および/または空間情報を記述し得る。MOOVボックス104のTRAKボックス108と同様のTRAKボックスは、カプセル化ユニット30図1がビデオファイル100などのビデオファイル中のパラメータセットトラックを含むとき、パラメータセットトラックの特性を記述し得る。カプセル化ユニット30は、パラメータセットトラックを記述しているTRAKボックス内のパラメータセットトラック中のシーケンスレベルSEIメッセージの存在をシグナリングし得る。00121MVEXボックス110は、ビデオファイル100が、たとえば、もしあれば、MOOVボックス104内に含まれたビデオデータに加えて、ムービーフラグメント112を含むことをシグナリングするために、対応するムービーフラグメント112の特性を記述し得る。ビデオデータをストリーミングするコンテキストでは、コード化ビデオピクチャは、MOOVボックス104中ではなくムービーフラグメント112中に含まれ得る。したがって、すべてのコード化ビデオピクチャは、MOOVボックス104中ではなく、ムービーフラグメント112中に含まれ得る。00122MOOVボックス104は、ビデオファイル100中のムービーフラグメント112の数に等しいいくつかのMVEXボックス110を含み得る。MVEXボックス110の各々は、ムービーフラグメント112のうちの対応する1つの特性を記述し得る。たとえば、各MVEXボックスは、ムービーフラグメント112のうちの対応する1つについての持続時間を記述するムービーエクステンドヘッダMEHDボックスを含む。00123上記のように、カプセル化ユニット30は、実際のコード化ビデオデータを含まないビデオサンプルにシーケンスデータセットを記憶し得る。ビデオサンプルは、概して、特定の時間インスタンスにおけるコード化ピクチャの表現であるアクセスユニットに対応し得る。AVCのコンテキストでは、コード化ピクチャは、アクセスユニットおよび他の関連する非VCLNALユニットのすべてのピクセルを構築するためのSEIメッセージなどの情報を含んでいる1つまたは複数のVCLNALユニットを含む。したがって、カプセル化ユニット30は、シーケンスレベルSEIメッセージを含み得るシーケンスデータセットをムービーフラグメント112のうちの1つ中に含め得る。カプセル化ユニット30は、ムービーフラグメント112のうちの1つに対応するMVEXボックス110のうちの1つ内のムービーフラグメント112のうちの1つ中に存在するときの、シーケンスデータセットおよび/またはシーケンスレベルSEIメッセージの存在をさらにシグナリングし得る。00124ムービーフラグメント112は1つまたは複数のコード化ビデオピクチャを含み得る。いくつかの例では、ムービーフラグメント112は、各々がいくつかのコード化ビデオピクチャ、たとえば、フレームまたはピクチャを含み得る1つまたは複数のピクチャグループGOPを含む。さらに、上記で説明したように、ムービーフラグメント112は、いくつかの例ではシーケンスデータセットを含む。ムービーフラグメント112の各々は、ムービーフラグメントヘッダMFHDボックスを含み得る。MVHDボックスは、ムービーフラグメントについてのシーケンス番号など、対応するムービーフラグメントの特性を記述し得る。ムービーフラグメント112は、ビデオファイル100中のシーケンス番号の順に含まれ得る。00125MFRAボックス114は、ビデオファイル100のムービーフラグメント112内のランダムアクセスポイントを記述し得る。これは、ビデオファイル100内の特定の時間ロケーションのシークを実行するのを支援し得る。MFRAボックス114は、概してオプションであり、ビデオファイル中に含まれる必要はない。同様に、宛先デバイス40などのクライアントデバイスは、ビデオファイル100のビデオデータを正しく復号し、表示するために必ずしもMFRAボックス114を参照する必要があるとは限らない。MFRAボックス114は、ビデオファイル100のトラックの数に等しいか、またはいくつかの例では、ビデオファイル100のメディアトラックたとえば、非ヒントトラックの数に等しい数のトラックフラグメントランダムアクセスTFRAボックスを含み得る。00126図4は、シーケンスレベルSEIメッセージ156を含んでいるパラメータセットトラック146を含む別の例示的なビデオファイル140の要素を示すブロック図である。特に、ビデオファイル140は、MOOVボックス142とMDATボックス150とを含む。ビデオファイル140は、とりわけ、ファイルタイプボックスおよび/またはMFRAボックスなどの他のボックスをさらに含み得る。00127図4の例では、MOOVボックス142は、ビデオデータトラック144と、パラメータセットトラック146とを含む。パラメータセットトラック146は、ピクチャパラメータセットPPS152と、シーケンスパラメータセットSPS154と、シーケンスレベル補足エンハンスメント情報SLSEIメッセージ156とに対応する。ビデオデータトラック144はビデオフラグメント160A~160Nビデオフラグメント160に対応する。概して、ビデオフラグメント160は、各々、1つまたは複数のコード化ビデオピクチャを含み得る。00128図4の例では、PPS152、SPS154、シーケンスレベルSEIメッセージ156、およびビデオフラグメント160についてのデータがMDATボックス150に記憶されている。PPS152、SPS154、およびシーケンスレベルSEIメッセージ156はシーケンスパラメータセットと総称され得る。いくつかの例では、パラメータセットトラック146は2つ以上のピクチャパラメータセットを含む。PPS152、SPS154、およびシーケンスレベルSEIメッセージ156は、概して、ビデオフラグメント160の特性を記述する。これらの特性は、ビデオフラグメント160を選択、復号および/またはレンダリングする際に、宛先デバイス40などのクライアントデバイスを支援し得る。00129一例として、ビデオファイル140がAVCファイルフォーマットに対応するとき、シーケンスレベルSEIメッセージ156は、パンスキャン矩形SEIメッセージ、ステレオビデオ情報SEIメッセージ、および/またはフレームパッキング配置SEIメッセージのうちの1つまたは複数を含み得る。別の例として、ビデオファイル140がSVCファイルフォーマットに対応するとき、シーケンスレベルSEIメッセージ156はスケーラビリティ情報SEIメッセージを含み得る。別の例として、ビデオファイル140がMVCファイルフォーマットに対応するとき、シーケンスレベルSEIメッセージ156は、ビュースケーラビリティ情報SEIメッセージ、マルチビュー取得情報SEIメッセージ、および/またはマルチビューシーン情報SEIメッセージのうちの1つまたは複数を含み得る。00130ビデオファイルは、ビデオデータトラック144と同様のいくつかのメディアトラックを含み得る。ビデオデータトラックの各々は、様々な復号要件および/またはレンダリング要件に対応し得る様々な特性を有し得る。宛先デバイス40は、特に、シーケンスデータセットによってシグナリングされるメディアトラックについてのビデオフラグメントの特性に基づいて、メディアトラックのうちの1つを選択し得る。たとえば、宛先デバイス40は、それぞれビデオデコーダ48およびビデオ出力44の復号能力および/またはレンダリング能力に基づいて、トラックのうちの1つを選択し得る。宛先デバイス40は、PPS152とSPS154とシーケンスレベルSEIメッセージ156とを含むパラメータセットトラック146に基づいて、ビデオフラグメント160の特性を判断し得る。00131宛先デバイス40は、シーケンスパラメータセットによって記述された任意のコード化サンプルの前に、シーケンスパラメータセット、たとえば、MOOVボックス104、シーケンスパラメータセットを含むムービーフラグメント112のうちの1つ、シーケンスパラメータセットを含むがコード化ビデオデータを含まないビデオサンプル、またはビデオファイル100の他の要素を取り出すように構成され得る。追加または代替として、ソースデバイス20は、シーケンスパラメータセットによって記述された任意のコード化ビデオピクチャを宛先デバイス40に与える前に、シーケンスパラメータセットを宛先デバイス40に与えるように構成され得る。その上、ソースデバイス20は、宛先デバイス40からのムービーフラグメント112のうちの1つについての要求を、宛先デバイス40がムービーフラグメント112のうちの要求された1つについてのシーケンスデータセットの最初に要求されたデータを持っていないときに、拒否するように構成され得る。00132図5は、それぞれのプレゼンテーションのためのそれぞれのシーケンスデータセットを含む3GPPファイル186、194を含むプレゼンテーション182、190の例示的なセット198を示すブロック図である。すなわち、セット198は追加のプレゼンテーションを含み得るが、図5には例として2つのプレゼンテーション182、190が示されている。00133メディアプレゼンテーション記述MPD180は、セット198のプレゼンテーション、たとえば、プレゼンテーション182、190を記述するデータを含む。MPD180は、たとえば、プレゼンテーションのユニフォームリソースロケータURLおよび/またはユニフォームリソースネームURNを記述し得る。MPD180は、セット198中のプレゼンテーションの各々の特性をさらに記述し得る。たとえば、MPD180は、プレゼンテーションの各々についてのシーケンスデータセットを含み得る。MPD180は、プレゼンテーションの各々に記憶された3GPPビデオファイルの数も記述し得る。00134図5の例では、プレゼンテーション182は、ヘッダデータ184と、シーケンスデータセットをもつ3GPPファイル186と、3GPPファイル188A~188N3GPPファイル188とを含む。同様に、この例では、プレゼンテーション190は、ヘッダデータ192と、シーケンスデータセットをもつ3GPPファイル194と、3GPPファイル196A~196N3GPPファイル196とを含む。文字Nは、3GPPファイル188と3GPPファイル196の両方についてのカーディナリティを指定するために使用されるが、Nは、プレゼンテーション182および190について必ずしも同じであるとは限らない。すなわち、プレゼンテーション182およびプレゼンテーション190、ならびにセット198のプレゼンテーションのいずれかには、異なる数の3GPPファイルが存在し得る。00135ヘッダデータ184は、プレゼンテーション182のいくつかの特性、たとえば、プレゼンテーション182中の3GPPファイルの数、3GPPファイル188の各々の始端に対応するメモリアドレス、たとえば、バイト単位の3GPPファイル188の長さ、たとえば、秒単位、分単位などの3GPPファイル188の持続時間、3GPPファイル188を適切に復号およびレンダリングするためのクライアントデバイスの予想される復号能力および/またはレンダリング能力、あるいは他のデータを記述し得る。プレゼンテーション182は、たとえば、ISOベースメディアファイルフォーマット規格、および/または3GPP規格などのそれの拡張によって記述される追加のデータを含み得る。3GPPファイル188はコード化ビデオピクチャを含み得る。シーケンスデータセットをもつ3GPPファイル186は、たとえば、3GPPファイル188のうちの1つまたは複数に含まれるコード化ビデオピクチャのシーケンスのコード化ビデオピクチャを記述するシーケンスデータセットを含む。00136図5の例では、セット198のプレゼンテーションは、ビデオデータの同じシーケンスの様々なプレゼンテーションに対応し得る。すなわち、プレゼンテーションの各々は、再生中に、たとえば、復号およびレンダリングされるときに同様であり得る。ただし、ビデオデータは、セット198の様々なプレゼンテーション内で別様にコーディングまたは提示され得る。たとえば、プレゼンテーション190のビデオサンプルは、より高いまたはより低い解像度を有し、より高いまたはより低いビットレートで符号化され、特定のデコーダバッファサイズを予定し、特定のフレームレートを有し、特定のマクロブロック復号レートを予定し、あるいは他の特性に基づいて互いに区別され得る。カプセル化ユニット30図1などのカプセル化ユニットは、プレゼンテーション182の3GPPファイル186およびプレゼンテーション190の3GPPファイル194など、プレゼンテーション内の3GPPファイル中にシーケンスデータセットを配置し得る。追加または代替として、カプセル化ユニット30は、セット198の1つまたは複数のプレゼンテーションについてのシーケンスデータをMPD180に記憶し得る。00137図6は、ビデオファイル内にシーケンスデータセットをカプセル化し、そのビデオファイルをソースデバイスから宛先デバイスに与えるための例示的な方法を示すフローチャートである。例および説明のために、ソースデバイス20および宛先デバイス40図1の構成要素に関して説明するが、任意の好適なデバイスが図6の技法を実装し得ることを理解されたい。00138初めに、カプセル化ユニット30は、符号化されたビデオピクチャのシーケンスを受信する210。ビデオエンコーダ28などのエンコーダは、コード化サンプルとともにシーケンスレベルSEIメッセージを含んでいることがある。追加または代替として、カプセル化ユニット30は、ビデオエンコーダ28とは別個にシーケンスレベルSEIメッセージを作成し得る。いずれの場合も、カプセル化ユニット30は、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャからシーケンスレベルSEIメッセージを分離する212。00139すなわち、カプセル化ユニット30は、シーケンスレベルSEIメッセージと、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャとを含むビデオファイルを作成する214。ただし、そうする際に、カプセル化ユニット30は、シーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャとは別個にシーケンスレベルSEIメッセージを記憶し得る。このようにすると、SEIメッセージは、コード化ビデオピクチャとは別個に送信および処理され得る。たとえば、本開示の技法によれば、カプセル化ユニット30は、作成されたビデオファイルのパラメータセットトラックにシーケンスレベルSEIメッセージを記憶し得る。別の例として、カプセル化ユニット30は、コード化ビデオピクチャを含まないトラックフラグメント中のシーケンスレベルSEIメッセージ、コード化ビデオピクチャを含まない別の3GPPファイル、およびコード化ビデオピクチャと同様であるが実際にはコード化ビデオデータを含まないデータ構造を、ビデオファイルを記述するメディアプレゼンテーション記述に記憶し、あるいは場合によってはシーケンスレベルSEIメッセージによって記述されたコード化ビデオピクチャからシーケンスレベルSEIメッセージを分離し得る。00140カプセル化ユニット30は、次いでビデオファイルを出力する216。たとえば、カプセル化ユニット30は、ソースデバイス20に、たとえば、光ディスク、フロッピー登録商標ディスク、フラッシュドライブ、ハードドライブ、ソリッドステートドライブ、または他の記憶媒体などの記憶媒体に、ビデオファイルを書き込ませ得る。そのような記憶媒体は宛先デバイス40に物理的に移送され得る。代替的に、ソースデバイス20は、たとえば、ブロードキャスト、ネットワーク送信、または他の送信技法によって、ビデオファイルを宛先デバイス40に送信し得る。いずれの場合も、宛先デバイス40は、最終的にビデオファイルを受信する218。00141いくつかの例では、ソースデバイス20は、たとえば、ソースデバイス20に対して宛先デバイス40によって発行された1つまたは複数のHTTPGetまたはパーシャルGET要求に応答して、ビデオファイルの別個の部分を宛先デバイス40に与え得る。宛先デバイス40は、シーケンスデータセット、たとえば、シーケンスレベルSEIメッセージを含むパラメータセットトラックの全部または一部分を取り出すための第1のHTTPGetまたはパーシャルGET要求と、シーケンスデータセットによって記述されたコード化ビデオピクチャを取り出すための第2のまたはそれ以上のHTTPGetまたはパーシャルGET要求とをソースデバイス20に発行し得る。00142ビデオファイルを受信した後に、宛先デバイス40は、シーケンスレベルSEIメッセージに基づいてビデオファイルを復号する220。すなわち、ビデオデコーダ48は、復号プロセスを支援するためにシーケンスレベルSEIメッセージのデータを使用し得る。同様に、ビデオディスプレイ44は、復号されたビデオデータを表示するために、復号されたビデオデータのレンダリングを支援するためにシーケンスレベルSEIメッセージを使用する222。たとえば、ビデオデコーダ48および/またはビデオディスプレイ44あるいは、レンダリングユニットまたはそれのレンダリングエンジンは、シーケンスレベルSEIメッセージを使用して、どのようにビデオデータをビデオディスプレイ44のネイティブ解像度に適応させるかを判断し、画像がたとえば、ステレオビデオデータのための左画像であるか右画像であるかを判断し、どのようにフレームがパックされるかを判断し、ビデオデータについてのスケーラビリティ情報を判断し、マルチビュー取得情報を判断し、ならびに/あるいはマルチビューシーン情報を判断する。00143図7は、ビデオファイル240の別の例を示すブロック図である。図7の例では、ビデオファイル240は、ムービーMOOVボックス242と、ムービーデータMDATボックス250とを含む。MOOVボックス242は、ビデオデータトラックと、いくつかのパラメータセットトラック246A~246Cとを含む。図7の例には3つのパラメータセットトラックが示されているが、ビデオファイルは、概して、任意の数のパラメータセットトラックを含み得ることを理解されたい。00144ビデオデータトラック244は、各々がMDATボックス250に記憶され得るいくつかの様々なビデオフラグメント254A~254Cに対応する。この例では、ビデオフラグメント254A、254Bおよび254Cの各セットは、異なるシーケンスレベル情報を有し得る。たとえば、シーケンスレベル情報は、ビデオフラグメント254Aと254Bと254Cとの間で変化し得る。したがって、ビデオフラグメント254A、254Bおよび254Cの各々は、それぞれのシーケンスデータセットを有し得る。この例では、シーケンスデータセット252Aはビデオフラグメント254Aに関係し、シーケンスデータセット252Bはビデオフラグメント254Bに関係し、シーケンスデータセット252Cはビデオフラグメント254Cに関係する。00145ビデオフラグメントの所与のセットについてシーケンスデータセットは、シーケンス中のビデオフラグメントの各々に当てはまり得る。たとえば、シーケンスデータセット252Aはビデオフラグメント254Aの各々に当てはまる。しかしながら、ビデオフラグメント254Bの1つまたは複数の特性はビデオフラグメント254Aとは異なり得る。したがって、シーケンスデータセット252Bはビデオフラグメント254Bの特性を記述し得る。00146各シーケンスデータセットはそれぞれのパラメータセットトラックに対応し得る。図7の例では、パラメータセットトラック246Aはシーケンスデータセット252Aに対応し、パラメータセットトラック246Bはシーケンスデータセット252Bに対応し、パラメータセットトラック246Cはシーケンスデータセット252Cに対応する。各パラメータセットトラックは、対応するシーケンスデータセットがビデオデータトラック244のビデオフラグメントに当てはまる時間を記述するデータを含み得る。たとえば、パラメータセットトラック246Aは、ビデオフラグメント254Aのうちの最後のビデオフラグメントに対応する時間の後にはシーケンスデータセット252Aがもはや当てはまらないことを示すデータを含む。このタイミング情報は、UTC時間であり得るか、または再生持続時間に対応し得る。00147いくつかの例では、ビデオファイルは、ビデオフラグメント254A~254Cのすべてに対応する追加のパラメータセットトラックを含む。そのような例では、宛先デバイスは、すべてのビデオフラグメントに当てはまるパラメータセットトラックからのデータと、所与のビデオフラグメントに特に当てはまるパラメータセットトラックからのデータの両方を利用し得る。00148例としてMOOVボックス242中に含まれるものとして示されるが、シーケンスデータセット252は、本開示で説明した他のロケーションのいずれかに含まれ得ることを理解されたい。たとえば、シーケンスデータセットは、特定のビデオフラグメント中に、特定の3GPPファイル中に、メディアプレゼンテーション記述内に、あるいはビデオファイル内のまたはそれに関連付けられた別の1つまたは複数のロケーションに含まれ得る。001491つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装した場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、たとえば、通信プロトコルに従ってある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体または通信媒体など、有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、1非一時的である有形コンピュータ可読記憶媒体、あるいは2信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび/またはデータ構造を取り出すために1つまたは複数のコンピュータあるいは1つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。00150限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスクdiskおよびディスクdiscは、コンパクトディスクdiscCD、レーザディスクdisc、光ディスクdisc、デジタル多用途ディスクdiscDVD、フロッピー登録商標ディスクdiskおよびブルーレイディスクdiscを含み、ディスクdiskは、通常、データを磁気的に再生し、ディスクdiscは、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。00151命令は、1つまたは複数のデジタル信号プロセッサDSPなどの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路ASIC、フィールドプログラマブル論理アレイFPGA、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用するプロセッサという用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内に提供され得、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。00152本開示の技法は、ワイヤレスハンドセット、集積回路ICまたはICのセットたとえば、チップセットを含む、多種多様なデバイスまたは装置において実施され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明したように1つまたは複数のプロセッサを含んで、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。00153様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。