世の中せっかちで、早送りしたり、巻戻ししたりしますね。
デジタルの世界だと過去と未来の行き方が異なります。
デジタルデータにおける映像データ構造
超簡単に言うと、デジタルにおいて昔のアニメ同様、パラパラ漫画的構造です。 ただし、データ量を少なくするために 未来のことを予測したり、パラパラ漫画1枚ずつの『間』を予測し、差分データ的扱いとして保持しています。
パラパラ漫画1枚ずつの定義は、H.264や265といった規格において3つあります。
- Iピクチャ(Intra Picture):パラパラ漫画1枚ずつそのままのデータ
- Pピクチャ(Predictive Picture):過去のIピクチャとPピクチャから予測したデータ(過去はこういう動きだから次はこうなるだろうなーというデータ)
- Bピクチャ(Bidirectionally Predictive Picture):パラパラ漫画の間を予測したデータ(過去と未来のIとPから予測したデータ)
MPEGのデータ階層構造のピクチャの話をしています。(MPEG6階層構造)
- シーケンス
- GOP(Group of Pictures)
- ピクチャ→ココの話
- マクロブロック
- ブロック (実際はI・P・Bのスライスといったことがありますが…)
3つのピクチャの並び順と作られ方
- 一般的な並び順 I→B→B→P→B→B→P…I(1)→B(2)→B(3)→P(4)→B→B→P→B→B→P…I
作られ方 (4)は、過去のIとP、(1)から予測して作ります。(差分のみ) (2)(3)は、(1)と(4)から予測して作ります。(差分のみ) ①を作る間隔を増やすことはもちろん可能ですが(I-VOP間隔マシマシ)、データ量が増えます。
(MPEGにおける)早送りと巻戻し
通常再生 I → B → B → P → B → B → P → B → B → P…I
早送りー I → P → P → I → P → P → I
巻戻しー I ← I ← I ← I
MPEGの仕様として、 早送り・巻戻しは、Bピクチャを飛ばします。(過去・未来のピクチャが必要なため) 早送りは、IピクチャとPピクチャを利用できます。 巻戻しは、Pピクチャを利用できません。(Pは過去のIとPからしか作れないため) 早送りの方が細かく進めるのです。 3~4段階くらいですか、送り・戻しの速度を変更することができますね。 ピクチャや上位レイヤ単位で飛ばしている間隔が異なります。 早送り・巻戻し、してみてください。
きめら
レコチョクでは、メタ情報・音源関連の管理を担当しています。