トップPV

コーデック資料

  1. 映像

    SMPTE 270M-2002 に近い方式を採用しています。

    1. ピクセルのサンプリング方式

      輝度・色差ともに 8 ビットでサンプリングします。色差成分の水平方向サンプリング周波数は輝度成分の半分です。

      ◎:輝度と色差 / ○:輝度のみ

    2. フレーム構成

      水平方向のピクセル数は 16 の倍数、垂直方向のピクセル数は 8 の倍数である必要があります。

      インターレースのフィールドオーダーは下表の通りです。

      フォーマット 最上位ラインのフィールド
      480i 2nd
      1080i 1st
    3. マクロブロック

      「16ピクセル×16ピクセル」が基本形です。

      Y0 Y2
      Y1 Y3
      Cr0
      Cr1
      Cb0
      Cb1

      映像サイズの垂直ピクセル数が16で割り切れない場合は、最下段のみ「32ピクセル×8ピクセル」になります。

      Y0 Y2 Y1 Y3
      Cr0 Cr1
      Cb0 Cb1

      輝度成分の添え字が SMPTE 270M と異なることに注意してください。

    4. DCT モード

      マクロブロックごとに DCT モードを指定することができます。適切な DCT モードの選択はインターレース映像の圧縮率向上に寄与します。

      DCT モードには、フィールド間の相違が小さいときに選択するべきフレームモードと、大きいときに選択するべきフィールドモードの2種類があります。

      32×8のマクロブロックに対しては必ずフレームモードを適用します。SMPTE 270M と異なり、プログレッシブ映像には DCT モードの概念はありません。

      フィールドモードが選択されたマクロブロック内では、上下に隣接する DCT ブロックのデータを下図のように入れ替えます。

      • 入れ替え前
        A00 A01 A02 A03 A04 A05 A06 A07
        A10 A11 A12 A13 A14 A15 A16 A17
        A20 A21 A22 A23 A24 A25 A26 A27
        A30 A31 A32 A33 A34 A35 A36 A37
        A40 A41 A42 A43 A44 A45 A46 A47
        A50 A51 A52 A53 A54 A55 A56 A57
        A60 A61 A62 A63 A64 A65 A66 A67
        A70 A71 A72 A73 A74 A75 A76 A77
        B00 B01 B02 B03 B04 B05 B06 B07
        B10 B11 B12 B13 B14 B15 B16 B17
        B20 B21 B22 B23 B24 B25 B26 B27
        B30 B31 B32 B33 B34 B35 B36 B37
        B40 B41 B42 B43 B44 B45 B46 B47
        B50 B51 B52 B53 B54 B55 B56 B57
        B60 B61 B62 B63 B64 B65 B66 B67
        B70 B71 B72 B73 B74 B75 B76 B77
      • 入れ替え後
        A00 A01 A02 A03 A04 A05 A06 A07
        A20 A21 A22 A23 A24 A25 A26 A27
        A40 A41 A42 A43 A44 A45 A46 A47
        A60 A61 A62 A63 A64 A65 A66 A67
        B00 B01 B02 B03 B04 B05 B06 B07
        B20 B21 B22 B23 B24 B25 B26 B27
        B40 B41 B42 B43 B44 B45 B46 B47
        B60 B61 B62 B63 B64 B65 B66 B67
        A10 A11 A12 A13 A14 A15 A16 A17
        A30 A31 A32 A33 A34 A35 A36 A37
        A50 A51 A52 A53 A54 A55 A56 A57
        A70 A71 A72 A73 A74 A75 A76 A77
        B10 B11 B12 B13 B14 B15 B16 B17
        B30 B31 B32 B33 B34 B35 B36 B37
        B50 B51 B52 B53 B54 B55 B56 B57
        B70 B71 B72 B73 B74 B75 B76 B77
    5. 離散コサイン変換

      一般的なものと同じです。

    6. 量子化テーブル

      輝度と色差で別々の量子化テーブルを定義できます。SMPTE 270M と異なり、AC の係数はカスタマイズ可能です。

      一例としてデフォルトで定義されているテーブルを示します。

      • 輝度
        32 16 17 18 18 19 42 44
        16 17 18 18 19 38 43 45
        17 18 19 19 40 41 45 48
        18 18 19 40 41 42 46 49
        18 19 40 41 42 43 48 101
        19 38 41 42 43 44 98 104
        42 43 45 46 48 98 109 116
        44 45 48 49 101 104 116 123
      • 色差
        32 16 17 25 26 26 42 44
        16 17 25 25 26 38 43 91
        17 25 26 27 40 41 91 96
        25 25 27 40 41 84 93 197
        26 26 40 41 84 86 191 203
        26 38 41 84 86 177 197 209
        42 43 91 93 191 197 219 232
        44 91 96 197 203 209 232 246

      DC 成分は係数 32 で量子化をして 9 ビットにします。

      AC 成分の量子化後の値は SMPTE 270M では 12 ビットまでと定義されていますが、PV4 では家庭用機器に十分な 10 ビットを上限にしています。

      このため、AC 成分の最小係数は 16 となります。

    7. 一時的な量子化テーブルの変更

      量子化テーブルの AC 係数が 32 未満である場合には、量子化後の値が 10 ビットになる可能性があります。

      可変長符号は 9 ビット表現までしかないため、このままでは符号化できません。

      このため、AC 係数がひとつでも 10 ビットになった DCT ブロックは、量子化テーブルの全 AC 係数を一時的に 2 倍にして、量子化後の絶対値を小さくします。

    8. ビットレート削減のための追加量子化

      SMPTE 270M ではビットレートを一定の水準に削減するため、Quantization Number や Class Number を使って、さらなる量子化を行います。

      本コーデックにはそのような概念はなく、追加の量子化が行われることはありません。

    9. AC 成分用ジグザグスキャン

      一般的なものと同じです。

    10. AC 成分用可変長符号

      SMPTE 270M と同じです。

    11. データ順

      マクロブロック内は、以下のデータ順で符号化されます。DCT モード M はインターレース映像のみに存在し、0:フレームモード / 1:フィールドモード です。

      一時的な量子化テーブル変更 Q は、0:通常通り / 1:全 AC 係数 2 倍 です。

      マクロブロック M
      DCTブロック Y0 → DC → Q → AC → EOB
      Y1 → DC → Q → AC → EOB
      Y2 → DC → Q → AC → EOB
      Y3 → DC → Q → AC → EOB
      Cr0 → DC → Q → AC → EOB
      Cr1 → DC → Q → AC → EOB
      Cb0 → DC → Q → AC → EOB
      Cb1 → DC → Q → AC → EOB
    12. 並列処理

      マルチスレッドで並列処理ができるように、映像領域をインターレースの場合は 4 分割、プログレッシブの場合は 2 分割しています。

      どのように領域を分割するかについての説明は省略します。

  2. 音声

    2ch 16ビットの音声を圧縮なしに扱います。