IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ クゥアルコム・インコーポレイテッドの特許一覧

特表2024-501250ビデオデータの送信のためのハイブリッドデジタルアナログ変調
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-01-11
(54)【発明の名称】ビデオデータの送信のためのハイブリッドデジタルアナログ変調
(51)【国際特許分類】
   H04N 19/48 20140101AFI20231228BHJP
   H04N 19/46 20140101ALI20231228BHJP
【FI】
H04N19/48
H04N19/46
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023537986
(86)(22)【出願日】2021-11-01
(85)【翻訳文提出日】2023-06-21
(86)【国際出願番号】 US2021057599
(87)【国際公開番号】W WO2022146548
(87)【国際公開日】2022-07-07
(31)【優先権主張番号】17/137,068
(32)【優先日】2020-12-29
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】595020643
【氏名又は名称】クゥアルコム・インコーポレイテッド
【氏名又は名称原語表記】QUALCOMM INCORPORATED
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ブディロフスキー、ローマン
(72)【発明者】
【氏名】ベルリナー、ラン
(72)【発明者】
【氏名】ダラル、イェホナタン
(72)【発明者】
【氏名】ランディス、シャイ
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA04
5C159MA21
5C159MC11
5C159MD02
5C159ME01
5C159RC12
5C159RD01
5C159UA02
5C159UA05
(57)【要約】
ビデオデータを符号化するための方法は、ビデオデータに基づいて係数を生成することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することとを備える。
【特許請求の範囲】
【請求項1】
ビデオデータを符号化する方法であって、前記方法は、
前記ビデオデータに基づいて係数を生成することと、
係数ベクトルを生成することと、ここにおいて、前記係数ベクトルの各々は前記係数のうちのn個を含む、
前記係数ベクトルの各々について、マッピングパターンに基づいて前記係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトルに関する前記振幅値に基づいてアナログ信号を変調することと、
前記アナログ信号を出力することと
を備える、方法。
【請求項2】
前記係数ベクトルに関する前記振幅値を決定することは、
前記n次元空間における位置を決定することと、ここにおいて、前記n次元空間における前記位置の座標は、前記係数ベクトルの前記係数に基づき、前記マッピングパターンは、前記n次元空間における異なる位置を、前記複数の振幅値中の異なる振幅値にマッピングする、
前記係数ベクトルに関する前記振幅値を、前記n次元空間における前記決定された位置に対応する前記振幅値として決定することと
を備える、請求項1に記載の方法。
【請求項3】
前記マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、請求項1に記載の方法。
【請求項4】
前記マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、請求項1に記載の方法。
【請求項5】
前記マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、請求項1に記載の方法。
【請求項6】
nは2以上である、請求項1に記載の方法。
【請求項7】
前記ビデオデータに基づいて前記係数を生成することは、
前記ビデオデータに基づいて初期係数を生成することと、
前記初期係数の正/負の符号を示す符号値を生成することと、
前記係数を前記初期係数の絶対値として生成することと
を備え、
前記方法は、前記符号値を表すデータをシグナリングすることをさらに備える、請求項1に記載の方法。
【請求項8】
前記係数は、初期係数の非負バージョンであり、
前記ビデオデータに基づいて前記係数を生成することは、
前記ビデオデータに基づいて前記初期係数を生成することと、
前記初期係数のうちの最も負の初期係数に基づいてシフト値を決定することと、
前記シフト値に基づいて、前記初期係数を前記初期係数の前記非負バージョンに変換するプロセスを実行することと
を備え、
前記方法は、前記シフト値を表すデータをシグナリングすることをさらに備える、請求項1に記載の方法。
【請求項9】
前記係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、請求項1に記載の方法。
【請求項10】
前記ビデオデータに基づいて前記係数を生成することは、
前記ビデオデータの予測データを生成することと、
前記予測データと前記ビデオデータ中のデジタルサンプル値とに基づいて残差データを生成することと、
前記残差データに基づいて前記係数を生成することと
を備え、
前記方法は、
前記予測データに基づいてデジタル値を生成することと、
前記デジタル値を送信することと
をさらに備える、請求項1に記載の方法。
【請求項11】
前記残差データに基づいて前記係数を生成することは、
前記残差データに基づいて前記係数を生成する2値化プロセスを実行することと、
前記係数を量子化する量子化プロセスを実行することと
を備える、請求項10に記載の方法。
【請求項12】
前記予測データに基づいて前記デジタル値を生成することは、
前記予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成することと、
前記量子化されたデジタルサンプル値に基づいて前記デジタル値を生成するエントロピー符号化プロセスを実行することと
を備える、請求項10に記載の方法。
【請求項13】
ビデオデータを復号する方法であって、
アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、
前記係数ベクトルの各々について、前記係数ベクトルに関する前記振幅値とマッピングパターンとに基づいて前記係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトル中の前記係数に基づいて前記ビデオデータを生成することと
を備える、方法。
【請求項14】
前記係数ベクトルに関する前記振幅値に基づいて前記係数ベクトル中の係数を決定することは、
前記係数ベクトル中の前記係数を、前記振幅値に対応する前記n次元空間における位置の座標として決定することを備え、ここにおいて、前記マッピングパターンは、前記n次元空間における異なる位置を、前記複数の振幅値中の異なる振幅値にマッピングする、請求項13に記載の方法。
【請求項15】
前記マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、請求項13に記載の方法。
【請求項16】
前記マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、請求項13に記載の方法。
【請求項17】
前記マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、請求項13に記載の方法。
【請求項18】
前記複数の係数ベクトルに関する前記振幅値を決定することは、
前記アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定することと、
前記係数ベクトルに関する前記振幅値を、I-Q平面内の前記アナログシンボルの座標のうちの1つとして決定することと
を備える、請求項13に記載の方法。
【請求項19】
nは2以上である、請求項13に記載の方法。
【請求項20】
前記振幅値と前記マッピングパターンとに基づいて前記係数ベクトル中の前記係数を決定することは、
モデムのデジタルパスを介して符号値を取得することと、ここにおいて、前記符号値は、前記係数ベクトル中の前記係数の正/負の符号を示す、
前記係数ベクトルに関する前記振幅値と前記マッピングパターンとに基づいて、前記係数ベクトル中の前記係数の絶対値を決定することと、
少なくとも部分的に前記係数ベクトル中の前記係数の前記絶対値に前記符号値を適用することによって、前記係数ベクトル中の前記係数を再構成することと
を備える、請求項13に記載の方法。
【請求項21】
前記振幅値と前記マッピングパターンとに基づいて前記係数ベクトル中の前記係数を決定することは、
モデムのデジタルパスを介して、シフト値を表すデータを取得することと、ここにおいて、前記シフト値は、前記係数ベクトル中の前記係数のうちの最も負の係数を示す、
前記係数ベクトルに関する前記振幅値と前記マッピングパターンとに基づいて、前記係数ベクトル中の前記係数の中間値を決定することと、
少なくとも部分的に前記係数ベクトル中の前記係数の前記中間値の各々に前記シフト値を加算することによって、前記係数ベクトル中の前記係数を再構成することと
を備える、請求項13に記載の方法。
【請求項22】
前記係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、請求項13に記載の方法。
【請求項23】
前記係数ベクトル中の前記係数に基づいて前記ビデオデータを生成することは、
モデムのデジタルパスを介してデジタル値を取得することと、
前記デジタル値に基づいて予測データを生成することと、
前記係数ベクトル中の前記係数に基づいて残差データを生成することと、
前記予測データと前記残差データとに基づいて前記ビデオデータを生成することと
を備える、請求項13に記載の方法。
【請求項24】
前記係数ベクトル中の前記係数に基づいて前記残差データを生成することは、
前記係数ベクトル中の前記係数を逆量子化する逆量子化プロセスを実行することと、
前記係数ベクトル中の前記逆量子化された係数に基づいて前記残差データを生成する2値化解除プロセスを実行することと
を備える、請求項23に記載の方法。
【請求項25】
前記デジタル値に基づいて前記予測データを生成することは、
前記デジタル値に基づいてデジタルサンプル値を生成するエントロピー復号プロセスを実行することと、
少なくとも部分的に前記デジタルサンプル値を逆量子化することによって前記予測データを生成することと
を備える、請求項23に記載の方法。
【請求項26】
ビデオデータを符号化するためのデバイスであって、前記デバイスは、
回路内に実装された1つまたは複数のプロセッサと、前記1つまたは複数のプロセッサは、
ビデオデータに基づいて係数を生成することと、
係数ベクトルを生成することと、ここにおいて、前記係数ベクトルの各々は前記係数のうちのn個を含む、
前記係数ベクトルの各々について、マッピングパターンに基づいて前記係数ベクトルに関する振幅値を決定することとを行うように構成され、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトルに関する前記振幅値に基づいてアナログ信号を変調するように構成されたモデムと
を備える、デバイス。
【請求項27】
前記1つまたは複数のプロセッサは、前記係数ベクトルに関する前記振幅値を決定することの一部として、前記1つまたは複数のプロセッサが、
前記n次元空間における位置を決定することと、ここにおいて、前記n次元空間における前記位置の座標は、前記係数ベクトルの前記係数に基づき、前記マッピングパターンは、前記n次元空間における異なる位置を、前記複数の振幅値中の異なる振幅値にマッピングする、
前記係数ベクトルに関する前記振幅値を、前記n次元空間における前記決定された位置に対応する前記振幅値として決定することと
を行うように構成される、請求項26に記載のデバイス。
【請求項28】
前記マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、請求項26に記載のデバイス。
【請求項29】
前記マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、請求項26に記載のデバイス。
【請求項30】
前記マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、請求項26に記載のデバイス。
【請求項31】
nは2以上である、請求項26に記載のデバイス。
【請求項32】
前記1つまたは複数のプロセッサは、残差データに基づいて前記係数を生成することの一部として、前記1つまたは複数のプロセッサが、
前記残差データに基づいて初期係数を生成することと、
前記初期係数の正/負の符号を示す符号値を生成することと、
前記係数を前記初期係数の絶対値として生成することと
を行うように構成され、
前記モデムは、デジタルパスを介して前記符号値を送信するように構成される、請求項26に記載のデバイス。
【請求項33】
前記係数は、初期係数の非負バージョンであり、
前記1つまたは複数のプロセッサは、残差データに基づいて前記係数を生成することの一部として、前記1つまたは複数のプロセッサが、
前記残差データに基づいて前記初期係数を生成することと、
前記初期係数のうちの最も負の初期係数に基づいてシフト値を決定することと、
前記シフト値に基づいて、前記初期係数を前記初期係数の前記非負バージョンに変換するプロセスを実行することと
を行うように構成され、
方法は、前記シフト値を表すデータをシグナリングすることをさらに備える、請求項26に記載のデバイス。
【請求項34】
前記係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、請求項26に記載のデバイス。
【請求項35】
前記1つまたは複数のプロセッサは、前記ビデオデータに基づいて前記係数を生成することの一部として、前記1つまたは複数のプロセッサが、
前記ビデオデータの予測データを生成することと、
前記予測データと前記ビデオデータ中のデジタルサンプル値とに基づいて残差データを生成することと、
前記残差データに基づいて前記係数を生成することと
を行うように構成され、
前記1つまたは複数のプロセッサは、前記予測データに基づいてデジタル値を生成するようにさらに構成され、
前記モデムは、前記デジタル値を送信するように構成される、請求項26に記載のデバイス。
【請求項36】
前記1つまたは複数のプロセッサは、前記残差データに基づいて前記係数を生成することの一部として、前記1つまたは複数のプロセッサが、
前記残差データに基づいて前記係数を生成する2値化プロセスを実行することと、
前記係数を量子化する量子化プロセスを実行することと
を行うように構成される、請求項35に記載のデバイス。
【請求項37】
前記1つまたは複数のプロセッサは、前記予測データに基づいて前記デジタル値を生成することの一部として、前記1つまたは複数のプロセッサが、
前記予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成することと、
前記量子化されたデジタルサンプル値に基づいて前記デジタル値を生成するエントロピー符号化プロセスを実行することと
を行うように構成される、請求項35に記載のデバイス。
【請求項38】
前記デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、請求項26に記載のデバイス。
【請求項39】
ビデオデータを復号するためのデバイスであって、前記デバイスは、
アナログ信号を受信するように構成されたモデムと、
回路内に実装された1つまたは複数のプロセッサとを備え、前記1つまたは複数のプロセッサは、
前記アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、
前記係数ベクトルの各々について、前記係数ベクトルに関する前記振幅値とマッピングパターンとに基づいて前記係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトル中の前記係数に基づいてビデオデータを生成することと
を行うように構成される、デバイス。
【請求項40】
前記1つまたは複数のプロセッサは、前記係数ベクトルに関する前記振幅値に基づいて前記係数ベクトル中の係数を決定することの一部として、前記1つまたは複数のプロセッサが、
前記係数ベクトル中の前記係数を、前記振幅値に対応する前記n次元空間における位置の座標として決定するように構成され、ここにおいて、前記マッピングパターンは、前記n次元空間における異なる位置を、前記複数の振幅値中の異なる振幅値にマッピングする、請求項39に記載のデバイス。
【請求項41】
前記マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、請求項39に記載のデバイス。
【請求項42】
前記マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、請求項39に記載のデバイス。
【請求項43】
前記マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、請求項39に記載のデバイス。
【請求項44】
前記モデムは、前記アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定するように構成され、
前記1つまたは複数のプロセッサは、前記複数の係数ベクトルに関する前記振幅値を決定することの一部として、前記1つまたは複数のプロセッサが、前記係数ベクトルに関する前記振幅値を、I-Q平面内の前記アナログシンボルの前記座標のうちの1つとして決定するように構成される、請求項39に記載のデバイス。
【請求項45】
nは2以上である、請求項39に記載のデバイス。
【請求項46】
前記1つまたは複数のプロセッサは、前記振幅値と前記マッピングパターンとに基づいて前記係数ベクトル中の前記係数を決定することの一部として、前記1つまたは複数のプロセッサが、
前記モデムのデジタルパスを介して符号値を取得することと、ここにおいて、前記符号値は、前記係数ベクトル中の前記係数の正/負の符号を示す、
前記係数ベクトルに関する前記振幅値と前記マッピングパターンとに基づいて、前記係数ベクトル中の前記係数の絶対値を決定することと、
少なくとも部分的に前記係数ベクトル中の前記係数の前記絶対値に前記符号値を適用することによって、前記係数ベクトル中の前記係数を再構成することと
を行うように構成される、請求項39に記載のデバイス。
【請求項47】
前記1つまたは複数のプロセッサは、前記振幅値と前記マッピングパターンとに基づいて前記係数ベクトル中の前記係数を決定することの一部として、前記1つまたは複数のプロセッサが、
前記モデムのデジタルパスを介して、シフト値を表すデータを取得することと、ここにおいて、前記シフト値は、前記係数ベクトル中の前記係数のうちの最も負の係数を示す、
前記係数ベクトルに関する前記振幅値と前記マッピングパターンとに基づいて、前記係数ベクトル中の前記係数の中間値を決定することと、
少なくとも部分的に前記係数ベクトル中の前記係数の前記中間値の各々に前記シフト値を加算することによって、前記係数ベクトル中の前記係数を再構成することと
を行うように構成される、請求項39に記載のデバイス。
【請求項48】
前記係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、請求項39に記載のデバイス。
【請求項49】
前記1つまたは複数のプロセッサは、前記係数ベクトル中の前記係数に基づいて前記ビデオデータを生成することの一部として、前記1つまたは複数のプロセッサが、
モデムのデジタルパスを介してデジタル値を取得し、
前記デジタル値に基づいて予測データを生成し、
前記アナログビデオデータの現在のブロックについての予測データを生成し、
前記係数ベクトル中の前記係数に基づいて残差データを生成し、
前記予測データと前記残差データとに基づいて前記ビデオデータを生成する
ように構成される、請求項39に記載のデバイス。
【請求項50】
前記1つまたは複数のプロセッサは、前記係数ベクトル中の前記係数に基づいて前記残差データを生成することの一部として、前記1つまたは複数のプロセッサが、
前記係数ベクトル中の前記係数を逆量子化する逆量子化プロセスを実行することと、
前記係数ベクトル中の前記逆量子化された係数に基づいて前記残差データを生成する2値化解除プロセスを実行することと
を行うように構成される、請求項49に記載のデバイス。
【請求項51】
前記1つまたは複数のプロセッサは、前記デジタル値に基づいて前記予測データを生成することの一部として、前記1つまたは複数のプロセッサが、
前記デジタル値に基づいてデジタルサンプル値を生成するエントロピー復号プロセスを実行することと、
少なくとも部分的に前記デジタルサンプル値を逆量子化することによって前記予測データを生成することと
を行うように構成される、請求項49に記載のデバイス。
【請求項52】
前記デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、請求項39に記載のデバイス。
【請求項53】
ビデオデータを符号化するためのデバイスであって、
ビデオデータに基づいて係数を生成するための手段と、
係数ベクトルを生成するための手段と、ここにおいて、前記係数ベクトルの各々は、前記係数のうちのn個を含む、
前記係数ベクトルの各々について、マッピングパターンに基づいて前記係数ベクトルに関する振幅値を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトルに関する前記振幅値に基づいてアナログ信号を変調するための手段と
を備える、デバイス。
【請求項54】
ビデオデータを復号するためのデバイスであって、
アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定するための手段と、
前記係数ベクトルの各々について、前記係数ベクトルに関する前記振幅値とマッピングパターンとに基づいて前記係数ベクトル中の係数を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトル中の前記係数に基づいてビデオデータを生成するための手段と
を備える、デバイス。
【請求項55】
命令を記憶したコンピュータ可読データ記憶媒体であって、前記命令は、実行されたとき、1つまたは複数のプロセッサに、
ビデオデータに基づいて係数を生成することと、
係数ベクトルを生成することと、ここにおいて、前記係数ベクトルの各々は前記係数のうちのn個を含む、
前記係数ベクトルの各々について、マッピングパターンに基づいて前記係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトルに関する前記振幅値に基づいてアナログ信号を変調することと
を行わせる、コンピュータ可読データ記憶媒体。
【請求項56】
命令を記憶したコンピュータ可読データ記憶媒体であって、前記命令は、実行されたとき、1つまたは複数のプロセッサに、
アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、
前記係数ベクトルの各々について、前記係数ベクトルに関する前記振幅値とマッピングパターンとに基づいて前記係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、
前記マッピングパターンは、前記それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、
前記それぞれの振幅値は、前記振幅値の単調な数直線において前記それぞれの振幅値に隣接する前記複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、
前記係数ベクトル中の前記係数に基づいてビデオデータを生成することと
を行わせる、コンピュータ可読データ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 本出願は、内容全体が参照により本明細書に組み込まれる、2020年12月29日に出願された米国特許出願第17/137,068号の優先権を主張する。
【0002】
[0002] 本開示は、ビデオの符号化(encoding)および復号(decoding)に関する。
【背景技術】
【0003】
[0003] 高品質ビデオデータを送信および受信する能力は、第5世代(5G)ワイヤレスネットワークなどの高度ワイヤレスネットワークの展開のための有力な使用事例のうちの1つである。たとえば、5Gワイヤレスネットワークおよびそれ以上は、ライブイベント、遠隔会議などの高品質ビデオのストリーミングを可能にし得る。いくつかの事例では、ユーザデバイスは、ビデオデータ(video data)を符号化し、次いで、符号化されたビデオデータをワイヤレス基地局に送信するために無線システムを使用し得る。ワイヤレス基地局は、次に、インターネットなどのネットワークを通して、宛先デバイスに符号化されたビデオデータをルーティングし得る。
【0004】
[0004] 高度ワイヤレスネットワークの高帯域幅能力を伴う場合でも、デバイスは、ビデオデータの送信より前にビデオデータを符号化する必要があり得る。しかしながら、現代のビデオコーディング規格は、スマートフォンおよびタブレットなどのモバイルデバイスの限られた給電量内にあり得る、かなりの量の電力の消費を伴い得る。
【発明の概要】
【0005】
[0005] 本開示は、ビデオデータを符号化および復号するための技法について説明する。本明細書で説明されるように、ビデオエンコーダ(video encoder)は、ビデオデータの送信のためのハイブリッドデジタルアナログ変調を実行し得る。ビデオデータの送信のためのハイブリッドデジタルアナログ変調を実行するとき、ビデオエンコーダは、デジタルデータとアナログ信号とを送信し得る。ビデオデコーダ(video decoder)は、ビデオデータを再構成するために、デジタルデータとアナログ信号の両方を使用する。ハイブリッドデジタルアナログ変調の使用は、デジタルビデオコーデックよりも少ない電力または他のリソースを潜在的に使用しながら、ビデオデータの圧縮を提供し得る。
【0006】
[0006] 一例では、本開示は、ビデオデータを符号化する方法について説明し、本方法は、ビデオデータに基づいて係数(coefficient)を生成することと、係数ベクトル(coefficient vector)を生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターン(mapping pattern)に基づいて係数ベクトルに関する振幅値(amplitude value)を決定することと、ここにおいて、複数の許容係数ベクトル(allowed coefficient vector)の各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線(monotonic number line)においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間(n-dimensional space)において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号(analog signal)を変調することと、アナログ信号を出力することとを備える。
【0007】
[0007] 別の例では、本開示は、ビデオデータを復号する方法について説明し、本方法は、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを備える。
【0008】
[0008] 別の例では、本開示は、ビデオデータを符号化するためのデバイスについて説明し、本デバイスは、回路内に実装された1つまたは複数のプロセッサ(processor)と、1つまたは複数のプロセッサは、ビデオデータに基づいて係数を生成することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調するように構成されたモデム(modem)とを備える。
【0009】
[0009] 別の例では、本開示は、ビデオデータを復号するためのデバイスについて説明し、本デバイスは、アナログ信号を受信するように構成されたモデムと、回路内に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行うように構成される。
【0010】
[0010] 別の例では、本開示は、ビデオデータを符号化するためのデバイスについて説明し、本デバイスは、ビデオデータに基づいて係数を生成するための手段と、係数ベクトルを生成するための手段と、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調するための手段とを備える。
【0011】
[0011] 別の例では、本開示は、ビデオデータを復号するためのデバイスについて説明し、本デバイスは、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定するための手段と、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成するための手段とを備える。
【0012】
[0012] 別の例では、本開示は、実行されたとき、1つまたは複数のプロセッサに、ビデオデータに基づいて係数を生成することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することとを行わせる命令(instruction)を記憶したコンピュータ可読データ記憶媒体(computer-readable data storage medium)について説明する。
【0013】
[0013] 別の例では、本開示は、実行されたとき、1つまたは複数のプロセッサに、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体について説明する。
【0014】
[0014] 別の例では、本開示は、ビデオデータを符号化する方法について説明し、本方法は、ビデオデータのデジタルサンプル値(digital sample value)に基づいて係数を生成することと、アナログ信号を送るべきチャネルのスペクトル効率(spectral efficiency)を決定することと、チャネルのスペクトル効率に基づいて値nを決定することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することと、チャネル上でアナログ信号を出力することとを備える。
【0015】
[0015] 別の例では、本開示は、ビデオデータを復号する方法について説明し、本方法は、チャネルを介して送信されたアナログ信号を受信することと、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調することと、値nを決定することと、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを備える。
【0016】
[0016] 別の例では、本開示は、ビデオデータを符号化するためのデバイスについて説明し、本デバイスは、ビデオデータを記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサと、1つまたは複数のプロセッサは、ビデオデータのデジタルサンプル値に基づいて係数を生成することと、アナログ信号を出力すべきチャネルのスペクトル効率を決定することと、チャネルのスペクトル効率に基づいて値nを決定することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することとを行うように構成される、チャネル上にアナログ信号を出力するように構成されたモデムとを備える。
【0017】
[0017] 別の例では、本開示は、ビデオデータを復号するためのデバイスについて説明し、本デバイスは、チャネルを介して送信されたアナログ信号を受信するように構成されたモデムと、回路内に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調することと、値nを決定することと、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行うように構成される。
【0018】
[0018] 別の例では、本開示は、ビデオデータを符号化するためのデバイスについて説明し、本デバイスは、ビデオデータのデジタルサンプル値に基づいて係数を生成するための手段と、アナログ信号を出力すべきチャネルのスペクトル効率を決定するための手段と、チャネルのスペクトル効率に基づいて値nを決定するための手段と、係数ベクトルを生成するための手段と、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調するための手段と、チャネル上でアナログ信号を出力するための手段とを備える。
【0019】
[0019] 別の例では、本開示は、ビデオデータを復号するためのデバイスについて説明し、本デバイスは、チャネルを介して送信されたアナログ信号を受信するための手段と、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調するための手段と、値nを決定するための手段と、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成するための手段とを備える。
【0020】
[0020] 別の例では、本開示は、実行されたとき、1つまたは複数のプロセッサに、ビデオデータのデジタルサンプル値に基づいて係数を生成することと、アナログ信号を出力すべきチャネルのスペクトル効率を決定することと、チャネルのスペクトル効率に基づいて値nを決定することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することと、チャネル上でアナログ信号を出力することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体について説明する。
【0021】
[0021] 別の例では、本開示は、実行されたとき、1つまたは複数のプロセッサに、チャネルを介して送信されたアナログ信号を受信することと、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調することと、値nを決定することと、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体について説明する。
【0022】
[0022] 別の例では、本開示は、ビデオデータを符号化する方法について説明し、本方法は、ビデオデータの予測データ(prediction data)を生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データ(residual data)を生成することと、残差データに基づいて係数を生成することと、インターレースされた振幅値(interlaced amplitude value)を生成するためにインターレースプロセス(interlacing process)を実行することと、ここにおいて、インターレースプロセスは、インターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレース(interlace)する、予測データに基づいてデジタル値(digital value)を生成することと、インターレースされた振幅値とデジタル値とに基づいて変調された1つまたは複数のアナログ信号を出力することとを備える。
【0023】
[0023] 別の例では、本開示は、ビデオデータを復号する方法について説明し、本方法は、アナログ信号に基づいてインターレースされた振幅値を決定することと、2つ以上の係数を生成するためにインターレース解除プロセス(deinterlacing process)を実行することと、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成することと、デジタル値を取得することと、デジタル値に基づいて予測データを生成することと、予測データと残差データとに基づいてビデオデータを再構成することとを備える。
【0024】
[0024] 別の例では、本開示は、ビデオデータを符号化するためのデバイスについて説明し、本デバイスは、ビデオデータを記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサと、1つまたは複数のプロセッサは、ビデオデータの予測データを生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成することと、残差データに基づいて係数を生成することと、インターレースされた振幅値を生成するためにインターレースプロセスを実行することと、ここにおいて、インターレースプロセスは、インターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、予測データに基づいてデジタル値を生成することとを行うように構成され、インターレースされた振幅値とデジタル値とに基づいて変調された1つまたは複数のアナログ信号を出力するように構成されたモデムとを備える。
【0025】
[0025] 別の例では、本開示は、ビデオデータを復号するためのデバイスについて説明し、本デバイスは、アナログ信号とデジタル値とを取得するように構成されたモデムと、回路内に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、アナログ信号に基づいてインターレースされた振幅値を決定することと、2つ以上の係数を生成するためにインターレース解除プロセスを実行することと、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成することと、デジタル値を取得することと、デジタル値に基づいて予測データを生成することと、予測データと残差データとに基づいてビデオデータを再構成することとを行うように構成される。
【0026】
[0026] 別の例では、本開示は、ビデオデータを符号化するためのデバイスについて説明し、本デバイスは、ビデオデータの予測データを生成するための手段と、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成するための手段と、残差データに基づいて係数を生成するための手段と、インターレースされた振幅値を生成するためにインターレースプロセスを実行するための手段と、ここにおいて、インターレースプロセスは、インターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、インターレースされた振幅値に基づいてアナログ信号を変調するための手段と、予測データに基づいてデジタル値を生成するための手段と、アナログ信号と予測ブロックに基づくデジタル値とを出力するための手段とを備える。
【0027】
[0027] 別の例では、本開示は、ビデオデータを復号するためのデバイスについて説明し、本デバイスは、アナログ信号に基づいてインターレースされた振幅値を決定するための手段と、2つ以上の係数を生成するためにインターレース解除プロセスを実行するための手段と、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成するための手段と、デジタル値を取得するための手段と、デジタル値に基づいて予測データを生成するための手段と、予測データと残差データとに基づいてビデオデータを再構成するための手段とを備える。
【0028】
[0028] 別の例では、本開示は、実行されたとき、1つまたは複数のプロセッサに、ビデオデータの予測データを生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成することと、残差データに基づいて係数を生成することと、インターレースされた振幅値を生成するためにインターレースプロセスを実行することと、ここにおいて、インターレースプロセスはインターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、インターレースされた振幅値に基づいてアナログ信号を変調することと、予測データに基づいてデジタル値を生成することと、アナログ信号と予測ブロックに基づくデジタル値とを出力することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体について説明する。
【0029】
[0029] 別の例では、本開示は、実行されたとき、1つまたは複数のプロセッサに、アナログ信号に基づいてインターレースされた振幅値を決定することと、2つ以上の係数を生成するためにインターレース解除プロセスを実行することと、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成することと、デジタル値を取得することと、デジタル値に基づいて予測データを生成することと、予測データと残差データとに基づいてビデオデータを再構成することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体について説明する。
【0030】
[0030] 1つまたは複数の例の詳細が添付の図面および以下の説明に記載される。他の特徴、目的、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0031】
図1】[0031] 本開示の技法を実行し得る例示的な符号化および復号システムを示すブロック図。
図2】[0032] 本開示の1つまたは複数の技法による、例示的なビデオエンコーダを示すブロック図。
図3】[0033] 本開示の1つまたは複数の技法による、例示的なビデオデコーダを示すブロック図。
図4】[0034] 本開示の1つまたは複数の技法による、例示的なモデムを示すブロック図。
図5】[0035] I-Q領域におけるアナログ変調のための例示的なコンステレーション図。
図6】[0036] アナログ変調送信中の受信されたエラーを示す概念図。
図7】[0037] 本開示の1つまたは複数の技法による、データ符号コーディングの一例を示す概念図。
図8】[0038] 本開示の1つまたは複数の技法による、最小値コーディングの一例を示す概念図。
図9】[0039] 本開示の1つまたは複数の技法による、例示的なマッピングパターンを示す概念図。
図10】[0040] 本開示の1つまたは複数の技法による、図9のマッピングパターンに対応する振幅値を示す概念図。
図11】[0041] 本開示の1つまたは複数の技法による、別の例示的なマッピングパターンを示す概念図。
図12】[0042] 本開示の1つまたは複数の技法による、図11のマッピングパターンに対応する振幅値を示す概念図。
図13】[0043] 本開示の1つまたは複数の技法による、別の例示的なマッピングパターンを示す概念図。
図14】[0044] 本開示の1つまたは複数の技法による、図13のマッピングパターンに対応する振幅値を示す概念図。
図15】[0045] 本開示の1つまたは複数の技法による、例示的な3次元マッピングパターンを示す概念図。
図16】[0046] 本開示の1つまたは複数の技法による、ビデオデータを符号化するための例示的な方法を示すフローチャート。
図17】[0047] 本開示の1つまたは複数の技法による、ビデオデータを復号するための例示的な方法を示すフローチャート。
図18】[0048] 本開示の1つまたは複数の技法による、インターレースすることの第1の例を示す概念図。
図19】[0049] 本開示の1つまたは複数の技法による、インターレースすることの第2の例を示す概念図。
図20】[0050] コーディングプロセスに対する例示的なノイズの影響を示すブロック図。
図21】[0051] 本開示の1つまたは複数の技法による、ギャップ範囲を示す概念図。
図22】[0052] 本開示の1つまたは複数の技法による、ビデオデータを符号化するための例示的な方法を示すフローチャート。
図23】[0053] 本開示の1つまたは複数の技法による、ビデオデータを復号するための例示的な方法を示すフローチャート。
図24】[0054] 本開示の1つまたは複数の技法による、可変シンボルレートを使用する例示的なアナログ圧縮ユニットを示すブロック図。
図25】[0055] 本開示の1つまたは複数の技法による、ビデオデータを符号化するための例示的な方法を示すフローチャート。
図26】[0056] 本開示の1つまたは複数の技法による、ビデオデータを復号するための例示的な方法を示すフローチャート。
【発明を実施するための形態】
【0032】
[0057] 上述のように、高品質ビデオデータを送信および受信する能力は、第5世代(5G)ワイヤレスネットワークなどの高度ワイヤレスネットワークの展開のための有力な使用事例のうちの1つである。しかしながら、ビデオデータを符号化するための、H.264/アドバンストビデオコーディングおよびH.265/高効率ビデオコーディング(HEVC)などの最先端のビデオコーデックの使用は、リソース集約的であり、したがって、かなりの量の電力の消費を伴い得る。本開示は、よりリソース集約的でないことがあるビデオデータを符号化するための技法について説明する。
【0033】
[0058] 本開示は、ビデオデータをコーディングするためのハイブリッドデジタルアナログ変調システムについて説明する。本明細書で説明されるように、ビデオエンコーダは、ビデオデータに基づいて係数を生成し得る。加えて、ビデオエンコーダは、係数ベクトルを生成し得る。係数ベクトルの各々は、係数のうちのn個を含む。係数ベクトルの各々について、ビデオエンコーダは、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得る。マッピングパターンは、振幅値の単調な数直線(たとえば、自然数、非負整数、整数値などの数直線)において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングし得る。ビデオエンコーダは、係数ベクトルに関する振幅値に基づいてアナログ信号を変調し得る。
【0034】
[0059] 対応するビデオデコーダは、アナログ振幅復調を実行し得、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定し得る。係数ベクトルの各々について、ビデオデコーダは、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定し得る。マッピングパターンは、振幅値の単調な数直線において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングし得る。係数ベクトルの各々は、係数のうちのn個を含み得る。ビデオデコーダは、係数ベクトル中の係数に基づいてビデオデータを生成し得る。このマッピングパターンの使用は、アナログ信号中でデータをシグナリングするときに圧縮を提供し得る。加えて、アナログ振幅変調および復調を使用することは、H.264/アドバンストビデオコーディングおよびH.265/HEVCなどのビデオコーデックに対して電力およびリソース消費を低減し得る。
【0035】
[0060] 図1は、本開示の技法を実行し得る例示的なビデオ符号化および復号システム100を示すブロック図である。本開示の技法は、概して、ビデオデータをコーディング(符号化および/または復号)することを対象とする。概して、ビデオデータは、ビデオを処理するための何らかのデータを含む。したがって、ビデオデータは、生の符号化されていないビデオ、符号化されたビデオ、復号された(たとえば、再構成された)ビデオ、およびシグナリングデータなどのビデオメタデータを含み得る。
【0036】
[0061] 図1に示されているように、システム100は、この例では、宛先デバイス116によって復号および表示されるべき符号化ビデオデータを提供するソースデバイス102を含む。特に、ソースデバイス102は、コンピュータ可読媒体110を介して宛先デバイス116にビデオデータを提供する。ソースデバイス102および宛先デバイス116は、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、モジュールデバイス(たとえば、スマートフォンなどの電話ハンドセット、タブレットコンピュータなど)、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイス、ブロードキャスト受信機デバイス、セットトップボックスなどを含む、広範囲のデバイスのいずれかを備え得る。いくつかの場合には、ソースデバイス102と宛先デバイス116とは、ワイヤレス通信のために装備され得、したがって、ワイヤレス通信デバイスと呼ばれることがある。
【0037】
[0062] 図1の例では、ソースデバイス102は、ビデオソース104と、メモリ106と、ビデオエンコーダ(video encoder)200と、モデム108とを含む。宛先デバイス116は、モデム122と、ビデオデコーダ(video decoder)300と、メモリ120と、ディスプレイデバイス118とを含む。本開示によれば、ソースデバイス102のビデオエンコーダ200と宛先デバイス116のビデオデコーダ300とは、ビデオ送信のためにハイブリッドデジタルアナログ変調を実行するように構成され得る。ソースデバイス102はビデオ符号化デバイスの一例を表し、宛先デバイス116はビデオ復号デバイスの一例を表す。他の例では、ソースデバイスおよび宛先デバイスは、他の構成要素または配置を含み得る。たとえば、ソースデバイス102は、外部カメラなどの外部ビデオソースからビデオデータを受信し得る。同様に、宛先デバイス116は、一体型ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
【0038】
[0063] 図1に示されているシステム100は一例にすぎない。概して、いかなるデジタルビデオ符号化および/または復号デバイスも、ビデオ送信のためのハイブリッドデジタルアナログ変調に関する本開示の技法を実行し得る。ソースデバイス102および宛先デバイス116は、ソースデバイス102が宛先デバイス116への送信のために符号化ビデオデータを生成するコーディングデバイスの例にすぎない。本開示は、データのコーディング(符号化および/または復号)を実行するデバイスとして「コーディング」デバイスに言及する。したがって、ビデオエンコーダ200およびビデオデコーダ300は、コーディングデバイス、特に、それぞれビデオエンコーダとビデオデコーダとの例を表す。いくつかの例では、ソースデバイス102および宛先デバイス116は、ソースデバイス102および宛先デバイス116の各々がビデオ符号化構成要素およびビデオ復号構成要素を含むように、実質的に対称的に動作し得る。したがって、システム100は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオ電話のために、ソースデバイス102と宛先デバイス116との間の一方向または二方向ビデオ送信をサポートし得る。
【0039】
[0064] 概して、ビデオソース104は、ビデオデータ(すなわち、生の符号化されていないビデオデータ)のソースを表し、ビデオデータの連続的な一連のピクチャ(「フレーム」とも呼ばれる)をビデオエンコーダ200に提供し、ビデオエンコーダ200は、ピクチャのためにデータを符号化する。ソースデバイス102のビデオソース104は、ビデオカメラ、前にキャプチャされた生のビデオを含んでいるビデオアーカイブ、および/またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースなどの、ビデオキャプチャデバイスを含み得る。さらなる代替として、ビデオソース104は、ソースビデオとしてのコンピュータグラフィックスベースデータ、またはライブビデオとアーカイブされたビデオとコンピュータ生成されたビデオとの組合せを生成し得る。各場合において、ビデオエンコーダ200は、キャプチャされたビデオデータ、プリキャプチャされたビデオデータ、またはコンピュータ生成されたビデオデータを符号化する。ビデオエンコーダ200は、ピクチャを、(「表示順序」と呼ばれることがある)受信順序から、コーディングのためのコーディング順序に再配置し得る。ソースデバイス102は、次いで、たとえば、宛先デバイス116のモデム122による受信および/または取出しのために、モデム108を介して、符号化されたビデオデータをコンピュータ可読媒体110上に出力し得る。
【0040】
[0065] ソースデバイス102のメモリ106および宛先デバイス116のメモリ120は、汎用メモリを表し得る。いくつかの例では、メモリ106、120は、生のビデオデータ、たとえば、ビデオソース104からの生のビデオ、およびビデオデコーダ300からの生の復号ビデオデータを記憶し得る。追加または代替として、メモリ106、120は、たとえば、それぞれ、ビデオエンコーダ200とビデオデコーダ300とによって実行可能なソフトウェア命令を記憶し得る。メモリ106およびメモリ120は、この例ではビデオエンコーダ200およびビデオデコーダ300とは別個に示されているが、ビデオエンコーダ200およびビデオデコーダ300は、機能的に同様のまたは等価な目的で内部メモリをも含み得ることを理解されたい。さらに、メモリ106、120は、符号化されたビデオデータ、たとえば、ビデオエンコーダ200からの出力、およびビデオデコーダ300への入力を記憶し得る。いくつかの例では、メモリ106、120の部分は、たとえば、生の復号および/または符号化されたビデオデータを記憶するために、1つまたは複数のビデオバッファとして割り振られ得る。
【0041】
[0066] コンピュータ可読媒体110は、ソースデバイス102から宛先デバイス116に符号化されたビデオデータを移送することが可能な任意のタイプの媒体またはデバイスを表し得る。一例では、コンピュータ可読媒体110は、ソースデバイス102が、たとえば、無線周波数ネットワークまたはコンピュータベースネットワークを介して、符号化されたビデオデータを宛先デバイス116にリアルタイムで直接送信することを可能にするための通信媒体を表す。ワイヤレス通信プロトコルなどの通信規格に従って、モデム108は、符号化ビデオデータを含む送信信号を変調し得、モデム122は、受信された送信信号を復調し得る。通信媒体は、無線周波数(RF)スペクトルまたは1つもしくは複数の物理伝送線路などの、任意のワイヤレスまたはワイヤードの通信媒体を備え得る。たとえば、通信媒体は、1つまたは複数の5Gワイヤレス通信リンクを含み得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットベースのネットワークの一部を形成し得る。通信媒体は、ソースデバイス102から宛先デバイス116への通信を容易にするために有用であり得る、ルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【0042】
[0067] いくつかの例では、コンピュータ可読媒体110は、記憶デバイス112を含み得る。ソースデバイス102は、モデム108から記憶デバイス112に符号化されたデータを出力し得る。同様に、宛先デバイス116は、モデム122を介して記憶デバイス112から符号化されたデータにアクセスし得る。記憶デバイス112は、ハードドライブ、Blu-ray(登録商標)ディスク、DVD、CD-ROM、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。
【0043】
[0068] いくつかの例では、コンピュータ可読媒体110は、ソースデバイス102によって生成された符号化されたビデオデータを記憶し得るファイルサーバ114または別の中間記憶デバイスを含み得る。ソースデバイス102は、ソースデバイス102によって生成された符号化されたビデオを記憶し得るファイルサーバ114または別の中間記憶デバイスに、符号化されたビデオデータを出力し得る。宛先デバイス116は、ストリーミングまたはダウンロードを介してファイルサーバ114から記憶されたビデオデータにアクセスし得る。ファイルサーバ114は、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス116に送信することが可能な任意のタイプのサーバデバイスであり得る。ファイルサーバ114は、(たとえば、ウェブサイトのための)ウェブサーバ、ファイル転送プロトコル(FTP)サーバ、コンテンツ配信ネットワークデバイス、またはネットワーク接続ストレージ(NAS)デバイスを表し得る。宛先デバイス116は、インターネット接続を含む任意の標準的なデータ接続を通してファイルサーバ114からの符号化されたビデオデータにアクセスし得る。これは、ファイルサーバ114に記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル(たとえば、Wi-Fi(登録商標)接続)、ワイヤード接続(たとえば、デジタル加入者回線(DSL)、ケーブルモデムなど)、またはその両方の組合せを含み得る。ファイルサーバ114およびモデム122は、ストリーミング送信プロトコル、ダウンロード送信プロトコル、またはそれらの組合せに従って動作するように構成され得る。
【0044】
[0069] モデム108およびモデム122は、ワイヤレス送信機/受信機、モデム、ワイヤードネットワーキング構成要素(たとえば、イーサネット(登録商標)カード)、様々なIEEE802.11規格のいずれかに従って動作するワイヤレス通信構成要素、または他の物理的構成要素を表し得る。モデム108およびモデム122がワイヤレス構成要素を備える例では、モデム108およびモデム122は、第4世代(4G)、4G-LTE(登録商標)(ロングタームエボリューション)、LTEアドバンスト、5Gなどのセルラー通信規格に従って、符号化されたビデオデータなどのデータを転送するように構成され得る。モデム108がワイヤレス送信機を備えるいくつかの例では、モデム108およびモデム122は、IEEE802.11仕様、IEEE802.15仕様(たとえば、ZigBee(登録商標))、s規格など、他のワイヤレス規格に従って、符号化されたビデオデータなどのデータを転送するように構成され得る。いくつかの例では、ソースデバイス102および/または宛先デバイス116は、それぞれのシステムオンチップ(SoC)デバイスを含み得る。たとえば、ソースデバイス102は、ビデオエンコーダ200および/またはモデム108に帰属する機能を実行するためのSoCデバイスを含み得、宛先デバイス116は、ビデオデコーダ300および/またはモデム122に帰属する機能を実行するためのSoCデバイスを含み得る。
【0045】
[0070] 本開示の技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーHTTP(DASH)などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。
【0046】
[0071] 宛先デバイス116のモデム122は、コンピュータ可読媒体110(たとえば、通信媒体、記憶デバイス112、ファイルサーバ114など)から符号化されたビデオデータを受信する。符号化されたビデオデータは、ビデオブロックまたは他のコード化ユニット(たとえば、スライス、ピクチャ、ピクチャのグループ、シーケンスなど)の特性および/またはプロセスを記述する値を有するシンタックス要素などの、ビデオデコーダ300によっても使用される、ビデオエンコーダ200によって定義されるシグナリング情報を含み得る。ディスプレイデバイス118は、復号ビデオデータの復号ピクチャをユーザに表示する。ディスプレイデバイス118は、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを表し得る。
【0047】
[0072] 図1には示されていないが、いくつかの例では、ビデオエンコーダ200およびビデオデコーダ300は各々、オーディオエンコーダおよび/またはオーディオデコーダと統合され得、共通のデータストリーム中にオーディオとビデオの両方を含む多重化ストリームをハンドリングするために、適切なMUX-DEMUXユニット、あるいは他のハードウェアおよび/またはソフトウェアを含み得る。適用可能な場合、MUX-DEMUXユニットはITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
【0048】
[0073] ビデオエンコーダ200およびビデオデコーダ300は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなどの、様々な好適なエンコーダおよび/またはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、本開示の技法を実行するために1つまたは複数のプロセッサを使用してその命令をハードウェアで実行し得る。ビデオエンコーダ200およびビデオデコーダ300の各々は、1つまたは複数のエンコーダまたはデコーダ内に含まれ得、それらのいずれかが、それぞれのデバイス中の複合エンコーダ/デコーダ(CODEC)の一部として統合され得る。ビデオエンコーダ200および/またはビデオデコーダ300を含むデバイスは、集積回路、マイクロプロセッサ、および/またはセルラー電話機などのワイヤレス通信デバイスを備え得る。
【0049】
[0074] 概して、ビデオエンコーダ200およびビデオデコーダ300は、デジタルサンプル値の配列として表されるビデオデータをコーディングし得る。各デジタルサンプル値は、YUV(たとえば、Y、Cb、Cr)フォーマット、赤、緑、および青(RGB)フォーマット、色相飽和値(HSV:Hue Saturation Value)フォーマット、または他のタイプのカラーフォーマットなどの、カラーコーディングフォーマットにおける色成分の値であり得る。いくつかの例では、ビデオエンコーダ200は、符号化より前に、第1のカラーフォーマットでフォーマットされたデータを第2のカラーフォーマットに変換し、ビデオデコーダ300は、第2のカラーフォーマットのデータを第1のカラーフォーマットに変換する。代替的に、前処理および後処理ユニット(図示せず)が、これらの変換を実行し得る。
【0050】
[0075] 本開示は、概して、ピクチャのデータを符号化または復号するプロセスを含むように、ピクチャのコーディング(たとえば、符号化および復号)に言及することがある。同様に、本開示は、ブロックについてのデータを符号化または復号するプロセス、たとえば、予測および/または残差コーディングを含むように、ピクチャのブロックのコーディングに言及することがある。
【0051】
[0076] 本開示の技法によれば、ビデオエンコーダ200は、ビデオデータを符号化するためにハイブリッドデジタルアナログ変調を使用し得る。本明細書で説明されるように、ビデオエンコーダ200は、ビデオデータに基づいて係数を生成し得る。すなわち、ビデオエンコーダ200は、ビデオデータのデジタルサンプル値の配列に基づいて係数を生成し得る。いくつかの例では、係数を生成することの一部として、ビデオエンコーダ200は、ビデオデータに基づいて(たとえば、ビデオデータのピクチャに基づいて)予測データを生成し得る。予測データは、デジタルサンプル値を含むビデオデータの近似値(たとえば、ビデオデータのピクチャの近似値)であり得る。ビデオエンコーダ200は、デジタルサンプル値を量子化し、それらをエントロピー符号化することがある。モデム108は、エントロピー符号化されたデジタルサンプル値を送信し得る。さらに、係数を生成することの一部として、ビデオエンコーダ200は、予測データと元のビデオデータとに基づいて残差データを生成し得る。たとえば、残差データは、予測データのデジタルサンプル値とビデオデータの対応するデジタルサンプル値との間の差を示す残差値(residual value)を含み得る。さらに、ビデオエンコーダ200は、残差値を係数に変換するために2値化プロセス(binarization process)を適用し得る。いくつかの例では、ビデオエンコーダ200は、次いで、係数を量子化し得る。
【0052】
[0077] ビデオエンコーダ200は、係数ベクトルを生成するために係数を使用し得る。係数ベクトルの各々は、係数のうちのn個を含み得、ここで、nは整数値(たとえば、1よりも大きい整数値)である。いくつかの例では、係数ベクトルは、係数のブロックにおける連続する係数からなり得る。いくつかの例では、ビデオエンコーダ200は、チャネルのスペクトル効率に基づいてnの値を決定し得る。
【0053】
[0078] 係数ベクトルの各々について、ビデオエンコーダ200は、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得る。マッピングパターンは、各許容係数ベクトルを一意の振幅値a1にマッピングし、ここで、振幅値a1は、n次元空間において振幅値a2に隣接し、振幅値a1は、振幅値の単調な数直線において振幅値a2に隣接する。以下でより詳細に説明されるように、例示的なマッピングパターンは、S-スネークマッピングパターン(Snake mapping pattern)、M-スネークマッピングパターン、MS-スネークマッピングパターンなどを含み得る。いくつかの例では、係数ベクトルに関する振幅値を決定する代わりに、ビデオエンコーダ200は、2つ以上の係数のビットをインターレースすることによって振幅値を生成するインターレースプロセスを実行し得る。
【0054】
[0079] さらに、ビデオエンコーダ200は、振幅値に基づいてアナログ信号を変調し得る。たとえば、ビデオエンコーダ200は、1つまたは複数の振幅値のセットをアナログシンボル(analog symbol)に変換し得る。アナログシンボルは、位相シフト(phase shift)と電力(power)(すなわち、振幅)との組合せであり得る。ビデオエンコーダ200は、アナログシンボルに基づいて、アナログ信号のシンボルサンプリング時点(symbol sampling instant)の位相シフトおよび電力を設定し得る。
【0055】
[0080] ビデオデコーダ300は、ビデオエンコーダ200によって実行される符号化プロセスとは概して逆の復号プロセスを実行し得る。たとえば、ビデオデコーダ300は、アナログ信号に基づいて振幅値を決定し得る。いくつかの例では、ビデオデコーダ300はまた、予測データのエントロピー符号化されたデジタルサンプル値を取得し得る。ビデオデコーダ300は、予測データのデジタルサンプル値を決定するために、エントロピー符号化されたデジタルサンプル値をエントロピー復号および逆量子化し得る。いくつかの例では、係数ベクトルの各々について、ビデオデコーダ300は、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定し得る。ビデオデコーダ300によって使用されるマッピングパターンは、ビデオエンコーダ200によって使用されるマッピングパターンと同じであり得る。したがって、マッピングパターンは、振幅値の単調な数直線において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングし得る。係数ベクトルの各々は、係数のうちのn個を含む。いくつかの例では、値nは、チャネルのスペクトル効率に基づいて決定され得る。さらに、いくつかの例では、マッピングパターンを使用する代わりに、ビデオデコーダ300は、振幅値から2つ以上の係数のビットをインターレース解除するインターレース解除プロセスを実行し得る。
【0056】
[0081] さらに、ビデオデコーダ300は、係数ベクトル中の係数に基づいてビデオデータを生成し得る。たとえば、ビデオデコーダ300は、係数ベクトル中の係数を逆量子化し、デジタルサンプル値を生成するために逆量子化された係数に2値化解除プロセス(de-binarization process)を適用し得る。ビデオデコーダ300は、係数から生成されたデジタルサンプル値と予測ブロックのデジタルサンプル値とに基づいてビデオデータを再構成し得る。たとえば、ビデオデコーダ300は、ビデオデータを生成するために、係数から生成されたデジタルサンプル値を、予測ブロックの対応するデジタルサンプル値に加算し得る。このようにしてビデオデータを符号化および復号することは、H.264/AVCおよびH.265/HEVCなどの他のビデオコーデックほど多くの計算リソースを使用することなしに、ビデオデータの圧縮を提供し得る。
【0057】
[0082] 図2は、本開示の1つまたは複数の技法による、例示的なビデオエンコーダ200を示すブロック図である。図2は、説明の目的で提供されており、本開示において広く例示され、説明される技法を限定するものと見なされるべきではない。図2の例では、ビデオエンコーダ200は、ビデオデータメモリ202と、予測ユニット204と、量子化ユニット206と、エントロピー符号化ユニット208と、バッファ210と、残差生成ユニット212と、アナログ圧縮ユニット(analog compression unit)214とを含む。図2の例では、アナログ圧縮ユニット214は、2値化ユニット216と、量子化ユニット218と、パッキングユニット220と、アナログ変調ユニット222とを含む。ビデオデータメモリ202、予測ユニット204、量子化ユニット206、エントロピー符号化ユニット208、バッファ210、残差生成ユニット212、およびアナログ圧縮ユニット214(2値化ユニット216と、量子化ユニット218と、パッキングユニット220と、アナログ変調ユニット222とを含む)のいずれかまたはすべては、1つまたは複数のプロセッサまたは処理回路内に実装され得る。たとえば、ビデオエンコーダ200のユニットは、1つまたは複数の回路または論理要素として、ハードウェア回路の一部として、あるいはプロセッサ、ASIC、またはFPGAの一部として実装され得る。その上、ビデオエンコーダ200は、これらおよび他の機能を実行するための追加または代替のプロセッサまたは処理回路を含み得る。
【0058】
[0083] ビデオデータメモリ202は、ビデオエンコーダ200の構成要素によって符号化されるべきビデオデータを記憶し得る。ビデオエンコーダ200は、たとえば、ビデオソース104(図1)からビデオデータメモリ202に記憶されたビデオデータを受信し得る。ビデオデータメモリ202およびバッファ210は、同期ダイナミックランダムアクセスメモリ(DRAM)(SDRAM)を含むDRAM、磁気抵抗RAM(MRAM)、抵抗性RAM(RRAM(登録商標))、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ202およびバッファ210は、同じメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、ビデオデータメモリ202は、図示のように、ビデオエンコーダ200の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【0059】
[0084] 本開示では、ビデオデータメモリ202への言及は、特にそのように説明されない限り、ビデオエンコーダ200の内部のメモリに限定されるものとして解釈されるべきではなく、または特にそのように説明されない限り、ビデオエンコーダ200の外部のメモリに限定されるものとして解釈されるべきではない。そうではなく、ビデオデータメモリ202への言及は、ビデオエンコーダ200が符号化のために受信するビデオデータ(たとえば、符号化されるべきである現在のブロックについてのビデオデータ)を記憶する参照メモリとして理解されるべきである。図1のメモリ106はまた、ビデオエンコーダ200の様々なユニットからの出力の一時的記憶を提供し得る。
【0060】
[0085] 図2の様々なユニットは、ビデオエンコーダ200によって実行される動作を理解するのを支援するために示されている。ユニットは、固定機能回路、プログラマブル回路、またはそれらの組合せとして実装され得る。固定機能回路は、特定の機能を提供する回路を指し、実行され得る動作に関してプリセットされる。プログラマブル回路は、様々なタスクを実行するように、および実行され得る動作においてフレキシブルな機能を提供するようにプログラムされ得る回路を指す。たとえば、プログラマブル回路は、ソフトウェアまたはファームウェアの命令によって定義される様式でプログラマブル回路を動作させるソフトウェアまたはファームウェアを実行し得る。固定機能回路は、(たとえば、パラメータを受信するかまたはパラメータを出力するために)ソフトウェア命令を実行し得るが、固定機能回路が実行する動作のタイプは、概して不変である。いくつかの例では、ユニットのうちの1つまたは複数は、別個の回路ブロック(固定機能またはプログラマブル)であり得、いくつかの例では、ユニットのうちの1つまたは複数は、集積回路であり得る。
【0061】
[0086] ビデオエンコーダ200は、算術論理ユニット(ALU)、基本機能ユニット(EFU)、デジタル回路、アナログ回路、および/またはプログラマブル回路から形成されるプログラマブルコアを含み得る。ビデオエンコーダ200の動作が、プログラマブル回路によって実行されるソフトウェアを使用して実行される例では、メモリ106(図1)は、ビデオエンコーダ200が受信し、実行するソフトウェアの命令(たとえば、オブジェクトコード)を記憶し得るか、またはビデオエンコーダ200内の別のメモリ(図示せず)が、そのような命令を記憶し得る。ビデオデータメモリ202は、受信されたビデオデータを記憶するように構成される。
【0062】
[0087] 図2の例では、ビデオデータメモリ202は、ビデオデータを受信し、記憶し得る。予測ユニット204は、ビデオデータに基づいて予測データを生成し得る。予測データは、デジタルサンプル値を含む。いくつかの例では、予測データは、「画像近似値」と呼ばれることもある粗い画像記述であり得る。粗い画像記述は、一般に、小さいサイズを有するデータパケットで送信され得る。ビデオデコーダ300は、低解像度画像を再構成するために、そのようなデータパケット中のデータを使用し得る。モデム108は、通常の5Gデジタルデータ多重化およびチャネルコーディング方式または別のデジタルデータ多重化およびチャネルコーディング方式を使用して、データパケットを送信し得る。
【0063】
[0088] 予測ユニット204は、様々な方法のうちの1つで予測データを生成し得る。たとえば、いくつかの例では、予測ユニット204は、元のビデオデータのピクチャ中のデジタルサンプル値の各2次元グループ(すなわち、ブロック)について、ブロック中のデジタルサンプル値の平均を決定することによって、予測データのデジタルサンプル値を生成し得る。残差データを決定する目的で、残差生成ユニット212は、ブロック中の各サンプル値が平均に等しいと仮定し得る。しかしながら、ブロックの平均のみが量子化ユニット206に渡される。別の例では、予測ユニット204は、ピクチャ中の各ブロックの左上または中心のピクセルのデジタルサンプル値を決定し、残りのサンプル値を廃棄することによって、予測データを生成し得る。残差データを決定する目的で、残差生成ユニット212は、ブロック中の各サンプル値が決定されたデジタルサンプル値に等しいと仮定し得る。しかしながら、決定されたサンプル値のみが量子化ユニット206に渡される。したがって、量子化ユニット206に渡されるデジタルサンプル値の数は、ピクチャ中のデジタルサンプル値の数よりも著しく少なくなり得る。
【0064】
[0089] 量子化ユニット206は、予測ユニット204によって生成された予測データに基づいて、量子化されたデジタルサンプル値(quantized digital sample value)を生成するために量子化プロセス(quantization process)を適用し得る。量子化は、概して、予測データ中のデジタルサンプル値などのデジタルサンプル値が量子化されて、デジタルサンプル値を表すために使用されるデータ量をできる限り低減し、さらなる圧縮を提供するプロセスを指す。量子化プロセスを実行することによって、量子化ユニット206は、デジタルサンプル値の一部または全部に関連するビット深度を低減し得る。たとえば、量子化ユニット206は、量子化中にnビットデジタルサンプル値をmビットデジタルサンプル値に切り下げ得、ここで、nはmよりも大きい。いくつかの例では、量子化を実行するために、量子化ユニット206は、量子化されるべき値のビット単位の右シフトを実行し得る。
【0065】
[0090] エントロピー符号化ユニット208は、次いで、量子化されたデジタルサンプル値に対してエントロピー符号化を実行し得る。たとえば、エントロピー符号化ユニット208は、コンタクト適応型バイナリ算術コーディング(CABAC)符号化プロセス、コンテキスト適応型可変長コーディング(CAVLC)プロセス、変数間(V2V)長さ符号化プロセス、シンタックスベースのコンテキスト適応型バイナリ算術コーディング(SBAC)プロセス、確率間隔区分エントロピー(PIPE)符号化プロセス、指数ゴロム符号化プロセス、または別のタイプのエントロピー符号化プロセス(entropy-encoding process)などの、様々なタイプのエントロピー符号化プロセスを実行し得る。バッファ210は、エントロピー符号化された量子化デジタルサンプル値を記憶し得る。
【0066】
[0091] さらに、図2の例では、残差生成ユニット212は、予測データのデジタルサンプル値と元のビデオデータのデジタルサンプル値とに基づいて残差データを生成する。たとえば、残差生成ユニット212は、残差データを生成するために、元のビデオデータの対応するデジタルサンプル値から、予測データのデジタルサンプル値を減算し得る。
【0067】
[0092] アナログ圧縮ユニット214は、残差データに基づいてアナログ信号を変調する。図2の例では、アナログ圧縮ユニット214の2値化ユニット216は、残差データを係数に変換する。係数は、バイナリ値であってよい。いくつかの例では、2値化ユニット216は、係数を生成するために残差データに変換を適用する。たとえば、一例では、2値化ユニット216は、係数を生成するために残差データに、変換(たとえば、離散コサイン変換(DCT)、離散サイン変換(DST)、または他のタイプの変換)を適用し得る。
【0068】
[0093] アナログ圧縮ユニット214の量子化ユニット218は、係数に量子化プロセスを適用し得る。量子化プロセスは、係数を表すために使用されるビットの数を低減し得る。いくつかの例では、量子化ユニット218は、係数のバイナリ表現を特定の数の位置だけ右シフトすることによって量子化プロセスを実行し得る。他の例では、係数は、他の方法で生成され得る。たとえば、ビデオエンコーダ200は、量子化プロセスを適用することなしに係数を生成し得る。
【0069】
[0094] 本開示のいくつかの例によれば、アナログ圧縮ユニット214のパッキングユニット220は、係数ベクトルを生成する。係数ベクトルの各々は、係数のうちのn個を含む。係数ベクトルの各々について、パッキングユニット220は、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定する。本開示の他の場所でより詳細に説明されるように、振幅値は、I-Q領域における同相(I)成分または直交(Q)成分の振幅を示し得る。本開示の他の場所でより詳細に説明されるように、マッピングパターンは、振幅値の単調な数直線において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングし得る。単調な数直線は、常に増加または常に減少する数列である。数直線における数字は、等間隔であってもよいし、そうでなくてもよい。許容係数ベクトルは、n個の係数の任意のベクトルを含み、ここで、ベクトル内の各係数は、その係数についての所定の許容可能な値のセットに限定される。いくつかの例では、パッキングユニット220は、チャネルのスペクトル効率に基づいてnを決定する。いくつかの例では、パッキングユニット220は、振幅値を形成するために係数のうちの2つ以上のビットをインターレースするインターレースプロセスを実行する。
【0070】
[0095] アナログ変調ユニット222は、振幅値に基づいてアナログ信号を変調し得る。いくつかの例では、アナログ信号を変調することの一部として、アナログ変調ユニット222は、振幅値のうちの1つまたは複数に基づいてアナログシンボルを決定し得る。いくつかの例では、アナログシンボルは連続的であり、たとえば、アナログシンボルは、従来のデジタル送信では一般的であるように、いかなる直交振幅変調(QAM)レベルにも量子化されない。アナログ変調を使用することは、標準的な変調技法とは対照的に、再送信を必要としないことがある。たとえば、変調されたデジタルデータを送信するときに発生するエラーが(たとえば、チェックサムを使用して)検出され得、受信機はデジタルデータの再送信を要求し得る。しかしながら、アナログ変調されたデータ中の位相または電力の小さい変化が、再構成されたビデオデータ中に大量のひずみを導入する可能性が低いので、アナログ変調されたデータの送信中の位相シフトおよび電力の小さい変化は、再送信を必要としないことがある。したがって、アナログ変調の使用は、計算量を低減し得、レイテンシを低減し得、電力消費を低減し得る。モデム108は、アナログシンボルを送信し得る。
【0071】
[0096] いくつかの例では、アナログ変調ユニット222は、アナログシンボルを生成するために振幅値のペア(すなわち、振幅値ペア)を生成し得る。振幅値ペア中の振幅値は、パッキングユニット220によって生成された連続する振幅値であり得る。図5および図6に関して以下で説明されるように、アナログ変調ユニット222は、アナログシンボルに対応するI-Q平面内の点を決定し得る。振幅値ペアの一方の振幅値は、点のI成分に対応することがあり、振幅値ペアの他方の振幅値は、点のQ成分に対応することがある。アナログ変調ユニット222は、決定された点に基づいて、モデム108が宛先デバイス116に送信するアナログ信号中のシンボルサンプリング時点の位相シフトと電力とを決定し得る。
【0072】
[0097] 図3は、本開示の1つまたは複数の技法による、例示的なビデオデコーダ300を示すブロック図である。図3は、説明の目的で与えられており、本開示において広く例示され、説明される技法を限定するものではない。図3の例では、ビデオデコーダ300は、バッファ302と、エントロピー復号ユニット304と、逆量子化ユニット306と、アナログ復元ユニット(analog decompression unit)308と、再構成ユニット(reconstruction unit)310と、ビデオデータメモリ312とを含む。図3の例では、アナログ復元ユニット308は、アナログ復調ユニット314と、アンパッキングユニット316と、逆量子化ユニット318と、2値化解除ユニット320とを含む。エントロピー復号ユニット304、逆量子化ユニット306、(アナログ復調ユニット314と、アンパッキングユニット316と、逆量子化ユニット318と、2値化解除ユニット320とを含む)アナログ復元ユニット308、および再構成ユニット310のいずれかまたはすべては、1つまたは複数のプロセッサまたは処理回路内に実装され得る。たとえば、ビデオデコーダ300のユニットは、1つもしくは複数の回路もしくは論理要素として、ハードウェア回路の一部として、またはFPGAのプロセッサ、ASICの一部として実装され得る。その上、ビデオデコーダ300は、これらおよび他の機能を実行するための追加または代替のプロセッサまたは処理回路を含み得る。
【0073】
[0098] バッファ302は、ビデオデコーダ300の構成要素によって復号されるべきデジタルビデオデータを記憶し得る。バッファ302に記憶されたデジタルビデオデータは、たとえば、モデム122または記憶媒体から取得され得る。ビデオデータメモリ312は、概して、ビデオデコーダ300が出力し得る、復号されたピクチャを記憶する。バッファ302およびビデオデータメモリ312は、SDRAMを含むDRAM、MRAM、RRAM、または他のタイプのメモリデバイスなどの、様々なメモリデバイスのいずれかによって形成され得る。バッファ302およびビデオデータメモリ312は、同じメモリデバイスまたは別個のメモリデバイスによって与えられ得る。様々な例では、バッファ302およびビデオデータメモリ312は、ビデオデコーダ300の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【0074】
[0099] 図3に示されている様々なユニットは、ビデオデコーダ300によって実行される動作を理解するのを支援するために示されている。ユニットは、固定機能回路、プログラマブル回路、またはそれらの組合せとして実装され得る。図2と同様に、固定機能回路は、特定の機能を提供する回路を指し、実行され得る動作に関してプリセットされる。プログラマブル回路は、様々なタスクを実行するように、および実行され得る動作においてフレキシブルな機能を提供するようにプログラムされ得る回路を指す。たとえば、プログラマブル回路は、ソフトウェアまたはファームウェアの命令によって定義される様式でプログラマブル回路を動作させるソフトウェアまたはファームウェアを実行し得る。固定機能回路は、(たとえば、パラメータを受信するかまたはパラメータを出力するために)ソフトウェア命令を実行し得るが、固定機能回路が実施する動作のタイプは、概して不変である。いくつかの例では、ユニットのうちの1つまたは複数は、別個の回路ブロック(固定機能またはプログラマブル)であり得、いくつかの例では、ユニットのうちの1つまたは複数は、集積回路であり得る。
【0075】
[0100] ビデオデコーダ300は、ALU、EFU、デジタル回路、アナログ回路、および/またはプログラマブル回路から形成されるプログラマブルコアを含み得る。ビデオデコーダ300の動作が、プログラマブル回路上で実行するソフトウェアによって実行される例では、オンチップまたはオフチップメモリは、ビデオデコーダ300が受信し、実行するソフトウェアの命令(たとえば、オブジェクトコード)を記憶し得る。
【0076】
[0101] 図3の例では、モデム122は、エントロピー符号化されたデジタルサンプル値を受信し得る。バッファ302は、モデム122によって受信されたエントロピー符号化されたデジタルサンプル値を記憶し得る。エントロピー復号ユニット304は、バッファ302中のエントロピー符号化されたデジタルサンプル値をエントロピー復号するためのプロセスを実行し得る。エントロピー復号ユニット304は、CABAC復号プロセス、CAVLC復号プロセス、V2V長さ復号プロセス、SBAC復号プロセス、PIPE復号プロセス、指数ゴロム復号プロセス、または別のタイプのエントロピー復号プロセス(entropy-decoding process)などの、様々なタイプのエントロピー復号プロセスを実行し得る。逆量子化ユニット306は、デジタルサンプル値を逆量子化し得る。
【0077】
[0102] アナログ復元ユニット308のアナログ復調ユニット314は、モデム122からアナログ信号を取得し得る。次いで、アナログ復調ユニット314は、シンボルサンプリング時点のアナログ信号の位相シフトおよび電力を決定し得る。次いで、アナログ復調ユニット314は、シンボルサンプリング時点の位相シフトおよび電力に対応するI-Q平面内の点を決定し得る。アナログ復調ユニット314は、次いで、決定された点に対応する振幅値のペアを決定し得る。詳細には、アナログ復調ユニット314は、振幅値ペアの第1の振幅値を点のI成分に設定し得、振幅値ペアの第2の振幅値を点のQ成分に設定し得る。
【0078】
[0103] 各係数ベクトルについて(したがって、アナログ復調ユニット314によって決定された各振幅値について)、アンパッキングユニット316は、係数ベクトルに関する振幅値とマッピングパターンとに基づいて、係数ベクトル中の係数を決定し得る。マッピングパターンは、振幅値の単調な数直線において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングし得る。係数ベクトルの各々は、係数のうちのn個を含む。許容係数ベクトルは、n個の係数の任意のベクトルを含み、ここで、ベクトル内の各係数は、その係数についての所定の許容可能な範囲に限定される。他の例では、アンパッキングユニット316は、振幅値のビットから2つ以上の係数のビットをインターレース解除するインターレース解除プロセスを実行し得る。
【0079】
[0104] アナログ復元ユニット308の逆量子化ユニット318は、係数ベクトルの係数を逆量子化し得る。たとえば、逆量子化ユニット318は、係数を表すバイナリ値を左シフトし得る。アナログ復元ユニット308の2値化解除ユニット320は、次いで、係数をデジタルサンプル値に変換し得る。たとえば、2値化解除ユニット320は、係数をデジタルサンプル値に変換するために、係数に逆変換(たとえば、逆DCT、逆DSTなど)を適用し得る。再構成ユニット310は、アナログ復元ユニット308によって生成されたデジタルサンプル値と、逆量子化ユニット306によって生成されたデジタルサンプル値とに基づいて、ビデオデータのピクチャのデジタルサンプル値を再構成し得る。上記で説明されたように、予測ユニット204によって生成された予測データは、ピクチャのブロックごとに単一のデジタルサンプル値を含み得る。再構成ユニット310は、ブロックの各サンプルロケーションのデジタルサンプル値を決定し得る。たとえば、再構成ユニット310は、ブロックの各サンプルロケーションのデジタルサンプル値を、予測データに含まれるブロックのデジタルサンプル値に等しくなるように設定し得る。いくつかの例では、再構成ユニット310は、ブロックの送信されたデジタルサンプル値と、1つまたは複数の隣接ブロックの送信されたデジタルサンプル値とに基づいて、ブロックのデジタルサンプル値を補間し得る。再構成ユニット310は、アナログ復元ユニット308によって生成されたデジタルサンプル値と、ピクチャのブロックの各々内のロケーションについての決定されたデジタルサンプル値とに基づいて、ピクチャのデジタルサンプル値を再構成し得る。たとえば、再構成ユニット310は、アナログ復元ユニット308によって生成されたデジタルサンプル値を、ピクチャのブロック内のロケーションについての対応するデジタルサンプル値に加算し得る。ビデオデータメモリ312は、たとえば、後続の出力および表示のために、再構成されたデジタルサンプル値を記憶し得る。
【0080】
[0105] 図4は、本開示の1つまたは複数の技法による、例示的なモデム400を示すブロック図である。モデム400は、ソースデバイス102のモデム108または宛先デバイス116のモデム122の事例であり得る。図4の例では、モデム400は、TrBk巡回冗長検査(CRC)付加ユニット402と、コードブロックセグメント化ユニット404と、チャネルコーディングユニット406と、レートマッチングユニット408と、コードブロック連結ユニット410と、スクランブラユニット412と、変調ユニット414と、リソースマッパ416と、直交周波数分割多重(OFDM)信号生成ユニット418とを含む。他の例では、他のタイプのモデムが、他の構成要素を含み得る。TrBk CRC付加ユニット402は、ビデオエンコーダ200のバッファ210から、エントロピー符号化されたデジタルサンプル値を受信し得る。リソースマッパ416は、アナログ変調ユニット222によって生成されたアナログシンボルを受信し得る。
【0081】
[0106] TrBk CRC付加ユニット402は、ペイロードのCRCビットを計算する。ペイロードは、ビデオエンコーダ200によって生成されたデジタル値(たとえば、エントロピー符号化ユニット208によって生成されたエントロピー符号化データ、シフト値、インターレースプロセス情報、量子化情報、係数ベクトル中の係数の数を示すデータ、および/または他の情報)を含み得る。コードブロックセグメント化ユニット404は、ペイロードをコードブロックにセグメント化し得、ここで、コードブロックは、チャネルデコーダ(たとえば、5Gデータチャネルのための低密度パリティ検査コード(LDPC)または4Gデータのためのターボコード)が符号化することを許容される最大ペイロードサイズである。チャネルコーディングユニット406は、チャネルエラーに対処するために冗長性を追加するチャネルコーダ(たとえば、5GデータのためのLDPCおよび4Gデータのためのターボコード)を実装する。レートマッチングユニット408は、コードブロックごとに、データサイズの割振りに応じて送信されるべきビット数を選択する。コードブロック連結ユニット410は、すべてのコードブロックの選択されたビットを連結し得る。スクランブラユニット412は、連結されたデータと、ユーザごとに一意である擬似ランダムゴールドシーケンスとに排他的論理和(XOR)演算を適用することによって、スクランブルされたビットを生成し得る。変調ユニット414は、変調モード、たとえば、π/2-バイナリ位相シフトキーイング(BPSK)、4位相シフトキーイング(QPSK)、16-QAM、64-QAM、または256-QAMに従って、スクランブルされたビットを変調し得る。このようにして、変調ユニット412は、スクランブルされたビットのシーケンス(すなわち、スクランブルされたビットシーケンス)からアナログシンボルを決定し得る。リソースマッパ416は、送信のために割り振られた周波数帯域幅および時間シンボルに従って、周波数領域および時間領域にアナログシンボルを配置し得る。アナログシンボルは、アナログ圧縮ユニット214のアナログ変調ユニット222によって決定されたアナログシンボル、または変調ユニット412によるアナログシンボル(たとえば、量子化ユニット206、エントロピー符号化ユニット208などを通過する予測データに最終的に基づき得る、スクランブルされたビットに基づくアナログシンボル)を含み得る。OFDM信号生成ユニット418は、アナログシンボルに整数高速フーリエ変換(iFFT)を適用し、サイクリックプレフィックスを挿入し、アナログ信号を無線周波数(RF)にアップサンプリングし得る。データを受信するとき、モデム400のユニットによって実行される一連のアクションが、逆に実行され得る。
【0082】
[0107] モデム108内のデジタルパス(digital path)は、デジタルデータを送信するためのステップまたはユニットのセットである。図4の例では、デジタルパスは、TrBk CRC付加ユニット402と、コードブロックセグメント化ユニット404と、チャネルコーディングユニット406と、レートマッチングユニット408と、コードブロック連結ユニット410と、スクランブラユニット412と、変調ユニット414と、リソースマッパ416と、OFDM信号生成ユニット418とを含む。他の例では、デジタルパスは、より多いまたはより少ないユニットまたはステップを含み得る。モデム108内のアナログパスは、TrBk CRC付加ユニット402、コードブロックセグメント化ユニット404、チャネルコーディングユニット406、レートマッチングユニット408、コードブロック連結ユニット410、スクランブラユニット412、変調ユニット414ではなく、リソースマッパ416とOFDM信号生成ユニット418とを含み得る。
【0083】
[0108] 図5は、I-Q領域におけるアナログ変調のための例示的なコンステレーション図500である。コンステレーション図500は、直交振幅変調(QAM)による信号変調の表現である。コンステレーション図500は、シンボルサンプリング時点について、複素平面における2次元xy平面散布図として信号を表示する。本開示のコンテキストでは、シンボルサンプリング時点は、アナログシンボルが送信される時間的瞬間に対応する。
【0084】
[0109] 図5の例では、コンステレーション図500の垂直軸は、I成分に対応し、したがって、虚数の実数成分に対応する。コンステレーション図500の水平軸は、Q成分に対応し、したがって、虚数の虚数成分に対応する。
【0085】
[0110] コンステレーション図500の2次元平面は連続的である(すなわち、非離散的である)。しかしながら、コンステレーション図500は、基準点502A~502P(まとめて「基準点502」)のセットを含んでいる。図5の例では、基準点は、十字で表されている。図6の例では、基準点は、円で表されている。基準点502は、I-Q平面内の点を表すために使用される任意の形状として示され得る。図5の例では、コンステレーション図500は、16個の基準点502のセットを含む。コンステレーション図500の任意の点(基準点502および非基準点を含む)について、原点からの点の距離は、アナログ信号の振幅または電力の測度を表す。水平軸(すなわち、Q軸)から反時計回りに測定された点の角度は、搬送波の基準位相からの位相シフトを表す。
【0086】
[0111] 基準点502の各々は、ビットシーケンスの「アルファベット」における異なるビットシーケンスに対応し得る。コンステレーション図500に16個の基準点502があるので、ビットシーケンスのアルファベットは、0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、および1111に等しくなり得る。
【0087】
[0112] モデム108がデジタルデータ(たとえば、エントロピー符号化された予測データ)を送信しているとき、変調ユニット412(図4)は、デジタルデータに基づいてビットシーケンス(たとえば、スクランブルされたビットシーケンス)に対応する基準点(たとえば、基準点502のうちの1つ)を識別し得る。たとえば、ビットシーケンスが0011に等しく、基準点502Dが0011のビットシーケンスに対応する場合、変調ユニット412は、たとえば、矢印504によって示されるように、基準点502Kに対応する位相シフトおよび電力を有するアナログシンボルを決定し得る。モデム108のリソースマッパ414およびOFDM信号生成ユニット416は、電気信号または無線信号などのアナログ信号においてアナログシンボルを送信するとき、シンボルサンプリング時点の間の位相シフトおよび振幅を使用し得る。
【0088】
[0113] アナログデータ(たとえば、パッキングユニット220によって生成された振幅値)に対してアナログ変調を実行するとき、アナログ圧縮ユニット214のアナログ変調ユニット222は、コンステレーション図500の基準点502を使用しない。そうではなく、アナログ変調ユニット222は、パッキングユニット220によって生成された振幅値のペアを決定し得る。アナログ変調ユニット222は、次いで、I-Q平面内の点の座標(たとえば、デカルト座標)として振幅値ペアを使用し得る。アナログ変調ユニット222は、アナログシンボルを、座標によって示される点の位相シフトおよび電力として決定し得る。アナログ変調ユニット222は、基準点502を使用しないので、決定された点は、たとえば、矢印506によって示されるように、基準点502間にあり得る。
【0089】
[0114] 宛先デバイス116のモデム122は、アナログ信号を受信するように構成される。デジタルデータ(たとえば、エントロピー符号化された予測データ)を復調するとき、変調ユニット414は、シンボルサンプリング時点の間のアナログ信号の位相シフトおよび電力を決定し得る。変調ユニット414は、次いで、シンボルサンプリング時点の間のアナログ信号の位相シフトおよび電力に対応するコンステレーション図500のI-Q平面内の点を決定し得る。変調ユニット414は、次いで、決定された点に最も近い基準点(たとえば、基準点402のうちの1つ)を決定し得る。決定された点は、送信中のノイズのために基準点と一致しないことがある。変調ユニット414は、決定された基準点に対応するビットシーケンスを(たとえば、スクランブラ412に)出力し得る。モデム400の残りの部分(たとえば、スクランブラ412、コードブロック連結ユニット410、レートマッチングユニット412、チャネルコーディングユニット414、コードブロックセグメント化404、およびTrBk CRC付加ユニット402)は、デジタル値を復元するためにビットシーケンスを処理し得る。
【0090】
[0115] モデム122(または、図4のコンテキストでは、モデム400のリソースマッパ416)は、シンボルサンプリング時点の間のアナログ信号の位相シフトおよび電力に対応するアナログシンボルを決定し得る。アナログ復調ユニット314は、次いで、決定された点のI座標を振幅値ペアの第1の振幅値に割り当て、決定された点のQ座標を振幅値ペアの第2の振幅値に割り当てることによって、振幅値のペアを形成し得る。したがって、アナログ復調ユニット314は、I-Q平面内のアナログシンボルの座標のうちの1つとして、係数ベクトルに関する振幅値を決定し得る。アナログ復調ユニット314は、振幅値ペアの振幅値を、アンパッキングユニット316に出力することがある。
【0091】
[0116] 図6は、アナログ変調送信中の受信されたエラーを示す概念図である。より詳細には、図6は、コンステレーション図600を示す。モデム400、アナログ変調ユニット222、およびアナログ復調ユニット314は、図5のコンステレーション図500と同じ方法でコンステレーション図600を使用し得る。図6の例では、基準点を示すために十字の代わりに小さい円が使用されている。ノイズにより、位相シフトおよび電力、したがってアナログシンボルは、送信中に変化し得る。しかしながら、少量のノイズは、通常、受信されたアナログシンボルに対応する振幅値に関して大きい変位を生成しない。言い換えれば、元のI成分と受信されたアナログシンボルに対応するI成分との間の差(すなわち、Δ振幅2)、および、元のQ成分と受信されたアナログシンボルに対応するQ成分との間の差(すなわち、Δ振幅1)は、一般に、アナログシンボルの送信中に小さい。
【0092】
[0117] 上記で説明されたように、パッキングユニット220は、マッピングパターンに基づいて係数ベクトルを振幅値に変換し得る。いくつかの例では、係数ベクトルに関する振幅値を決定するためのプロセスは、係数ベクトルの各係数が符号なし値であると仮定し得る。しかしながら、係数ベクトル中の係数は、正の値と負の値とを含み得る。したがって、パッキングユニット220は、係数ベクトル中の係数を符号なし値に変換するプロセスを実行し得る。
【0093】
[0118] いくつかの例では、パッキングユニット220は、係数ベクトル中の係数を符号なし値に変換するために符号データコーディングを使用し得る。すなわち、係数ベクトル中の係数を符号なし値に変換するために、パッキングユニット220は、係数ベクトル中の係数の各々についての符号値(sign value)を決定し得る。加えて、パッキングユニット220は、係数の絶対値(absolute value)を含んでいる修正された係数ベクトルを生成し得る。この例では、パッキングユニット220は、次いで、振幅値を決定するために、修正された係数ベクトルを使用し得る。
【0094】
[0119] ビデオエンコーダ200は、デジタルパスを介して符号値を送信し得る。たとえば、ビデオエンコーダ200は、デジタルパスを通して符号値を送信し得る。ビデオデコーダ300のアナログ復元ユニット308のアンパッキングユニット316は、符号値を受信し得、アナログ復調ユニット314から係数ベクトルに関する振幅値を受信し得る。アンパッキングユニット316は、修正された係数ベクトルを復元するために、係数ベクトルに関する振幅値を使用し得る。アンパッキングユニット316は、次いで、修正された係数ベクトル中の係数の符号を、符号データ中に示された対応する符号に設定することによって、元の係数ベクトルを再構成し得る。
【0095】
[0120] 図7は、開示の1つまたは複数の技法による、データ符号コーディングの一例を示す概念図である。図7の例では、係数ベクトル700は、正の係数(positive coefficient)と負の係数(negative coefficient)とを含む。パッキングユニット220は、係数ベクトル700中の係数の符号を示す符号データ702を生成し得る。加えて、パッキングユニット220は、係数ベクトル700を、係数ベクトル700中の係数の絶対値を含んでいる修正された係数ベクトル704と交換し得る。パッキングユニット220は、係数ベクトル700に関する振幅値を決定するために、修正された係数ベクトル704を使用し得る。
【0096】
[0121] いくつかの例では、パッキングユニット220は、係数ベクトル中の係数を符号なし値に変換するために最小値コーディングを使用し得る。たとえば、係数ベクトル中の係数を符号なし値に変換するのに最小値コーディングを使用するために、パッキングユニット220は、係数ベクトル中の最も負の係数(most-negative coefficient)に等しいシフト値(shift value)を決定し得る。パッキングユニット220は、次いで、シフト値の絶対値を係数ベクトル中の各係数に加算することによって、修正された係数ベクトルを生成し得る。パッキングユニット220は、係数ベクトルに関する振幅値を決定するために、修正された係数ベクトルを使用し得る。
【0097】
[0122] パッキングユニット220は、デジタルパスを介してシフト値を送信し得る。ビデオデコーダ300のアナログ復元ユニット308のアンパッキングユニット(unpacking unit)316は、シフト値を受信し得、アナログ復調ユニット314から係数ベクトルに関する振幅値を受信し得る。アンパッキングユニット316は、修正された係数ベクトルを復元するために、係数ベクトルに関する振幅値を使用し得る。アンパッキングユニット316は、次いで、修正された係数ベクトル中の各係数にシフト値を加算することによって、元の係数ベクトルを再構成し得る。
【0098】
[0123] 図8は、本開示の1つまたは複数の技法による、最小値コーディングの一例を示す概念図である。図8の例では、係数ベクトル800は、正の係数と負の係数とを含む。パッキングユニット220は、シフト値802を決定する。シフト値802は、係数ベクトル800中の最も負の係数であり得る。したがって、図8の例では、シフト値802は-13に等しい。加えて、パッキングユニット220は、シフト値の絶対値を係数ベクトル中の各係数に加算することによって、修正された係数ベクトル804を生成し得る。ビデオエンコーダ200は、たとえば、デジタルパスを通して、シフト値を送信し得る。
【0099】
[0124] 図9は、本開示の1つまたは複数の技法による、例示的なマッピングパターンを示す概念図である。図10は、本開示の1つまたは複数の技法による、図9のマッピングパターンに対応する振幅値を示す概念図である。本開示は、図9および図10のマッピングパターンを、S-スネークマッピングパターンと呼ぶことがある。パッキングユニット220およびアンパッキングユニット316は、パッキングユニット220が符号付き係数(signed coefficient)から変換した符号なし係数(unsigned coefficient)の係数ベクトルについての符号なし振幅値(unsigned amplitude value)を決定するために、S-スネークマッピングパターンを使用し得る。したがって、S-スネークマッピングパターンは、符号なし係数を符号なし振幅値にマッピングするマッピングパターンの一例である。上述のように、パッキングユニット220は、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得る。マッピングパターンは、振幅値の単調な数直線において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングする。図9および図10の例では、nは2に等しい。
【0100】
[0125] 図9の例では、軸xおよびyの各々は、係数ベクトル中の異なる係数に対応する。振幅値は、(0,0)の係数ベクトルに対応する位置から始まる矢印のチェーンに沿った各位置について1ずつ増加する。たとえば、図10の例に示されているように、(1,10)の係数ベクトルの場合、パッキングユニット220は、対応する振幅値が103であると決定し得る。同様に、アンパッキングユニット316は、103の振幅値に基づいて、対応する係数ベクトルが(1,10)であると決定し得る。同様のタイプのマッピングパターンは、より高い次元に拡張されることがある。
【0101】
[0126] 図11は、本開示の1つまたは複数の技法による、例示的なマッピングパターンを示す概念図である。図12は、本開示の1つまたは複数の技法による、図11のマッピングパターンに対応する振幅値を示す概念図である。本開示は、図11および図12のマッピングパターンを、M-スネークマッピングパターンと呼ぶことがある。パッキングユニット220およびアンパッキングユニット316は、符号付き係数の係数ベクトルに関する符号付き振幅値(signed amplitude value)を決定するために、M-スネークマッピングパターンを使用し得る。したがって、M-スネークマッピングパターンは、符号付き係数を符号付き振幅値にマッピングするマッピングパターンの一例である。パッキングユニット220およびアンパッキングユニット316は、図9および図10のマッピングパターンと同様の方法で、図11および図12のマッピングパターンを使用することがある。しかしながら、パッキングユニット220およびアンパッキングユニット316は、符号付き値(すなわち、正の値および負の値)を含む係数ベクトルとともに図9および図10のマッピングパターンを使用し得る。図9および図10のマッピングパターンは、符号付き値を含む係数ベクトルを使用することができるので、ビデオエンコーダ200は、(たとえば、符号データまたはシフト値の形態で)それほど多くの副次的情報をシグナリングする必要がないことがある。しかしながら、符号付き値の使用に関連する何らかの性能劣化が存在し得る。たとえば、符号付き係数は、同じ解像度の符号なし係数に対して追加のビットを必要とし得る。この追加のビットは、符号なし係数に対して動的な符号付き信号振幅を増加させる(符号なし係数が0,1,..,Aである場合、同じ解像度を有する符号付き係数は-A,..,-1,0,1,..,Aである)。電力(power)が公称レベルにスケーリングされるとき、スケーリングは、より高いダイナミックレンジを有する信号に関してよりアグレッシブであり、したがって、性能が失われることがある。
【0102】
[0127] 図9および図10に示されるマッピングパターンと同様のタイプのマッピングパターンは、より高い次元に拡張され得る。
【0103】
[0128] 図13は、本開示の1つまたは複数の技法による、例示的なマッピングパターンを示す概念図である。図14は、本開示の1つまたは複数の技法による、図13のマッピングパターンに対応する振幅値を示す概念図である。本開示は、図13および図14のマッピングパターンを、MS-スネークマッピングパターンと呼ぶことがある。パッキングユニット220およびアンパッキングユニット316は、図9および図10のS-スネークマッピングパターンと同様の方法で、図13および図14のマッピングパターンを使用することがある。S-スネークマッピングパターンと同様に、パッキングユニット220は、符号なし値のみを含んでいる係数ベクトルを符号付き振幅値に変換するために、MS-スネークマッピングパターンを使用し得る。
【0104】
[0129] MS-スネークマッピングパターンは、ビデオ品質の劣化が小さい圧縮利得を提供し得る。その上、MS-スネークマッピングパターンは、振幅値のノイズ耐性を改善し得る。MS-スネークマッピングパターンは、符号なし数を符号付き振幅値にマッピングする。したがって、MS-スネークマッピングパターンは、符号なし係数を符号付き振幅値にマッピングするマッピングパターンの一例である。MS-スネークマッピングパターンを使用するとき、ビット数は同じままであり得るが、(最大振幅の絶対値が1ビットだけ小さいので)動的電力範囲は6dBだけ低減され得る。電力スケーリングは、あまりアグレッシブでないことがあり、それは、信号回復力を増加させ得、したがって、ノイズ耐性を改善し得る。加えて、MS-スネークマッピングパターンは、多次元の短いアーチの使用により、固有のノイズ抑圧技法を導入し得る。マッピングのために(振幅値の)2D符号付き平面を使用することは、符号付きマッピングに関して1ビットだけマッピングされた振幅を低減し得、より高い処理利得を達成するためのアナログ変調方式の重要な特性である、より低いダイナミックレンジをもたらす。
【0105】
[0130] 本開示の図には示されていないが、他のタイプのマッピングパターンが、符号付き係数を符号なし振幅値にマッピングし得る。
【0106】
[0131] 図15は、本開示の1つまたは複数の技法による、例示的な3次元マッピングパターン500を示す概念図である。上述のように、パッキングユニット220は、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得、ここで、マッピングパターンは、振幅値の単調な数直線において一意の振幅値に隣接する少なくとも1つの他の振幅値にn次元空間において隣接する一意の振幅値に各許容係数ベクトルをマッピングする。図15の例では、nは3に等しい。パッキングユニット220は、本開示の他の場所で説明されるマッピングパターンと同様の方法で、図15のマッピングパターン500を使用し得る。マッピングパターン500は、符号なし係数のベクトルを符号なし振幅値にマッピングする3次元S-スネークマッピングパターンの一例である。たとえば、係数ベクトルが(0,1,2)に等しい場合、パッキングユニット220は、62の振幅値を決定し得る。
【0107】
[0132] 図16は、本開示の1つまたは複数の技法による、ビデオデータを符号化するための例示的な方法を示すフローチャートである。本開示のフローチャートは、例として提示される。他の例は、より多い、より少ない、もしくは異なるアクションを含むことがあるか、または、アクションは異なる順序で実行され得る。
【0108】
[0133] 図16の例では、ビデオエンコーダ200は、ビデオデータに基づいて係数を生成し得る(1600)。たとえば、ビデオデータに基づいて係数を生成する一例では、ビデオエンコーダ200の予測ユニット204は、ビデオデータの予測データを決定し得る。この例では、ビデオエンコーダ200の残差生成ユニット212は、予測ブロック中のサンプル値と、ビデオデータのブロック中の対応するサンプル値との間の差を示す残差データを生成し得る。さらに、この例では、アナログ圧縮ユニット214は、残差データに基づいて係数を生成し得る。たとえば、ビデオエンコーダ200の2値化ユニット216は、係数を生成するために残差データを2値化し得、量子化ユニット218は、係数を量子化し得る。ビデオデータに基づいて係数を生成する他の例では、ビデオエンコーダ200は、より多い、より少ない、または異なるステップを実行し得る。たとえば、いくつかの例では、ビデオエンコーダ200は、量子化ステップを実行しない。さらに他の例では、ビデオエンコーダ200は、残差データを2値化するステップを実行しない。
【0109】
[0134] いくつかの例では、ビデオエンコーダ200は、予測データに基づいてデジタル値(たとえば、ビットシーケンス)を生成し得、モデム108(たとえば、モデム108の変調ユニット414)は、デジタル値を送信するように構成され得る。たとえば、量子化ユニット206は、予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成し得る。エントロピー符号化ユニット208は、量子化されたデジタルサンプル値に基づいてデジタル値を生成するエントロピー符号化プロセスを実行し得る。デジタル値を送信するために、モデム108は、たとえば、図4に関して説明されたように、エントロピー符号化データに基づいてビットシーケンスを生成し得る。変調ユニット414は、ビットシーケンスに基づいてアナログシンボルを決定し得る。
【0110】
[0135] いくつかの例では、アナログ圧縮ユニット214は、係数を生成するために初期係数(initial coefficient)を修正し得る。図7に一致する一例では、アナログ圧縮ユニット214(たとえば、2値化ユニット216および/または量子化ユニット218)は、ビデオデータに基づいて初期係数を生成し得る。この例では、アナログ圧縮ユニット214は、初期係数の正/負の符号(positive/negative sign)を示す符号値を生成し得る。さらに、アナログ圧縮ユニット214は、初期係数の絶対値として係数を生成し得る。この例では、モデム108は、符号値を表すデータ(data)をシグナリングするように構成され得る。
【0111】
[0136] 図8に一致する、初期係数を修正する別の例では、係数ベクトル中の係数は、初期係数の非負バージョン(non-negative version)である。この例では、ビデオデータに基づいて(たとえば、残差データに基づいて)係数を生成することの一部として、アナログ圧縮ユニット214(たとえば、2値化ユニット216および/または量子化ユニット218)は、残差データに基づいて初期係数を生成し得る。この例では、アナログ圧縮ユニット214は、初期係数のうちの最も負の初期係数(most-negative initial coefficient)に基づいてシフト値(たとえば、図8のシフト値802)を決定し得る。アナログ圧縮ユニット214は、シフト値に基づいて、初期係数を初期係数の非負バージョンに変換する(transform)プロセス(process)を実行し得る。この例では、モデム108は、シフト値を表すデータをシグナリングするように構成され得る。
【0112】
[0137] さらに、図16の例では、ビデオエンコーダ200のパッキングユニット220は、係数ベクトルを生成し得る(1602)。係数ベクトルの各々は、係数のうちのn個を含む。パッキングユニット220は、様々な方法のうちの1つで係数ベクトルを生成し得る。たとえば、一例では、パッキングユニット220は、係数コーディング順序に従ってn個の連続する係数のグループとして係数ベクトルを生成し得る。ラスタ走査順序、ジグザグ走査順序、逆ラスタ走査順序、垂直走査順序などの、様々な係数コーディング順序が使用され得る。いくつかの例では、係数ベクトルは、1つまたは複数の負の係数および1つまたは複数の正の係数(すなわち、符号付き係数)を含み得る。いくつかの例では、係数ベクトルは、非負係数(すなわち、符号なし係数)のみを含む。
【0113】
[0138] 係数ベクトルの各々について、パッキングユニット220は、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得る(1604)。複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングする。それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する。上記で説明された図9図15は、パッキングユニット220が係数ベクトルに関する振幅値を決定するために使用し得る例示的なマッピングパターンを示す。したがって、いくつかの例では、マッピングパターンは、S-スネークパターン、M-スネークパターン、MS-スネークパターン、または別のタイプのマッピングパターンのうちの1つであり得る。値nは、2以上であり得る。
【0114】
[0139] いくつかの例では、係数ベクトルに関する振幅値を決定するために、パッキングユニット(packing unit)220は、n次元空間における位置(position)を決定し得る。n次元空間における位置の座標(coordinates)は、係数ベクトルの係数に基づき、マッピングパターンは、n次元空間における異なる位置(different positions)を、複数の振幅値中の異なる振幅値(different amplitude values)にマッピングする。パッキングユニット220は、係数ベクトルに関する振幅値を、n次元空間における決定された位置に対応する振幅値として決定し得る。
【0115】
[0140] いくつかの例では、ビデオエンコーダ200は、1つまたは複数の最適化基準に従ってマッピングパターン間で動的に切り替えることがある。たとえば、ビデオエンコーダ200は、より高い性能が必要とされるとき、図9および図10のマッピングパターンを使用し得、より少ない副次的情報を送ることがより望ましいとき、図11および図12のマッピングパターンを使用し得る。この例では、性能は、ノイズ回復力、アナログシンボル当りのビット数に関して、または何らかの他のメトリックに従って測定され得る。この例では、ビデオエンコーダ200は、ブロックベースで、ピクチャベースで、シーケンスベースで、または別のベースで、マッピングパターン間で切り替えることがある。別の例では、ビデオエンコーダ200は、たとえば、図24図26に関して説明された方法で、マッピングパターン間で動的に切り替えることがある。
【0116】
[0141] アナログ変調ユニット222は、次いで、係数ベクトルに関する振幅値に基づいてアナログ信号を変調し得る(1606)。アナログ変調ユニット222は、本開示の他の場所で提供される例、たとえば、図5および図6に関して説明された例のいずれかに従ってアナログ振幅変調を実行し得る。たとえば、アナログ変調ユニット222は、振幅値のペアに基づいてアナログシンボルを決定し得る。アナログシンボルは、振幅値ペアによって示される座標を有するI-Q平面内の点の位相シフトおよび電力に対応し得る。アナログ変調ユニット222は、決定された位相シフトおよび電力に基づいて、シンボルサンプリング時点の間にアナログ信号を変調し得る。モデム108は、アナログ信号を出力するように構成され得る(1608)。
【0117】
[0142] 図17は、本開示の1つまたは複数の技法による、ビデオデータを復号するための例示的な方法を示すフローチャートである。図17の例では、ビデオデコーダ300のアナログ復調ユニット314は、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定し得る(1700)。アナログ復調ユニット314は、本開示の他の場所で提供される例、たとえば、図5および図6に関して説明された例のいずれかに従ってアナログ振幅復調を実行し得る。たとえば、アナログ復調ユニット314は、アナログ信号のシンボルサンプリング時点の位相シフトおよび電力を決定し得る。アナログ復調ユニット315は、決定された位相シフトおよび電力によって示されるI-Q平面内の点を決定し得る。アナログ復調ユニット314は、次いで、I-Q平面内の点の座標として振幅値ペアを決定し得る。
【0118】
[0143] 係数ベクトルの各々について、アンパッキングユニット316は、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定し得る(1702)。複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし得る。それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する。係数ベクトルの各々は、係数のうちのn個を含み得る。上記で説明された図9図15は、アンパッキングユニット316が係数ベクトルに関する振幅値を決定するために使用し得る例示的なマッピングパターンを示す。したがって、いくつかの例では、マッピングパターンは、S-スネークパターン、M-スネークパターン、MS-スネークパターン、または別のタイプのマッピングパターンのうちの1つであり得る。値nは、2以上であり得る。いくつかの例では、アンパッキングユニット316は、係数ベクトル中の係数を、振幅値に対応するn次元空間における位置の座標として決定し得、ここにおいて、マッピングパターンは、n次元空間における異なる位置を、複数の振幅値中の異なる振幅値にマッピングする。いくつかの例では、係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む。他の例では、係数ベクトルは、非負係数のみを含み得る。
【0119】
[0144] 図7の例などの、いくつかの例では、係数を決定することの一部として、ビデオデコーダ300は、(たとえば、モデム122のデジタルパスを介して)符号値を取得し得、ここで、符号値は、係数ベクトル中の係数の正/負の符号を示す。そのような例では、ビデオデコーダ300は、係数ベクトルに関する振幅値とマッピングパターンとに基づいて、係数ベクトル中の係数の絶対値を決定し得る。ビデオデコーダ300は、少なくとも部分的に係数ベクトル中の係数の絶対値に符号値を適用することによって、係数ベクトル中の係数を再構成し得る。図8の例などの、いくつかの例では、係数を決定することの一部として、ビデオデコーダ300は、(たとえば、モデム122のデジタルパスを介して)シフト値を表すデータを取得し得る。そのような例では、シフト値は、係数ベクトル中の係数のうちの最も負の係数を示す。加えて、そのような例では、ビデオデコーダ300は、係数ベクトルに関する振幅値とマッピングパターンとに基づいて、係数ベクトル中の係数の中間値(intermediate value)を決定し得る。ビデオデコーダ300は、少なくとも部分的に係数ベクトル中の係数の中間値の各々にシフト値を加算することによって、係数ベクトル中の係数を再構成し得る。
【0120】
[0145] さらに、図17の例では、ビデオデコーダ300は、係数ベクトル中の係数に基づいてビデオデータを生成し得る(1704)。たとえば、一例では、ビデオデコーダ300の逆量子化ユニット318は、係数ベクトルの係数を逆量子化し得る。この例では、ビデオデコーダ300の2値化解除ユニット320は、係数をデジタルサンプル値に変換するために2値化解除プロセスを実行し得る。たとえば、2値化解除ユニット320は、係数をデジタルサンプル値に変換するために、係数に逆DCTを適用し得る。このようにして、アナログ復元ユニット308は、デジタルサンプル値を生成し得る。さらに、この例では、ビデオデコーダ300のエントロピー復号ユニット304は、(たとえば、モデム122のデジタルパスを介して)デジタル値を取得し得る。ビデオデコーダ300は、デジタル値に基づいて予測データを生成し得る。たとえば、エントロピー復号ユニット304は、量子化されたデジタルサンプル値を生成するために、デジタル値に対してエントロピー復号プロセスを実行し得る。ビデオデコーダ300の逆量子化ユニット306は、量子化されたデジタルサンプル値を逆量子化(inverse quantize)することによって予測データを生成し得る。ビデオデコーダ300の再構成ユニット310は、たとえば、予測ブロックの対応するデジタルサンプル値と、アナログ復元ユニット308によって生成されたデジタルサンプル値とを加算することによって、予測データと残差データとに基づいてビデオデータを生成し得る。このようにして、ビデオデコーダ300は、係数ベクトル中の係数に基づいてビデオデータを生成することが可能である。他の例では、ビデオデコーダ300は、より多い、より少ない、または異なるアクションを実行し得る。たとえば、いくつかの例では、逆量子化ユニット306および/または逆量子化ユニット318によって実行される逆量子化ステップは省略される。いくつかの例では、ビデオデコーダ300は、エントロピー復号ユニット304によって実行されるエントロピー復号プロセスを省略し得る。
【0121】
[0146] 本開示の1つまたは複数の技法によれば、パッキングユニット220は、複数の係数を単一の振幅値に統合するインターレースプロセスを実行し得る。インターレースプロセスを実行することは、ノイズ耐性を改善し得、2つ以上のノンインターレースアナログシンボルを送るために2つ以上の異なるシンボルサンプリング時点を使用することに対して圧縮利得を提供し得る。パッキングユニット220は、係数ベクトルに関する振幅値を生成するためにマッピングパターンを使用する、本開示の他の場所で説明されるプロセスの代わりに、振幅値を生成するためにインターレースプロセスを実行し得る。
【0122】
[0147] 図18は、本開示の1つまたは複数の技法による、インターレースすることの第1の例を示す概念図である。図18の例では、第1の係数1800は、4ビット(すなわち、ビットa0~a3)からなり、第2の係数1802は、4ビット(すなわち、b0~b3)からなる。概して、インターレースすることは、別の係数のビット間に(たとえば、交互パターン、ラウンドロビンパターン、または他のタイプのパターンで)1つまたは複数の係数のビットを挿入することを指す。ビデオエンコーダ200のパッキングユニット220は、係数1800のビットを係数1802のビットとインターレースすることによって、振幅値1804を生成するインターレースプロセスを実行し得る。本開示は、インターレースプロセスを実行することによって生成された振幅値を「インターレースされた振幅値」と呼ぶことがある。
【0123】
[0148] アナログ変調ユニット222は、本開示の他の場所で説明される振幅値と同じ方法で、インターレースされた振幅値のペアを使用し得る。ビデオデコーダ300のアンパッキングユニット316は、アナログ復調ユニット314からインターレースされた振幅値を受信し得、インターレースされた振幅値から係数を再構成(reconstruct)するインターレース解除プロセスを実行し得る。たとえば、図18のコンテキストでは、アンパッキングユニット316は、インターレースされた振幅値1804から係数1800および係数1802を再構成するインターレース解除プロセスを実行し得る。
【0124】
[0149] 図19は、本開示の1つまたは複数の技法による、インターレースすることの第2の例を示す概念図である。図19の例では、ビデオエンコーダ200のパッキングユニット220は、インターレースされた振幅値1908を生成するために、係数1900、1902、1904、および1906のビットをインターレースするインターレースプロセスを実行する。ビデオデコーダ300のアンパッキングユニット316は、係数1900、1902、1904、および1906を形成するために、インターレースされた振幅値1908のビットをインターレース解除するインターレース解除プロセスを実行する。
【0125】
[0150] いくつかの例では、パッキングユニット220は、異なるインターレースプロセス間で動的に選択し得る。図18および図19からわかるように、インターレースされた振幅値は、係数から振幅値を生成するために使用されるインターレースプロセスに応じて異なるビット数を含むことができる。ソースデバイス102がアナログ信号を送信しているチャネルの様々な特性は、チャネルのスペクトル効率を規定し得る。チャネルのスペクトル効率は、振幅値においていくつのビットが使用され得るかを示す。たとえば、チャネル中により大きいノイズがある場合、スペクトル効率はより低くなり得、したがって、振幅値はより少ないビットを有し得る。したがって、パッキングユニット220は、チャネルのスペクトル効率と係数当りのビット数とに基づいて値xを決定し得る。たとえば、パッキングユニット220は、係数当りのビット数で除算されたスペクトル効率として値xを決定し得る。パッキングユニット220は、次いで、インターレースされた振幅値を形成するために、x係数のビットをインターレースするインターレースプロセスを使用し得る。このようにして、パッキングユニット220は、アナログ信号が送信されるチャネルのスペクトル効率に基づいて、複数のインターレースプロセスからインターレースプロセスを選択し得る。ビデオデコーダ300のアンパッキングユニット316は、複数のインターレース解除プロセスからインターレース解除プロセスを選択し得る。たとえば、ビデオエンコーダ200は、インターレースプロセスを示すデータを(たとえば、デジタルパスを介して)シグナリングし得る。いくつかの例では、インターレース解除プロセス(deinterlacing process)の各々は、インターレースされた振幅値から異なる数の係数をインターレース解除する。
【0126】
[0151] インターレースされた振幅値は、特定の値においてノイズに敏感であり得る。たとえば、シンボルサンプリング時点の間のアナログ信号の電力または位相の変化は、アナログ復調ユニット314がシンボルサンプリング時点について決定するインターレースされた振幅値への1の加算をもたらし得る。パックされた振幅値の変化は、元のデジタルサンプル値と、インターレースされた振幅値から導出されたデジタルサンプル値との間の著しい差をもたらす可能性がある。
【0127】
[0152] 図20は、コーディングプロセスに対する例示的なノイズの影響を示すブロック図である。図20の例では、ビデオエンコーダ200の2値化ユニット216は、各々が7に等しい2つのデジタルサンプル値を受信し得る。2値化ユニット216は、デジタルサンプル値を、両方とも0111に等しい係数に変換し得る。パッキングユニット220は、(10進数で63に等しい)0011_1111のインターレースされた振幅値を生成するために、係数のビットをインターレースするインターレースプロセスを実行し得る。アナログ変調ユニット222(図20では、デジタルからアナログを表すD2Aと標示されている)は、次いで、インターレースされた振幅値に基づいてアナログ信号を変調するためにアナログ変調を実行し得る。アナログ信号は、チャネル2000を介して送信され得る。
【0128】
[0153] チャネル2000を介したアナログ信号の送信中に、ノイズは、アナログ復調ユニット314(図20では、アナログからデジタルを表すA2Dと標示されている)によってアナログ信号から復調されたインターレースされた振幅値に1ビットの変化を引き起こし得る。たとえば、シンボルサンプリング時点の間のアナログ信号の電力または位相シフトの変化は、アナログ復調ユニット314に、元の振幅値ペアに対応するI-Q平面内の点とは異なるI-Q平面内の点を決定させ得る。したがって、アナログ復調ユニット314によって決定されたインターレースされた振幅値は、63ではなく64に等しいことがある。図20の例に示されているように、インターレースされた振幅値は、0100_0000としてバイナリで表され得る。アンパッキングユニット316は、0100_0000のインターレースされた振幅値を、係数0000および1000に変換するインターレース解除プロセスを実行し得る。2値化解除ユニット320は、これらの係数を、図20の例では0および8に等しいデジタルサンプル値に変換し得る。0および8のデジタルサンプル値は、7の元のデジタルサンプル値および7とは著しく異なることに留意されたい。この差は、これらのデジタルサンプル値に基づいて、復号されたピクチャの品質に重大な悪影響を及ぼし得る。このノイズ脆弱性は、主に特定のインターレースされた振幅値に関して生じることに留意されたい。しかしながら、このノイズ脆弱性は、他のインターレースされた振幅値ではそれほど深刻ではない。
【0129】
[0154] この問題に対処し得る本開示の1つまたは複数の技法によれば、パッキングユニット220は、インターレースされた振幅値の数直線におけるノイズに弱いインターレースされた振幅値間の位置において、インターレースされた振幅値の数直線におけるギャップ値が存在するように、インターレースされた振幅値を代わりにインターレースされた振幅値に再マッピングし得る。インターレースされた振幅値の数直線におけるノイズに弱いインターレースされた振幅値は、最小のノイズ(たとえば、1ビットフリップ)を加えることが、インターレースされた振幅値に基づいて決定されたデジタルサンプル値に対して著しい変化を引き起こし得るインターレースされた振幅値である。アナログ信号から復調されたインターレースされた振幅値がギャップ値のうちの1つであるとアナログ復調ユニット314が決定したとき、アナログ復調ユニット314は、インターレースされた振幅値を、非ギャップでインターレースされた振幅値のうちの最も近い1つに丸め得る。
【0130】
[0155] 図21は、本開示の1つまたは複数の技法による、ギャップ範囲を示す概念図である。図21の例では、数直線2100は、インターレースされた振幅値の範囲に対応する。数直線2100における各ブロックは、ノイズに弱いインターレースされた振幅値間の一連のインターレースされた振幅値に対応し得る。数直線2100は、ノイズに弱いインターレースされた振幅値間へのギャップ値の挿入を概念的に示す。詳細には、図21の例では、濃いバーは、ギャップ値の範囲(すなわち、ギャップ範囲)に対応する。ギャップ値の範囲の幅は、インターレースされた振幅値の10進値を1つの値だけ変化させる、ノイズからのインターレースされた振幅値のバイナリ表現における変化したビット数と相関され得る(たとえば、そのビット数に比例するか、またはそれとの何らかの他の関係を有し得る)。たとえば、図21の数直線2104に示されるように、2つのギャップ値が15と16との間に挿入され得、4つのギャップ値が31と32との間に挿入され得、2つのギャップ値が47と48との間に挿入され得、以下同様である。
【0131】
[0156] したがって、図21の数直線2106に示されるように、アナログ変調ユニット222は、インターレースされた振幅値0~15を代わりにインターレースされた振幅値0~15に、インターレースされた振幅値16~31を代わりにインターレースされた振幅値18~33に、インターレースされた振幅値32~47を代わりにインターレースされた振幅値38~53に、インターレースされた振幅値48~63を代わりにインターレースされた振幅値56~71に、以下同様にマッピングすることがある。したがって、アナログ復調ユニット314は、代わりにインターレースされた振幅値0~15を対応するインターレースされた振幅値0~15に再び変換し、代わりにインターレースされた振幅値16~17(すなわち、ギャップ値)をそれぞれインターレースされた振幅値15および16に変換し、代わりにインターレースされた振幅値18~33を対応するインターレースされた振幅値16~31に再び変換し、代わりにインターレースされた振幅値34~35(すなわち、ギャップ値)をインターレースされた振幅値31に変換し、代わりにインターレースされた振幅値36~37(すなわち、ギャップ値)をインターレースされた振幅値32に変換し、代わりにインターレースされた振幅値38~53を対応するインターレースされた振幅値32~37に変換するなど、以下同様に変換し得る。
【0132】
[0157] 図22は、本開示の1つまたは複数の技法による、ビデオデータを符号化するための例示的な方法を示すフローチャートである。図22の例では、予測ユニット204は、ビデオデータの予測データを生成し得る(2200)。加えて、残差生成ユニット212は、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成し得る(2202)。たとえば、残差生成ユニット212は、残差データのデジタルサンプル値を生成するために、ビデオデータの対応するデジタルサンプル値から予測データのデジタルサンプル値を減算し得る。
【0133】
[0158] アナログ圧縮ユニット214は、残差データに基づいて係数を生成し得る(2204)。たとえば、2値化ユニット216は、残差データに基づいて係数を生成する2値化プロセスを実行し得る。この例では、量子化ユニット218は、係数を量子化する量子化プロセスを実行し得る。
【0134】
[0159] 本開示の技法によれば、パッキングユニット220は、インターレースされた振幅値を生成するためにインターレースプロセスを実行し得る(2206)。インターレースプロセスは、インターレースされた振幅値を生成するために、係数の2つ以上のビットをインターレースする。たとえば、図19の例では、インターレースプロセスは、インターレースされた振幅値を生成するために、係数のうちの2つのビットをインターレースする。たとえば、図20の例では、インターレースプロセスは、インターレースされた振幅値を生成するために、係数のうちの4つのビットをインターレースする。いくつかの例では、パッキングユニット220は、アナログ信号が送信されるチャネルのスペクトル効率に基づいて、複数のインターレースプロセスからインターレースプロセスを選択する。いくつかのそのような例では、インターレースプロセスの各々は、インターレースされた振幅値を生成するために、異なる数の係数をインターレースする。
【0135】
[0160] さらに、ビデオエンコーダ200は、予測データに基づいてデジタル値を生成するように構成され得る(2208)。たとえば、量子化ユニット206は、予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成し得る。この例では、エントロピー符号化ユニット208は、量子化されたデジタルサンプル値に基づいてデジタル値を生成するエントロピー符号化プロセスを実行し得る。
【0136】
[0161] モデム108は、インターレースされた振幅値とデジタル値とに基づいて変調された1つまたは複数のアナログ信号を出力するように構成され得る(2210)。たとえば、アナログ変調ユニット222は、インターレースされた振幅値を含む振幅値ペアに対応するアナログシンボルを決定し得る。モデム108は、アナログシンボルに対応する位相シフトおよび電力に基づいて、シンボルサンプリング時点の間にアナログ信号を送信し得る。モデム108はまた、たとえば、図4に関して説明された方法で、デジタル値に基づいてアナログ信号を送信し得る。
【0137】
[0162] いくつかの例では、アナログ変調ユニット222は、元の数直線(たとえば、図21の数直線2100)からのインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む代わりの数直線(たとえば、図21の代わりの数直線2106)におけるマッピングされた値にマッピングするマッピングプロセスを実行する。ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置し得る。マッピングプロセスは、任意のインターレースされた振幅値を、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングしない。アナログ変調ユニット222は、マッピングされた値を含む振幅値ペアを生成し得る。アナログ変調ユニット222は、次いで、マッピングされた値に基づいてアナログシンボルを決定し得る。モデム108は、アナログシンボルに基づいてアナログ信号を変調し得る。したがって、モデム108は、マッピングされた値に基づいてアナログ信号を変調し得る。
【0138】
[0163] 図23は、本開示の1つまたは複数の技法による、ビデオデータを復号するための例示的な方法を示すフローチャートである。図23の例では、アナログ復調ユニット314は、アナログ信号に基づいてインターレースされた振幅値を決定し得る(2300)。いくつかの例では、アナログ信号に基づいてインターレースされた振幅値を決定することの一部として、モデム112は、アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定し得る。インターレースされた振幅値は、I-Q平面内のアナログシンボルの座標のI成分またはQ成分であり得る。
【0139】
[0164] いくつかの例では、マッピングされた値は、I-Q平面内のアナログシンボルの座標のI成分またはQ成分であり得る。マッピングされた値は、元の数直線(たとえば、図21の数直線2100)におけるインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む代わりの数直線(たとえば、図21の代わりの数直線2106)におけるマッピングされた値にマッピングするマッピングプロセスを使用して生成されていることがある。ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置することがあり、マッピングプロセスは、インターレースされた振幅値のいずれも、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングしない。この例では、アナログ復調ユニット314は、マッピングされた値をインターレースされた振幅値にマッピングするために、マッピングプロセスの逆を使用し得る。いくつかの例では、アナログ信号を復調することによって決定されたマッピングされた値は、ギャップ範囲のうちの1つにある。そのような事例では、マッピングプロセスの逆は、ギャップ範囲内のマッピングされた値を、元の数直線におけるインターレースされた振幅値にマッピングする。このようにして、アナログ復調ユニット314は、アナログ信号に対するノイズの影響を低減することが可能であり得る。
【0140】
[0165] したがって、そのような例では、アナログ復調ユニット314は、元の数直線におけるインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む代わりの数直線におけるマッピングされた値にマッピングするマッピングプロセスを使用して生成されたマッピングされた値を決定するために、アナログ信号を復調し得、ここにおいて、ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置し、マッピングプロセスは、インターレースされた振幅値のいずれも、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングしない。アナログ復調ユニット314は、マッピングされた値をインターレースされた振幅値にマッピングするために、マッピングプロセスの逆を使用し得る。
【0141】
[0166] さらに、図23の例では、アンパッキングユニット316は、2つ以上の係数を生成するためにインターレース解除プロセスを実行し得る(2302)。2つ以上の係数のビットは、インターレースされた振幅値においてインターレースされる。いくつかの例では、インターレース解除プロセスは、係数のうちの2つのビットをインターレース解除する(たとえば、図18の例に示されるインターレースプロセスの逆)。いくつかの例では、インターレース解除プロセスは、インターレースされた振幅値から係数のうちの4つのビットをインターレース解除する(たとえば、図19の例に示されるインターレースプロセスの逆)。いくつかの例では、アンパッキングユニット316は、1つまたは複数のアナログ信号において送信されたデータに基づいて、複数のインターレース解除プロセスからインターレース解除プロセスを選択し得る。いくつかのそのような例では、インターレース解除プロセスの各々は、異なる数の係数をインターレース解除する。
【0142】
[0167] アナログ復元ユニット308は、2つ以上の係数に基づいて残差データを生成し得る(2304)。たとえば、逆量子化ユニット318は、係数を逆量子化する逆量子化プロセス(inverse quantization process)を実行し得る。2値化解除ユニット320は、係数に基づいて残差データを生成する2値化解除プロセスを実行し得る。
【0143】
[0168] 加えて、ビデオデコーダ300は、デジタル値を取得し得る(2306)。たとえば、モデム122は、デジタル値を取得し、そのデジタル値をビデオデコーダ300に提供するように構成され得る。ビデオデコーダ300は、デジタル値に基づいて予測データを生成し得る(2308)。たとえば、エントロピー復号ユニット304は、デジタル値に基づいて量子化されたデジタルサンプル値を生成するエントロピー復号プロセスを実行し得る。逆量子化ユニット306は、逆量子化されたデジタルサンプル値に基づいて予測データのデジタルサンプル値を生成する逆量子化プロセスを実行し得る。ビデオデコーダ300の再構成ユニット310は、予測データと残差データとに基づいてビデオデータを再構成し得る(2310)。たとえば、再構成ユニット310は、ビデオデータのデジタルサンプル値を再構成するために、予測データのデジタルサンプル値を、残差データの対応するデジタルサンプル値に加算し得る。
【0144】
[0169] 図24は、本開示の1つまたは複数の技法による、可変シンボルレートを使用する例示的なアナログ圧縮ユニット2400を示すブロック図である。アナログ圧縮ユニット2400は、図2のアナログ圧縮ユニット214の代わりに使用され得る。図24の例では、アナログ圧縮ユニット2400は、ブロックセグメント化ユニット2402と、ブロック動的量子化ユニット2404と、スペクトル効率ユニット2406と、パッキングユニット2408と、スケーリングユニット2410と、アナログ変調ユニット2412とを含み得る。
【0145】
[0170] ブロックセグメント化ユニット(Block segmentation unit)2402は、残差データを受信し、残差データを2次元ブロックにセグメント化し得る。言い換えれば、ブロックセグメント化ユニット2402は、サイズNの残差画像をN/K個のブロックに分割し得、ここで、Kはブロック当りの係数の数を示す。ブロックi当りのK個の係数は、b0,i,b1,i...bk,i,として示され得、ここで、i=0,1,...,N/K-1である。いくつかの例では、ブロックセグメント化ユニット2404は、ブロックのコンテンツの1つまたは複数の特性に基づいて、ブロックのサイズを適応的に選択し得る。たとえば、ブロックセグメント化ユニット2404は、比較的一様なデジタルサンプル値を含んでいるピクチャの領域内のブロックについてより大きいブロックサイズを選択し得、あまり一様でないデジタルサンプル値を含んでいるピクチャの領域についてより小さいブロックサイズを選択し得る。いくつかの例では、ブロックセグメント化ユニット2402は、ブロックの係数を生成するために、ブロックの残差データに変換を適用し得る。たとえば、ブロックセグメント化ユニット2402は、ブロックの係数を生成するために、ブロックの残差データにDCT(たとえば、整数DCT)または他の変換を適用し得る。いくつかの例では、ブロックの係数は、残差デジタルサンプル値であり得る。
【0146】
[0171] 各ブロックiについて、ブロック動的量子化ユニット(block dynamic quantization unit)2404は、各々がQビットからなる量子化係数を生成するためにブロックiを量子化し得る。Qの値は、異なるブロックで異なり得る。したがって、本開示は、ブロックiの係数を量子化するために使用されるビット数をQiとして示し得る。ブロックi(ここで、ブロックiはサイズkを有する)の量子化係数cは、c0,i,c1,i,...,ck,iとして示される。
【0147】
[0172] いくつかの例では、ブロック動的量子化ユニット2404は、ピクチャの総エントロピーに基づいてブロックの係数を量子化し得る。たとえば、ピクチャが均一な色の大きいエリア(たとえば、青空の大きいエリア)を含む場合、ピクチャの総エントロピーは、比較的低くなり得る。したがって、ピクチャの総エントロピーが比較的低いとき、復号されたときのピクチャの品質を著しく低下させることなしに、より高いレベルの量子化が使用され得る。より高いレベルの量子化を使用することは、ピクチャの符号化されたバージョンを表すのに必要とされる情報量を低減し得る。しかしながら、ピクチャが、複雑で急激に変化する色の大きいエリアを含む場合、ピクチャの総エントロピーは、比較的高くなり得る。したがって、ピクチャの総エントロピーが比較的高いとき、より高いレベルの量子化は、復号されたときのピクチャの品質を著しく低下させ得る。いくつかの例では、ブロック動的量子化ユニット2404は、エントロピーを、ブロック動的量子化ユニット2404がブロックの係数を量子化するために使用する量子化パラメータに変換するために、あらかじめ定義されたマッピングまたは式を使用し得る。いくつかの例では、ブロック動的量子化ユニット2404は、ピクチャの総エントロピーの代わりにブロック自体の総エントロピーに基づいてブロックを量子化し得る。
【0148】
[0173] 少なくとも部分的に、ブロック動的量子化ユニット2404が動的量子化をブロックに適用するので、ブロック当りのビット数(すなわち、ブロックにおける量子化係数の各々を表すビット数)は、ブロックごとに異なり得る。図22の例では、ブロック2414は、ビット数を表す。
【0149】
[0174] スペクトル効率ユニット(Spectral efficiency unit)2406は、ソースデバイス102がアナログシンボルを送るチャネルのスペクトル効率を決定し得る。スペクトル効率を決定するための方法は、5G規格などの、いくつかの送信規格において定義され得る。スペクトル効率は、シンボルサンプリング時点の間の振幅値において、ソースデバイス102がチャネルを通して宛先デバイス116に伝達することができるビット数を示し得る。言い換えれば、スペクトル効率は、振幅値において使用され得るビット数に対応し得る。
【0150】
[0175] チャネルのスペクトル効率は、時間とともに変化し得る。たとえば、チャネルのスペクトル効率は、環境条件(たとえば、雨、霧、雪など)により変化することがある。いくつかの事例では、チャネルのスペクトル効率は、ソースデバイス102および/または宛先デバイス116が建築物の中または外に移動するときに変化し得る。いくつかの事例では、チャネルのスペクトル効率は、ソースデバイス102および/または宛先デバイス116がワイヤレス基地局のより近くに、またはワイヤレス基地局からより遠くに移動するときに変化し得る。いくつかの事例では、チャネルのスペクトル効率は、建築物または地形からの反射により変化し得る。
【0151】
[0176] いくつかの例では、モデム108は、多入力多出力(MIMO)方法を使用してデータを送信および受信し得る。MIMO方法を使用してデータを送信するとき、モデム108は、データを送信および受信するために複数のアンテナを使用し得る。異なるアンテナを介してデータを送ることは、異なるチャネルを介してデータを送ることに類似し得る。これらの異なるチャネルに対して異なるスペクトル効率が存在し得る。このコンテキストでは、MIMOにおいて使用される異なるチャネルは、レイヤと呼ばれることがある。したがって、スペクトル効率ユニット2406は、レイヤごとに異なるスペクトル効率を決定し得る。
【0152】
[0177] パッキングユニット220に関する上記の説明と同様に、パッキングユニット2408は、係数ベクトルを生成し、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得る。図24のコンテキストでは、係数ベクトル中の各係数は、同じブロックに属する。いくつかの事例では、ブロックについての単一の係数ベクトルが存在し得る。他の例では、ブロックに対して複数の係数ベクトルが存在し得る。その上、アナログ変調ユニット222に関する上記の説明と同様に、アナログ変調ユニット2412は、振幅値のペアに基づいてアナログシンボルを決定し得る。アナログ変調ユニット2412は、アナログシンボルに基づいてアナログ信号を変調し得る。
【0153】
[0178] モデム108がMIMO方法を使用する例では、振幅値に基づいてアナログ変調ユニット2412によって決定されたアナログシンボルは、異なるレイヤ間に分散し得る。モデム108がMIMOを使用しない例では(たとえば、単一のアンテナのみが使用されるとき)、単一のレイヤのみが存在し得、スペクトル効率ユニット2406は、この単一のレイヤのスペクトル効率を決定し得る。いずれの場合も、モデム108は、同じブロック(すなわち、ブロックi)の係数を含んでいる係数ベクトルに関する振幅値に基づいて、アナログシンボルを表すアナログ信号を送信するために同じレイヤを使用し得る。したがって、ブロックiの量子化係数を含んでいる係数ベクトルに関する振幅値に基づいて決定されたアナログシンボルが送られるレイヤのスペクトル効率は、SEiとして示され得る。同様に、ブロックiのブロック当りのビット数は、Qiとして示され得る。
【0154】
[0179] パッキングユニット2408が、ブロックの量子化係数を含んでいる係数ベクトルを振幅値に変換するためにパック演算を実行しているとき、パッキングユニット2408は、ブロックiについてレイヤ当りのスペクトル効率2416(SEi)とブロック当りのビット数2414(Qi)とを使用し得る。より詳細には、パッキングユニット2408は、係数グループについての振幅値を決定するためにパッキングユニット2408が使用するマッピングパターンの次元数を、たとえば、ブロックごとに動的に選択し得る。言い換えれば、パッキングユニット2408は、たとえば、ブロックごとに、各係数ベクトル中の係数の数nを動的に選択し得る。nのより高い値は、係数ベクトル中の係数を表すために使用されるビット数に対する係数ベクトルに関する振幅値を表すために使用されるビット数に関してより大きい圧縮をもたらし得、nのより低い値は、より小さい圧縮をもたらし得るので、パッキングユニット2408によって決定された振幅値は、可変ビットレートを有し得る。ブロックiの値nは、niとして示され得る。
【0155】
[0180] 上述のように、パッキングユニット2408は、ブロック当りのビット数2414(すなわち、Qi)とレイヤ当りのスペクトル効率2416(すなわち、SEi)とに基づいてマッピングパターンを決定し得る。たとえば、パッキングユニット2408は、SEiの1つの次元とQiの1つの次元とを有するあらかじめ定義された2次元テーブルを使用し得る。テーブルのセル内の値は、niの値(すなわち、ブロックiの係数を含んでいる係数ベクトル中の係数の数)を示す。いくつかの例では、パッキングユニット2408は、SEiをQiで除算することによってniの値を決定し得る。言い換えれば、SEiは、niにQiを乗算したものにほぼ等しくなり得る。
【0156】
[0181] いくつかの例では、パッキングユニット2408は、SEiおよびQiに基づいて値niを決定し得る。パッキングユニット2408は、ni次元空間を使用するマッピングパターンを決定し得る。いくつかの例では、パッキングユニット2408は、同じni次元空間を使用する複数のマッピングパターンの中から選択し得る。いくつかの例では、マッピングパターンは、いくつかの次元において他の次元よりも多くの許容値(たとえば、量子化係数の許容値)が存在し得るという意味で非対称であり得る。たとえば、図9の例を参照すると、y軸よりもx軸においてより多くの利用可能な数が存在し得る。そのような非対称マッピングパターンの使用は、ブロックiのQiがブロックjのQjとは異なる例において有用であり得る。Qiが2に等しく、SEiが8ビットに等しい例では、各々が2ビットを含んでいる(すなわち、Qi=2)4つの量子化係数(すなわち、ni=4)は、単一の8ビット振幅値にパックされ得る。別の例では、SEiが8ビットに等しく、Qiが4に等しく、Qjが2に等しい場合、パッキングユニット2408は、単一の振幅値を生成するために、ブロックiの1つの量子化係数とブロックjの2つの量子化係数とをパックし得る。
【0157】
[0182] nの値がブロックごとに変化し得るので、ビデオエンコーダ200は、nの値をビデオデコーダ300に送信し得る。いくつかの例では、ビデオエンコーダ200は、デジタルパスを通してnの値を送信し得る。いくつかの例では、ビデオエンコーダ200は、nの値が変化したときにnの値を送信し得るが、必ずしもブロックごとに別個にnの値を送信するとは限らない。
【0158】
[0183] 電力スケーリングユニット2410は、振幅値を動的に選択されたスケーリング値と乗算する。このようにして、電力スケーリングユニット2410は、スケーリングされた振幅値を生成し得る。電力スケーリングユニット2410は、振幅値の一貫した電力出力を確実にするためにスケーリング値を選択し得る。さらに、図24の例では、アナログ変調ユニット2412は、スケーリングされた振幅値に基づいてアナログ信号を変調し得る。たとえば、いくつかの例では、アナログ変調ユニット2412は、スケーリングされた振幅値のペアに基づいてアナログシンボルを決定し得る。モデム108は、アナログシンボルに対応するシンボルサンプリング時点の間、アナログ信号がアナログシンボルに対応する位相シフトおよび電力を有するように、アナログ信号を送信し得る。
【0159】
[0184] 図24のアナログ圧縮ユニット2400に関して動作するように構成されたアナログ復元ユニットは、概して、本開示の他の場所で説明されるように、アナログ復元ユニット308(およびその構成要素)と同様に動作し得る。しかしながら、いくつかの例では、アンパッキングユニット316は、(ビデオエンコーダ200がデジタルパスを介してシグナリングし得る)nの値の表示を取得し得、振幅値から係数をアンパックするために、nの受信された値についての適切なマッピングパターンを使用し得る。
【0160】
[0185] 図25は、本開示の1つまたは複数の技法による、ビデオデータを符号化するための例示的な方法を示すフローチャートである。図25の例では、ビデオエンコーダ200は、ビデオデータのデジタルサンプル値に基づいて係数を生成し得る(2500)。いくつかの例では、ビデオデータに基づいて係数を生成することの一部として、予測ユニット204(図2)は、ビデオデータの予測データを生成し得る。残差生成ユニット212は、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成し得る。アナログ圧縮ユニット214は、残差データ中のデジタルサンプル値のブロックに基づいて係数を生成し得る。たとえば、2値化ユニット216は、残差データに基づいて係数を生成する2値化プロセスを実行し得、ブロック動的量子化ユニット2404は、係数を量子化する量子化プロセスを実行し得る。さらに、いくつかの例では、ビデオエンコーダ200は、予測データに基づいてデジタル値を生成し得る。たとえば、量子化ユニット206は、予測データのデジタルサンプル値を量子化し得、エントロピー符号化ユニット208は、デジタル値を生成するために、量子化されたデジタルサンプル値をエントロピー符号化し得る。モデム108は、デジタル値を送信するように構成され得る。たとえば、モデム108は、デジタル値に基づいてビットシーケンスを生成し、ビットシーケンスに基づいてアナログ信号を変調するように構成され得る。
【0161】
[0186] 加えて、スペクトル効率ユニット2406は、チャネルのスペクトル効率を決定する(2502)。さらに、パッキングユニット2408は、チャネルのスペクトル効率とブロックの量子化係数のビット数とに基づいて値nを決定し得る(2504)。たとえば、パッキングユニット2408は、チャネルのスペクトル効率とブロックの量子化係数のビット数とに基づいて値nを検索し得る。いくつかの例では、モデム108は、チャネルのスペクトル効率を示すデータを出力するように構成される。いくつかの例では、モデム108は、値nを示すデータを出力するように構成される。
【0162】
[0187] 加えて、パッキングユニット2408は、係数ベクトルを生成し得る(2506)。係数ベクトルの各々は、係数のうちのn個を含む。係数ベクトルの各々について、パッキングユニット2408は、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定し得る。複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを、複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する。たとえば、パッキングユニット2408は、n次元空間における位置を決定し得る。n次元空間における位置の座標は、係数ベクトルの係数に基づき、マッピングパターンは、n次元空間における異なる位置を、複数の振幅値中の異なる振幅値にマッピングする。この例では、パッキングユニット2408は、係数ベクトルに関する振幅値を、n次元空間における決定された位置に対応する振幅値として決定し得る。
【0163】
[0188] ソースデバイス102は、係数ベクトルに関する振幅値に基づいてアナログ信号を変調し得る(2508)。たとえば、アナログ変調ユニット222は、振幅値に基づいてアナログシンボルを決定し得、モデム108は、アナログシンボルに対応する位相シフトおよび電力に基づいてアナログを変調するように構成され得る。モデム108は、チャネル上でアナログ信号を出力し得る(2510)。
【0164】
[0189] 図26は、本開示の1つまたは複数の技法による、ビデオデータを復号するための例示的な方法を示すフローチャートである。図26の例では、宛先デバイス116(図1)のモデム122は、チャネルを介して送信されたアナログ信号を受信するように構成され得る(2600)。
【0165】
[0190] アナログ復調ユニット314(図3)は、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調し得る(2602)。アナログ復調ユニット314は、本開示の他の場所で提供される例のいずれかにおいて説明されるように、振幅値を決定するためにアナログ信号を復調し得る。
【0166】
[0191] アンパッキングユニット316は、値nを決定し得る(2604)。値nは、チャネルのスペクトル効率(たとえば、SEi)と、ブロックの量子化係数のビット数(たとえば、Qi)とに基づく。たとえば、アンパッキングユニット316は、SEiをQiで除算することによってnの値を決定し得る。いくつかの例では、モデム133は、チャネルのスペクトル効率を示すデータを受信するように構成される。
【0167】
[0192] 係数ベクトルの各々について、アンパッキングユニット316は、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定し得る(2606)。複数の許容係数ベクトル中の各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを、複数の振幅値中のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する。いくつかの例では、係数ベクトル中の係数を決定することの一部として、アンパッキングユニット316は、係数ベクトル中の係数を、振幅値に対応するn次元空間における位置の座標として決定し得、ここにおいて、マッピングパターンは、n次元空間における異なる位置を、複数の振幅値中の異なる振幅値にマッピングする。
【0168】
[0193] さらに、ビデオデコーダ300は、係数ベクトル中の係数に基づいてビデオデータを生成し得る(2608)。いくつかの例では、モデム122は、受信された信号に基づいてデジタル値を出力するように構成され得る。この例では、ビデオデコーダ300は、デジタル値に基づいて予測データを生成し得る。たとえば、エントロピー復号ユニット304は、量子化されたデジタルサンプル値を生成するためにデジタル値をエントロピー復号し得、逆量子化ユニット306は、予測データを生成するために量子化されたデジタルサンプル値を逆量子化し得る。アナログ復元ユニット308は、係数に基づいて残差データ中のデジタルサンプル値のブロックを生成し得る。たとえば、アナログ復元ユニット308の逆量子化ユニット318は、係数を逆量子化する逆量子化プロセスを実行し得、2値化解除ユニット320は、係数に基づいて残差データを生成する2値化解除プロセスを実行し得る。再構成ユニット310は、残差データと予測データとに基づいてビデオデータのデジタルサンプル値を生成し得る。たとえば、再構成ユニット310は、ビデオデータのデジタルサンプル値を生成するために、残差データのデジタルサンプル値を、予測データの対応するデジタルサンプル値に加算し得る。
【0169】
[0194] 本開示の様々な態様における例は、個別にまたは任意の組合せで使用され得る。
【0170】
[0195] 以下は、本開示の1つまたは複数の技法による態様の非限定的なリストである。
【0171】
[0196] 態様1A.ビデオデータを符号化する方法であって、ビデオデータに基づいて係数を生成することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することと、アナログ信号を出力することとを備える、方法。
【0172】
[0197] 態様2A.係数ベクトルに関する振幅値を決定することは、n次元空間における位置を決定することと、ここにおいて、n次元空間における位置の座標が係数ベクトルの係数に基づき、マッピングパターンがn次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、係数ベクトルに関する振幅値をn次元空間における決定された位置に対応する振幅値として決定することとを備える、態様1Aに記載の方法。
【0173】
[0198] 態様3A.マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、態様1Aまたは2Aに記載の方法。
【0174】
[0199] 態様4A.マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、態様1Aまたは2Aに記載の方法。
【0175】
[0200] 態様5A.マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、態様1Aまたは2Aに記載の方法。
【0176】
[0201] 態様6A.nは2以上である、態様1Aから5Aのいずれか1つに記載の方法。
【0177】
[0202] 態様7A.ビデオデータに基づいて係数を生成することは、ビデオデータに基づいて初期係数を生成することと、初期係数の正/負の符号を示す符号値を生成することと、初期係数の絶対値として係数を生成することとを備え、本方法は、符号値を表すデータをシグナリングすることをさらに備える、態様1Aから3Aまたは5Aもしくは6Aのいずれか1つに記載の方法。
【0178】
[0203] 態様8A.係数は初期係数の非負バージョンであり、ビデオデータに基づいて係数を生成することは、ビデオデータに基づいて初期係数を生成することと、初期係数のうちの最も負の初期係数に基づいてシフト値を決定することと、シフト値に基づいて初期係数を初期係数の非負バージョンに変換するプロセスを実行することとを備え、本方法は、シフト値を表すデータをシグナリングすることをさらに備える、態様1Aから3Aまたは5Aもしくは6Aのいずれか1つに記載の方法。
【0179】
[0204] 態様9A.係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、態様1A、2A、4A、および6Aから8Aのいずれか1つに記載の方法。
【0180】
[0205] 態様10A.ビデオデータに基づいて係数を生成することは、ビデオデータの予測データを生成することと、予測データとビデオデータ中のデジタルサンプル値とに基づいて残差データを生成することと、残差データに基づいて係数を生成することとを備え、本方法は、予測データに基づいてデジタル値を生成することと、デジタル値を送信することとをさらに備える、態様1Aから9Aのいずれか1つに記載の方法。
【0181】
[0206] 態様11A.残差データに基づいて係数を生成することは、残差データに基づいて係数を生成する2値化プロセスを実行することと、係数を量子化する量子化プロセスを実行することとを備える、態様10Aに記載の方法。
【0182】
[0207] 態様12A.予測データに基づいてデジタル値を生成することは、予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成することと、量子化されたデジタルサンプル値に基づいてデジタル値を生成するエントロピー符号化プロセスを実行することとを備える、態様10Aまたは11Aに記載の方法。
【0183】
[0208] 態様13A.ビデオデータを復号する方法であって、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを備える、方法。
【0184】
[0209] 態様14A.係数ベクトルに関する振幅値に基づいて係数ベクトル中の係数を決定することは、係数ベクトル中の係数を、振幅値に対応するn次元空間における位置の座標として決定することを備え、ここにおいて、マッピングパターンは、n次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、態様13Aに記載の方法。
【0185】
[0210] 態様15A.マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、態様13Aまたは14Aに記載の方法。
【0186】
[0211] 態様16A.マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、態様13Aまたは14Aに記載の方法。
【0187】
[0212] 態様17A.マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、態様13Aまたは14Aに記載の方法。
【0188】
[0213] 態様18A.複数の係数ベクトルに関する振幅値を決定することは、アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定することと、係数ベクトルに関する振幅値をI-Q平面内のアナログシンボルの座標のうちの1つとして決定することとを備える、態様13Aから17Aのいずれか1つに記載の方法。
【0189】
[0214] 態様19A.nは2以上である、態様13Aから18Aのいずれか1つに記載の方法。
【0190】
[0215] 態様20A.振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することは、モデムのデジタルパスを介して符号値を取得することと、ここにおいて、符号値は係数ベクトル中の係数の正/負の符号を示す、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数の絶対値を決定することと、少なくとも部分的に係数ベクトル中の係数の絶対値に符号値を適用することによって、係数ベクトル中の係数を再構成することとを備える、態様13Aから15Aまたは17Aから19Aのいずれか1つに記載の方法。
【0191】
[0216] 態様21A.振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することは、モデムのデジタルパスを介してシフト値を表すデータを取得することと、ここにおいて、シフト値は係数ベクトル中の係数のうちの最も負の係数を示す、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数の中間値を決定することと、少なくとも部分的に係数ベクトル中の係数の中間値の各々にシフト値を加算することによって、係数ベクトル中の係数を再構成することとを備える、態様13Aから15Aまたは17Aから19Aのいずれか1つに記載の方法。
【0192】
[0217] 態様22A.係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、態様13A、14A、16A、または18Aから21Aのいずれか1つに記載の方法。
【0193】
[0218] 態様23A.係数ベクトル中の係数に基づいてビデオデータを生成することは、モデムのデジタルパスを介してデジタル値を取得することと、デジタル値に基づいて予測データを生成することと、係数ベクトル中の係数に基づいて残差データを生成することと、予測データと残差データとに基づいてビデオデータを生成することとを備える、態様13Aから22Aのいずれか1つに記載の方法。
【0194】
[0219] 態様24A.係数ベクトル中の係数に基づいて残差データを生成することは、係数ベクトル中の係数を逆量子化する逆量子化プロセスを実行することと、係数ベクトル中の逆量子化された係数に基づいて残差データを生成する2値化解除プロセスを実行することとを備える、態様23Aに記載の方法。
【0195】
[0220] 態様25A.デジタル値に基づいて予測データを生成することは、デジタル値に基づいてデジタルサンプル値を生成するエントロピー復号プロセスを実行することと、少なくとも部分的にデジタルサンプル値を逆量子化することによって予測データを生成することとを備える、態様23Aまたは24Aに記載の方法。
【0196】
[0221] 態様26A.ビデオデータを符号化するためのデバイスであって、回路内に実装された1つまたは複数のプロセッサと、1つまたは複数のプロセッサは、ビデオデータに基づいて係数を生成することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調するように構成されたモデムとを備える、デバイス。
【0197】
[0222] 態様27A.1つまたは複数のプロセッサは、係数ベクトルに関する振幅値を決定することの一部として、1つまたは複数のプロセッサが、n次元空間における位置を決定することと、ここにおいて、n次元空間における位置の座標は係数ベクトルの係数に基づき、マッピングパターンはn次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、係数ベクトルに関する振幅値をn次元空間における決定された位置に対応する振幅値として決定することとを行うように構成される、態様26Aに記載のデバイス。
【0198】
[0223] 態様28A.マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、態様26Aまたは27Aに記載のデバイス。
【0199】
[0224] 態様29A.マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、態様26Aから28Aのいずれか1つに記載のデバイス。
【0200】
[0225] 態様30A.マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、態様26Aから28Aのいずれか1つに記載のデバイス。
【0201】
[0226] 態様31A.nは2以上である、態様26Aから30Aのいずれか1つに記載のデバイス。
【0202】
[0227] 態様32A.1つまたは複数のプロセッサは、残差データに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、残差データに基づいて初期係数を生成し、初期係数の正/負の符号を示す符号値を生成し、初期係数の絶対値として係数を生成するように構成され、モデムは、デジタルパスを介して符号値を送信するように構成される、態様26Aから28Aまたは30Aから31Aのいずれか1つに記載のデバイス。
【0203】
[0228] 態様33A.係数は初期係数の非負バージョンであり、1つまたは複数のプロセッサは、残差データに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、残差データに基づいて初期係数を生成し、初期係数のうちの最も負の初期係数に基づいてシフト値を決定し、シフト値に基づいて初期係数を初期係数の非負バージョンに変換するプロセスを実行するように構成され、本方法は、シフト値を表すデータをシグナリングすることをさらに備える、態様26Aから28Aまたは30Aもしくは31Aのいずれか1つに記載のデバイス。
【0204】
[0229] 態様34A.係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、態様26A、27A、29A、または31Aから33Aのいずれか1つに記載のデバイス。
【0205】
[0230] 態様35A.1つまたは複数のプロセッサは、ビデオデータに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、ビデオデータの予測データを生成し、予測データとビデオデータ中のデジタルサンプル値とに基づいて残差データを生成し、残差データに基づいて係数を生成するように構成され、1つまたは複数のプロセッサは、予測データに基づいてデジタル値を生成するようにさらに構成され、モデムは、デジタル値を送信するように構成される、態様26Aから34Aのいずれか1つに記載のデバイス。
【0206】
[0231] 態様36A.1つまたは複数のプロセッサは、残差データに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、残差データに基づいて係数を生成する2値化プロセスを実行し、係数を量子化する量子化プロセスを実行するように構成される、態様35Aに記載のデバイス。
【0207】
[0232] 態様37A.1つまたは複数のプロセッサは、予測データに基づいてデジタル値を生成することの一部として、1つまたは複数のプロセッサが、予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成し、量子化されたデジタルサンプル値に基づいてデジタル値を生成するエントロピー符号化プロセスを実行するように構成される、態様35Aまたは36Aに記載のデバイス。
【0208】
[0233] 態様38A.デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様26Aから37Aのいずれか1つに記載のデバイス。
【0209】
[0234] 態様39A.ビデオデータを復号するためのデバイスであって、アナログ信号を受信するように構成されたモデムと、回路内に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行うように構成される、デバイス。
【0210】
[0235] 態様40A.1つまたは複数のプロセッサは、係数ベクトルに関する振幅値に基づいて係数ベクトル中の係数を決定することの一部として、1つまたは複数のプロセッサが、係数ベクトル中の係数を、振幅値に対応するn次元空間における位置の座標として決定するように構成され、ここにおいて、マッピングパターンは、n次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、態様39Aに記載のデバイス。
【0211】
[0236] 態様41A.マッピングパターンは、符号なし係数を符号なし振幅値にマッピングする、態様39Aまたは40Aに記載のデバイス。
【0212】
[0237] 態様42A.マッピングパターンは、符号付き係数を符号付き振幅値にマッピングする、態様39Aまたは40Aに記載のデバイス。
【0213】
[0238] 態様43A.マッピングパターンは、符号なし係数を符号付き振幅値にマッピングする、態様39Aまたは40Aに記載のデバイス。
【0214】
[0239] 態様44A.モデムは、アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定するように構成され、1つまたは複数のプロセッサは、複数の係数ベクトルに関する振幅値を決定することの一部として、1つまたは複数のプロセッサが、係数ベクトルに関する振幅値をI-Q平面内のアナログシンボルの座標のうちの1つとして決定するように構成される、態様39Aから43Aのいずれか1つに記載のデバイス。
【0215】
[0240] 態様45A.nは2以上である、態様39Aから44Aのいずれか1つに記載のデバイス。
【0216】
[0241] 態様46A.1つまたは複数のプロセッサは、振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することの一部として、1つまたは複数のプロセッサが、モデムのデジタルパスを介して符号値を取得することと、ここにおいて、符号値は係数ベクトル中の係数の正/負の符号を示す、係数ベクトルに関する振幅値とマッピングパターンとに基づいて、係数ベクトル中の係数の絶対値を決定することと、少なくとも部分的に係数ベクトル中の係数の絶対値に符号値を適用することによって、係数ベクトル中の係数を再構成することとを行うように構成される、態様39Aから41Aまたは43Aから45Aのいずれか1つに記載のデバイス。
【0217】
[0242] 態様47A.1つまたは複数のプロセッサは、振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することの一部として、1つまたは複数のプロセッサが、モデムのデジタルパスを介してシフト値を表すデータを取得することと、ここにおいて、シフト値は係数ベクトル中の係数の最も負の係数を示す、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数の中間値を決定することと、少なくとも部分的に係数ベクトル中の係数の中間値の各々にシフト値を加算することによって、係数ベクトル中の係数を再構成することとを行うように構成される、態様39Aから41Aまたは43Aから45Aのいずれか1つに記載のデバイス。
【0218】
[0243] 態様48A.係数ベクトルは、1つまたは複数の負の係数と1つまたは複数の正の係数とを含む、態様39A、40A、42A、44Aから47Aのいずれか1つに記載のデバイス。
【0219】
[0244] 態様49A.1つまたは複数のプロセッサは、係数ベクトル中の係数に基づいてビデオデータを生成することの一部として、1つまたは複数のプロセッサが、モデムのデジタルパスを介してデジタル値を取得し、デジタル値に基づいて予測データを生成し、アナログビデオデータの現在のブロックについての予測データを生成し、係数ベクトル中の係数に基づいて残差データを生成し、予測データと残差データとに基づいてビデオデータを生成するように構成される、態様39Aから48Aのいずれか1つに記載のデバイス。
【0220】
[0245] 態様50A.1つまたは複数のプロセッサは、係数ベクトル中の係数に基づいて残差データを生成することの一部として、1つまたは複数のプロセッサが、係数ベクトル中の係数を逆量子化する逆量子化プロセスを実行し、係数ベクトル中の逆量子化された係数に基づいて残差データを生成する2値化解除プロセスを実行するように構成される、態様49Aのデバイス。
【0221】
[0246] 態様51A.1つまたは複数のプロセッサは、デジタル値に基づいて予測データを生成することの一部として、1つまたは複数のプロセッサが、デジタル値に基づいてデジタルサンプル値を生成するエントロピー復号プロセスを実行し、少なくとも部分的にデジタルサンプル値を逆量子化することによって予測データを生成するように構成される、態様49Aまたは50Aに記載のデバイス。
【0222】
[0247] 態様52A.デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様39Aから51Aのいずれか1つに記載のデバイス。
【0223】
[0248] 態様53A.ビデオデータを符号化するためのデバイスであって、ビデオデータに基づいて係数を生成するための手段と、係数ベクトルを生成するための手段と、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調するための手段とを備える、デバイス。
【0224】
[0249] 態様54A.ビデオデータを復号するためのデバイスであって、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定するための手段と、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成するための手段とを備える、デバイス。
【0225】
[0250] 態様55A.実行されたとき、1つまたは複数のプロセッサに、ビデオデータに基づいて係数を生成することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体。
【0226】
[0251] 態様56A.実行されたとき、1つまたは複数のプロセッサに、アナログ信号に基づいて、複数の係数ベクトルに関する振幅値を決定することと、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体。
【0227】
[0252] 態様1B.ビデオデータを符号化する方法であって、ビデオデータのデジタルサンプル値に基づいて係数を生成することと、アナログ信号を送るべきチャネルのスペクトル効率を決定することと、チャネルのスペクトル効率に基づいて値nを決定することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することと、チャネル上でアナログ信号を出力することとを備える、方法。
【0228】
[0253] 態様2B.係数ベクトルに関する振幅値を決定することは、n次元空間における位置を決定することと、ここにおいて、n次元空間における位置の座標が係数ベクトルの係数に基づき、マッピングパターンがn次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、係数ベクトルに関する振幅値をn次元空間における決定された位置に対応する振幅値として決定することとを備える、態様1Bに記載の方法。
【0229】
[0254] 態様3B.ビデオデータに基づいて係数を生成することは、ビデオデータの予測データを生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成することと、残差データ中のデジタルサンプル値のブロックに基づいて係数を生成することとを備え、本方法は、予測データに基づいてデジタル値を生成することと、デジタル値を送信することとをさらに備える、態様1Bまたは2Bに記載の方法。
【0230】
[0255] 態様4B.ビデオデータに基づいて係数を生成することは、残差データに基づいて係数を生成する2値化プロセスを実行することと、係数を量子化する量子化プロセスを実行することとを備える、態様3Bに記載の方法。
【0231】
[0256] 態様5B.値nを決定することは、チャネルのスペクトル効率とブロックの量子化係数のビット数とに基づいて値nを決定することを備える、態様4Bに記載の方法。
【0232】
[0257] 態様6B.チャネルのスペクトル効率を示すデータを出力することをさらに備える、態様1Bから5Bのいずれか1つに記載の方法。
【0233】
[0258] 態様7B.ビデオデータを復号する方法であって、チャネルを介して送信されたアナログ信号を受信することと、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調することと、値nを決定することと、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを備える、方法。
【0234】
[0259] 態様8B.係数ベクトル中の係数を決定することは、係数ベクトル中の係数を、振幅値に対応するn次元空間における位置の座標として決定することを備え、ここにおいて、マッピングパターンは、n次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、態様7Bに記載の方法。
【0235】
[0260] 態様9B.デジタル値を受信することと、デジタル値に基づいて予測データを生成することとをさらに備える方法であって、係数ベクトル中の係数に基づいてビデオデータを生成することは、係数に基づいて残差データ中のデジタルサンプル値のブロックを生成することと、残差データと予測データとに基づいてビデオデータのデジタルサンプル値を生成することとを備える、態様7Bまたは8Bに記載の方法。
【0236】
[0261] 態様10B.係数に基づいて残差データ中のデジタルサンプル値のブロックを生成することは、係数を逆量子化する逆量子化プロセスを実行することと、係数に基づいて残差データを生成する2値化解除プロセスを実行することとを備える、態様9Bに記載の方法。
【0237】
[0262] 態様11B.値nは、チャネルのスペクトル効率とブロックの量子化係数のビット数とに基づく、態様10Bに記載の方法。
【0238】
[0263] 態様12B.チャネルのスペクトル効率を示すデータを受信することをさらに備える、態様7Bから11Bのいずれか1つに記載の方法。
【0239】
[0264] 態様13B.ビデオデータを符号化するためのデバイスであって、ビデオデータを記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサと、1つまたは複数のプロセッサは、ビデオデータのデジタルサンプル値に基づいて係数を生成することと、アナログ信号を出力すべきチャネルのスペクトル効率を決定することと、チャネルのスペクトル効率に基づいて値nを決定することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することとを行うように構成される、チャネル上にアナログ信号を出力するように構成されたモデムとを備える、デバイス。
【0240】
[0265] 態様14B.1つまたは複数のプロセッサは、係数ベクトルに関する振幅値を決定することの一部として、1つまたは複数のプロセッサが、n次元空間における位置を決定することと、ここにおいて、n次元空間における位置の座標は係数ベクトルの係数に基づき、マッピングパターンはn次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、係数ベクトルに関する振幅値をn次元空間における決定された位置に対応する振幅値として決定することとを行うように構成される、態様13Bに記載のデバイス。
【0241】
[0266] 態様15B.1つまたは複数のプロセッサは、ビデオデータに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、ビデオデータの予測データを生成し、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成し、残差データ中のデジタルサンプル値のブロックに基づいて係数を生成するように構成され、1つまたは複数のプロセッサは、予測データに基づいてデジタル値を生成するようにさらに構成され、モデムは、デジタル値を送信するように構成される、態様13Bまたは14Bに記載のデバイス。
【0242】
[0267] 態様16B.1つまたは複数のプロセッサは、ビデオデータに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、残差データに基づいて係数を生成する2値化プロセスを実行し、係数を量子化する量子化プロセスを実行するように構成される、態様15Bに記載のデバイス。
【0243】
[0268] 態様17B.1つまたは複数のプロセッサは、値nを決定することの一部として、1つまたは複数のプロセッサが、チャネルのスペクトル効率とブロックの量子化係数のビット数とに基づいて値nを決定するように構成される、態様16Bに記載のデバイス。
【0244】
[0269] 態様18B.モデムは、チャネルのスペクトル効率を示すデータを出力するようにさらに構成される、態様13Bから17Bのいずれか1つに記載のデバイス。
【0245】
[0270] 態様19B.デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様13Bから18Bのいずれか1つに記載のデバイス。
【0246】
[0271] 態様20B.ビデオデータを復号するためのデバイスであって、チャネルを介して送信されたアナログ信号を受信するように構成されたモデムと、回路内に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調することと、値nを決定することと、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行うように構成される、デバイス。
【0247】
[0272] 態様21B.1つまたは複数のプロセッサは、係数ベクトル中の係数を決定することの一部として、1つまたは複数のプロセッサが、係数ベクトル中の係数を、振幅値に対応するn次元空間における位置の座標として決定するように構成され、ここにおいて、マッピングパターンは、n次元空間における異なる位置を複数の振幅値中の異なる振幅値にマッピングする、態様20Bに記載のデバイス。
【0248】
[0273] 態様22B.モデムは、デジタル値を受信するようにさらに構成され、1つまたは複数のプロセッサは、デジタル値に基づいて予測データを生成するようにさらに構成され、1つまたは複数のプロセッサは、係数ベクトル中の係数に基づいてビデオデータを生成することの一部として、1つまたは複数のプロセッサが、係数に基づいて残差データ中のデジタルサンプル値のブロックを生成し、残差データと予測データとに基づいてビデオデータのデジタルサンプル値を生成するように構成される、態様20Bまたは21Bのデバイス。
【0249】
[0274] 態様23B.1つまたは複数のプロセッサは、係数に基づいて残差データ中のデジタルサンプル値のブロックを生成することの一部として、1つまたは複数のプロセッサが、係数を逆量子化する逆量子化プロセスを実行し、係数に基づいて残差データを生成する2値化解除プロセスを実行するように構成される、態様22Bに記載のデバイス。
【0250】
[0275] 態様24B.値nは、チャネルのスペクトル効率とブロックの量子化係数のビット数とに基づく、態様23Bに記載のデバイス。
【0251】
[0276] 態様25B.モデムは、チャネルのスペクトル効率を示すデータを受信するようにさらに構成される、態様20Bから24Bのいずれか1つに記載のデバイス。
【0252】
[0277] 態様26B.デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様20Bから25Bのいずれか1つに記載のデバイス。
【0253】
[0278] 態様27B.ビデオデータを符号化するためのデバイスであって、ビデオデータのデジタルサンプル値に基づいて係数を生成するための手段と、アナログ信号を出力すべきチャネルのスペクトル効率を決定するための手段と、チャネルのスペクトル効率に基づいて値nを決定するための手段と、係数ベクトルを生成するための手段と、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調するための手段と、チャネル上でアナログ信号を出力するための手段とを備える、デバイス。
【0254】
[0279] 態様28B.ビデオデータを復号するためのデバイスであって、チャネルを介して送信されたアナログ信号を受信するための手段と、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調するための手段と、値nを決定するための手段と、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定するための手段と、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成するための手段とを備える、デバイス。
【0255】
[0280] 態様29B.実行されたとき、1つまたは複数のプロセッサに、ビデオデータのデジタルサンプル値に基づいて係数を生成することと、アナログ信号を出力すべきチャネルのスペクトル効率を決定することと、チャネルのスペクトル効率に基づいて値nを決定することと、係数ベクトルを生成することと、ここにおいて、係数ベクトルの各々は係数のうちのn個を含む、係数ベクトルの各々について、マッピングパターンに基づいて係数ベクトルに関する振幅値を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトルに関する振幅値に基づいてアナログ信号を変調することと、チャネル上でアナログ信号を出力することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体。
【0256】
[0281] 態様30B.実行されたとき、1つまたは複数のプロセッサに、チャネルを介して送信されたアナログ信号を受信することと、複数の係数ベクトルに関する振幅値を決定するためにアナログ信号を復調することと、値nを決定することと、ここにおいて、値nはチャネルのスペクトル効率に基づく、係数ベクトルの各々について、係数ベクトルに関する振幅値とマッピングパターンとに基づいて係数ベクトル中の係数を決定することと、ここにおいて、複数の許容係数ベクトルの各それぞれの許容係数ベクトルについて、マッピングパターンは、それぞれの許容係数ベクトルを複数の振幅値のそれぞれの振幅値にマッピングし、それぞれの振幅値は、振幅値の単調な数直線においてそれぞれの振幅値に隣接する複数の振幅値中の少なくとも1つの他の振幅値にn次元空間において隣接する、係数ベクトル中の係数に基づいてビデオデータを生成することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体。
【0257】
[0282] 態様1C.ビデオデータを符号化する方法であって、ビデオデータの予測データを生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成することと、残差データに基づいて係数を生成することと、インターレースされた振幅値を生成するためにインターレースプロセスを実行することと、ここにおいて、インターレースプロセスは、インターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、予測データに基づいてデジタル値を生成することと、インターレースされた振幅値とデジタル値とに基づいて変調された1つまたは複数のアナログ信号を出力することとを備える、方法。
【0258】
[0283] 態様2C.元の数直線におけるインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む別の数直線におけるマッピングされた値にマッピングするマッピングプロセスを実行することをさらに備え、ここにおいて、ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置し、マッピングプロセスは、インターレースされたいずれの振幅値も、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングせず、1つまたは複数のアナログ信号を出力することは、マッピングされた値に基づいてアナログ信号を変調することを備える、態様1Cに記載の方法。
【0259】
[0284] 態様3C.インターレースプロセスは、係数のうちの2つまたは4つのビットをインターレースする、態様1Cまたは2Cに記載の方法。
【0260】
[0285] 態様4C.残差データに基づいて係数を生成することは、残差データに基づいて係数を生成する2値化プロセスを実行することと、係数を量子化する量子化プロセスを実行することとを備える、態様1Cから3Cのいずれか1つに記載の方法。
【0261】
[0286] 態様5C.予測データに基づいてデジタル値を生成することは、予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成することと、量子化されたデジタルサンプル値に基づいてデジタル値を生成するエントロピー符号化プロセスを実行することとを備える、態様1Cから4Cのいずれか1つに記載の方法。
【0262】
[0287] 態様6C.アナログ信号が送信されるチャネルのスペクトル効率に基づいて、複数のインターレースプロセスからインターレースプロセスを選択することをさらに備える、態様1Cから5Cのいずれか1つに記載の方法。
【0263】
[0288] 態様7C.インターレースプロセスの各々は、異なる数の係数をインターレースする、態様6Cに記載の方法。
【0264】
[0289] 態様8C.ビデオデータを復号する方法であって、アナログ信号に基づいてインターレースされた振幅値を決定することと、2つ以上の係数を生成するためにインターレース解除プロセスを実行することと、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成することと、デジタル値を取得することと、デジタル値に基づいて予測データを生成することと、予測データと残差データとに基づいてビデオデータを再構成することとを備える、方法。
【0265】
[0290] 態様9C.アナログ信号に基づいてインターレースされた振幅値を決定することは、元の数直線におけるインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む代わりの数直線におけるマッピングされた値にマッピングするマッピングプロセスを使用して生成されたマッピングされた値を決定するためにアナログ信号を復調することと、ここにおいて、ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置し、マッピングプロセスは、インターレースされた振幅値のいずれも、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングしない、マッピングされた値をインターレースされた振幅値にマッピングするためにマッピングプロセスの逆を使用することとを備える、態様8Cに記載の方法。
【0266】
[0291] 態様10C.アナログ信号を復調することによって決定されるマッピングされた値は、ギャップ範囲のうちの1つにあり、マッピングプロセスの逆は、ギャップ範囲内のマッピングされた値を元の数直線における値にマッピングする、態様9Cに記載の方法。
【0267】
[0292] 態様11C.インターレース解除プロセスは、係数のうちの2つまたは4つのビットをインターレース解除する、態様8Cから10Cのいずれか1つに記載の方法。
【0268】
[0293] 態様12C.アナログ信号に基づいてインターレースされた振幅値を決定することは、アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定することを備え、ここにおいて、インターレースされた振幅値はI-Q平面内のアナログシンボルの座標に等しい、態様8Cから11Cのいずれか1つに記載の方法。
【0269】
[0294] 態様13C.係数に基づいて残差データを生成することは、係数を逆量子化する逆量子化プロセスを実行することと、係数に基づいて残差データを生成する2値化解除プロセスを実行することとを備える、態様8Cから12Cのいずれか1つに記載の方法。
【0270】
[0295] 態様14C.デジタル値に基づいて予測データを生成することは、デジタル値に基づいて量子化されたデジタルサンプル値を生成するエントロピー復号プロセスを実行することと、逆量子化されたデジタルサンプル値に基づいて予測データ中のデジタルサンプル値を生成する逆量子化プロセスを実行することとを備える、態様8Cから13Cのいずれか1つに記載の方法。
【0271】
[0296] 態様15C.アナログ信号が送信されるチャネルのスペクトル効率に基づいて、複数のインターレース解除プロセスからインターレース解除プロセスを選択することをさらに備える、態様8Cから13Cのいずれか1つに記載の方法。
【0272】
[0297] 態様16C.インターレース解除プロセスの各々は、異なる数の係数をインターレース解除する、態様15Cに記載の方法。
【0273】
[0298] 態様17C.ビデオデータを符号化するためのデバイスであって、ビデオデータを記憶するように構成されたメモリと、回路内に実装された1つまたは複数のプロセッサと、1つまたは複数のプロセッサは、ビデオデータの予測データを生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成することと、残差データに基づいて係数を生成することと、インターレースされた振幅値を生成するためにインターレースプロセスを実行することと、ここにおいて、インターレースプロセスは、インターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、予測データに基づいてデジタル値を生成することとを行うように構成され、インターレースされた振幅値とデジタル値とに基づいて変調された1つまたは複数のアナログ信号を出力するように構成されたモデムとを備える、デバイス。
【0274】
[0299] 態様18C.1つまたは複数のプロセッサは、元の数直線におけるインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む代わりの数直線におけるマッピングされた値にマッピングするマッピングプロセスを実行するようにさらに構成され、ここにおいて、ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置し、マッピングプロセスは、インターレースされたいずれの振幅値も、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングせず、1つまたは複数のプロセッサは、1つまたは複数のアナログ信号を出力することの一部として、モデムがマッピングされた値に基づいてアナログ信号を変調するように構成される、態様17Cに記載のデバイス。
【0275】
[0300] 態様19C.インターレースプロセスは、係数のうちの2つまたは4つのビットをインターレースする、態様17Cまたは18Cに記載のデバイス。
【0276】
[0301] 態様20C.1つまたは複数のプロセッサは、残差データに基づいて係数を生成することの一部として、1つまたは複数のプロセッサが、残差データに基づいて係数を生成する2値化プロセスを実行し、係数を量子化する量子化プロセスを実行するように構成される、態様17Cから19Cのいずれか1つに記載のデバイス。
【0277】
[0302] 態様21C.1つまたは複数のプロセッサは、予測データに基づいてデジタル値を生成することの一部として、1つまたは複数のプロセッサが、予測データ中のデジタルサンプル値に基づいて量子化されたデジタルサンプル値を生成し、量子化されたデジタルサンプル値に基づいてデジタル値を生成するエントロピー符号化プロセスを実行するように構成される、態様17Cから20Cのいずれか1つに記載のデバイス。
【0278】
[0303] 態様22C.1つまたは複数のプロセッサは、アナログ信号が送信されるチャネルのスペクトル効率に基づいて、複数のインターレースプロセスからインターレースプロセスを選択するようにさらに構成される、態様17Cから21Cのいずれか1つに記載のデバイス。
【0279】
[0304] 態様23C.インターレースプロセスの各々は、異なる数の係数をインターレースする、態様22Cに記載のデバイス。
【0280】
[0305] 態様24C.デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様17Cから23Cのいずれか1つに記載のデバイス。
【0281】
[0306] 態様25C.ビデオデータを復号するためのデバイスであって、アナログ信号とデジタル値とを取得するように構成されたモデムと、回路内に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、アナログ信号に基づいてインターレースされた振幅値を決定することと、2つ以上の係数を生成するためにインターレース解除プロセスを実行することと、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成することと、デジタル値を取得することと、デジタル値に基づいて予測データを生成することと、予測データと残差データとに基づいてビデオデータを再構成することとを行うように構成される、デバイス。
【0282】
[0307] 態様26C.1つまたは複数のプロセッサは、アナログ信号に基づいてインターレースされた振幅値を決定することの一部として、1つまたは複数のプロセッサが、元の数直線におけるインターレースされた振幅値を、1つまたは複数のギャップ範囲を含む代わりの数直線におけるマッピングされた値にマッピングするマッピングプロセスを使用して生成されたマッピングされた値を決定するためにアナログ信号を復調することと、ここにおいて、ギャップ範囲は、アナログ信号から復調されたインターレースされた振幅値におけるビットフリップに関してノイズの影響と相関する元の数直線における位置に位置し、マッピングプロセスは、インターレースされた振幅値のいずれも、1つまたは複数のギャップ範囲のいずれかにおけるいずれの値にもマッピングしない、マッピングされた値をインターレースされた振幅値にマッピングするためにマッピングプロセスの逆を使用することとを行うように構成される、態様25Cに記載のデバイス。
【0283】
[0308] 態様27C.アナログ信号を復調することによって決定されるマッピングされた値は、ギャップ範囲のうちの1つにあり、マッピングプロセスの逆は、ギャップ範囲内のマッピングされた値を元の数直線における値にマッピングする、態様26Cに記載のデバイス。
【0284】
[0309] 態様28C.インターレース解除プロセスは、係数のうちの2つまたは4つのビットをインターレース解除する、態様25Cから27Cのいずれか1つに記載のデバイス。
【0285】
[0310] 態様29C.1つまたは複数のプロセッサは、アナログ信号に基づいてインターレースされた振幅値を決定することの一部として、1つまたは複数のプロセッサが、アナログ信号のシンボルサンプリング時点の位相シフトおよび電力に対応するアナログシンボルを決定するように構成され、ここにおいて、インターレースされた振幅値は、I-Q平面内のアナログシンボルの座標に等しい、態様25Cから28Cのいずれか1つに記載のデバイス。
【0286】
[0311] 態様30C.1つまたは複数のプロセッサは、係数に基づいて残差データを生成することの一部として、1つまたは複数のプロセッサが、係数を逆量子化する逆量子化プロセスを実行し、係数に基づいて残差データを生成する2値化解除プロセスを実行するように構成される、態様25Cから29Cのいずれか1つに記載のデバイス。
【0287】
[0312] 態様31C.1つまたは複数のプロセッサは、デジタル値に基づいて予測データを生成することの一部として、1つまたは複数のプロセッサが、デジタル値に基づいて量子化されたデジタルサンプル値を生成するエントロピー復号プロセスを実行し、逆量子化されたデジタルサンプル値に基づいて予測データ中のデジタルサンプル値を生成する逆量子化プロセスを実行するように構成される、態様25Cから30Cのいずれか1つに記載のデバイス。
【0288】
[0313] 態様32C.1つまたは複数のプロセッサは、アナログ信号が送信されるチャネルのスペクトル効率に基づいて、複数のインターレース解除プロセスからインターレース解除プロセスを選択するようにさらに構成される、態様31Cに記載のデバイス。
【0289】
[0314] 態様33C.インターレース解除プロセスの各々は、異なる数の係数をインターレース解除する、態様32Cに記載のデバイス。
【0290】
[0315] 態様34C.デバイスは、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様27Cから33Cのいずれか1つに記載のデバイス。
【0291】
[0316] 態様35C.ビデオデータを符号化するためのデバイスであって、ビデオデータの予測データを生成するための手段と、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成するための手段と、残差データに基づいて係数を生成するための手段と、インターレースされた振幅値を生成するためにインターレースプロセスを実行するための手段と、ここにおいて、インターレースプロセスは、インターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、インターレースされた振幅値に基づいてアナログ信号を変調するための手段と、予測データに基づいてデジタル値を生成するための手段と、アナログ信号と予測ブロックに基づくデジタル値とを出力するための手段とを備える、デバイス。
【0292】
[0317] 態様36C.ビデオデータを復号するためのデバイスであって、アナログ信号に基づいてインターレースされた振幅値を決定するための手段と、2つ以上の係数を生成するためにインターレース解除プロセスを実行するための手段と、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成するための手段と、デジタル値を取得するための手段と、デジタル値に基づいて予測データを生成するための手段と、予測データと残差データとに基づいてビデオデータを再構成するための手段とを備える、デバイス。
【0293】
[0318] 態様37C.実行されたとき、1つまたは複数のプロセッサに、ビデオデータの予測データを生成することと、予測データとビデオデータのデジタルサンプル値とに基づいて残差データを生成することと、残差データに基づいて係数を生成することと、インターレースされた振幅値を生成するためにインターレースプロセスを実行することと、ここにおいて、インターレースプロセスはインターレースされた振幅値を生成するために係数のうちの2つ以上のビットをインターレースする、インターレースされた振幅値に基づいてアナログ信号を変調することと、予測データに基づいてデジタル値を生成することと、アナログ信号と予測ブロックに基づくデジタル値とを出力することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体。
【0294】
[0319] 態様38C.実行されたとき、1つまたは複数のプロセッサに、アナログ信号に基づいてインターレースされた振幅値を決定することと、2つ以上の係数を生成するためにインターレース解除プロセスを実行することと、ここにおいて、インターレースされた振幅値において2つ以上の係数のビットがインターレースされる、2つ以上の係数に基づいて残差データを生成することと、デジタル値を取得することと、デジタル値に基づいて予測データを生成することと、予測データと残差データとに基づいてビデオデータを再構成することとを行わせる命令を記憶したコンピュータ可読データ記憶媒体。
【0295】
[0320] 例に応じて、本明細書で説明された技法のうちのいずれかのいくつかの行為またはイベントは、異なるシーケンスで実施され得、追加、マージ、または完全に除外され得る(たとえば、すべての説明された行為またはイベントが、技法の実践のために必要であるとは限らない)ことを認識されたい。その上、いくつかの例では、行為またはイベントは、連続的にではなく、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して同時に実行され得る。
【0296】
[0321] 1つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアに実装される場合、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベース処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、(1)非一時的である有形コンピュータ可読記憶媒体、または(2)信号もしくは搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示において説明された技法の実装のための命令、コードおよび/またはデータ構造を取り出すために、1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【0297】
[0322] 限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、CD-ROMまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは、命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含むのではなく、代わりに、非一時的な有形の記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)およびBlu-rayディスク(disc)を含み、ここで、ディスク(disk)は通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲に含まれるべきである。
【0298】
[0323] 命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、あるいは他の均等な集積回路またはディスクリート論理回路などの、1つまたは複数のプロセッサ(たとえば、プログラマブルプロセッサ)によって実行され得る。したがって、本明細書で使用される「プロセッサ」および「処理回路」という用語は、上記の構造、または本明細書で説明された技法の実装に好適な任意の他の構造のいずれかを指し得る。加えて、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用ハードウェアおよび/またはソフトウェアモジュール内に提供されるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素において十分に実装され得る。
【0299】
[0324] 本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示される技法を実施するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、モジュール、またはユニットが説明されたが、それらの構成要素、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明されたように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明された1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作可能なハードウェアユニットの集合によって提供され得る。
【0300】
[0325] 様々な例について説明されてきた。これらおよび他の例は以下の特許請求の範囲内に入る。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
【国際調査報告】