エンコードの仕組みとは?
高精細な動画エンコードのためにおさえておきたい5つのポイント【前編】

2023.02.28

エンコード・編集サービス

エンコード

エンコード

インターネット動画の画質はビットレートとほぼ比例します。しかしむやみにビットレートを高くするとファイル容量が増大してしまいます。「ビットレートを低く抑える」「ファイルの容量が小さくなる」「アップロードの時間短縮」の3つは連動しており、ビットレートを抑えながら高精細にエンコードできたら言うことなしです。
また冒頭で「画質はビットレートとほぼ比例」と書きましたが、「ビットレートを上げてエンコードをしたけれど、いまひとつ画質に満足できない」という経験をした方もいらっしゃるかと思います。そこで今回は、より高精細な動画エンコードを実現させるに時によく使われる5つのポイントを解説します。

後編(ポイント4、ポイント5)はこちらでお読みいただけます

エンコードの仕組み

最初に簡単にエンコードの仕組みを解説します。
映像とは連続する画像(フレーム)の集まりで、これを短い時間でパラパラ漫画のように切り替えることで視覚的に動いているように見えています。日本のテレビ映像は1秒間に29.97枚のフレーム(29.97fps / frame per secondの略)で、映画・アニメの多くは24 fpsという規格になっています。映像には大量のフレームが必要なためデータ量も膨大になります。そのため、インターネットで動画を配信するにはデータの圧縮が不可欠になります。

エンコードをする際は

  • 1フレーム内でデータを圧縮する「フレーム内予測」
  • 連続するフレームの中で、データを圧縮する「フレーム間予測」

の2つの掛けあわせで圧縮を行い、視覚に影響のない範囲で情報を間引きデータを圧縮しています。

フレーム内予測とは

データ圧縮については、さまざまな方法論があるためここでは詳細は割愛しますが、フレーム内予測のベースとなる考え方は、1フレームをセルと言われる小さなブロックに分割し、ブロック内で隣あった色が同じまたは似た場合にこれをまとめてデータ圧縮するというものです。
例えば、分割したブロック内で「青青青青青青青青青青青赤赤黄黄黄」という情報があった場合、これを「青11、赤2、黄3」とまとめることで、データ量を削減するといったイメージです。

フレーム内予測におけるデータ圧縮の一例(イメージ図)

フレーム間予測とは

ただし、時間軸のある映像の場合はフレーム数が多いため、フレーム内予測だけでは全体の軽量化には限界があります。一方、フレーム間予測では「連続するフレームの前後は内容が似ている」という考え方に基づき、前のフレームと変化がないセルは情報を使い回すことでデータ量を軽くし、変化があるセルを差分情報としてデータ化します。

フレーム間予測(イメージ図)

ここから、具体的なエンコードのポイントを5つ解説していきます。

ポイント1:解像度に適したビットレート目安を把握する

以下3種類の画像をご覧ください。

1MBの画像
1MB

250kBの画像
250kB

50kBの画像
50kB

上記3つは、同じ640×360pxの画像からの抜粋ですが1MB、250kB、50kBとファイルサイズが異なります。1MBに比べ250kBは画質が劣りますし、50kBになるとずいぶんと粗くなっています。これは、1ピクセルあたりに割り当てられるデータ量が減ってしまうため、画質が劣化してしまうからです。

同様の現象は動画にも言えます。ビットレートとは1秒間に割り当てるデータ量のことで、動画の画質を左右します。パソコンやテレビモニター上でのフル画面視聴といった大画面で動画を見せたい場合は、解像度にあわせた十分なビットレートが必要です。逆に、小さな解像度で見せる場合は、ビットレートを低くしてもあまり粗さが目立ちません。むしろ、高いビットレートでエンコードしても画質の差を実感できず、ファイル容量が大きくなるだけということも多いです。

以下に、現在インターネット動画配信の際によく使われている解像度と適性ビットレートの目安を列記します。

《解像度と適性ビットレートの目安》

※30fps想定での数値、2023年2月時点での当社見解によるとりまとめです。
※適性ビットレートは映像内容によって多少前後することがあります。
※映像コーデックにMPEG4を使用する場合の目安です。(コーデックにより圧縮効率が異なります)

解像度動きの少ない映像動きの多い映像
SD(720×480px)500kps~1Mbps1Mbps~2Mbps
HD(1280×720px)2.4Mbps~4.5Mbps4.5Mbps~9Mbps
フルHD(1920×1080px)4.5Mbps~9Mbps9Mbps~18Mbps
4K(4096×2160px)25Mbps~35Mbps35Mbps~70Mbps

ただし、動画の場合は「動きの多い映像素材か」「動きの少ない映像素材か」によって同じビットレートでもエンコード時の画質の違いが生じます。そのため映像素材にあわせて、ビットレートだけでなく、この後解説するフレームレートやキーフレーム等の設定を総合的に判断しエンコードを行う必要があります。高精彩さを決めるひとつの要素として「解像度と適正ビットレートの関係がある」とご理解いただければと思います。

ポイント2:動き重視ならフレームレートを上げ、画質重視ならフレームレートを下げる

テレビは29.97fps、映画は24fpsとフレームレート(フレーム数)の規格が決められているのに対し、インターネット動画のエンコードではフレームレートを自由に設定できます。映像とはパラパラ漫画のように連続する画像(フレーム)の集まりです。1秒あたりのフレーム数が多ければ多いほど、より動きを滑らかに表現することができます。

動画エンコードでは、1秒あたりのビットレートは決まっていますので、フレームレートを上げればパラパラ漫画の画像の数が増え動きが滑らかになる一方で、1フレームあたりに割り当てられるデータ量は減るため画質は落ちます。
逆に、フレーム数を下げるとパラパラ漫画の画像の数が減る分、動きの滑らかさは多少鈍りますが、1フレームあたりに多くのデータ量を割り当てることになるため画質は向上します。

動きの多い映像で、動きの滑らかさを重視するならばフレームレートを上げます。一方、動きの少ない映像ならば、(程度にもよりますが)フレーム数をそれほど多くする必要性がありませんので、フレームレートを下げて画質向上を優先させるのが有効です。

ポイント3:動きの多い映像には「キーフレーム 」を短い間隔で入れる

キーフレームとは、1枚の静止画(フレーム間圧縮を行っていない画像)として存在していて、差分情報の起点となるフレームのことです。エンコーダーの設定にもよりますが、キーフレームはシーン変更があった場合に挿入されるほか、○フレーム、○秒に1回というように差分情報を一定の間隔で取得できるように挿入されます。

【図2】キーフレームのイメージ図

動きの多い映像のキーフレーム

動きの多い映像は、短い時間でモノが大きく移動したり変化したりします。そのため、キーフレームを短い間隔で入れると細かな動きに対する再現性が高くなります。
また、キーフレームの多い映像のほうが、シークがスムーズになるというメリットもあります。理由としては、シークはキーフレームをもとに行われるため、キーフレームが多ければ狙ったシーンで止めやすくなるからです。シークを止めた位置が、キーフレームではなく差分情報のフレームだった場合は、近くのキーフレームに情報を取得しにいくのですが、その時間が短くて済みます。
ただしキーフレーム数をあまり増やしすぎると、キーフレームにビットレートをとられてしまい全体の映像品質が低下してしまうので注意が必要です。
動きの多い映像の場合、キーフレームの目安としては3秒に1回くらいです。

動きの少ない映像のキーフレーム

動きの少ない映像は差分情報が少ないので、キーフレームが少なくても変化の違いはあまり感じないでしょう。ただし、キーフレームを入れる間隔を長くしすぎると、シークがスムーズに機能せず再生開始までに時間がかかってしまうことがあります。キーフレームが多い場合と逆で、巻き戻した位置がキーフレームから遠いと読み取りにいく時間がかかってしまうからです。
動きの少ないものの場合、キーフレームの目安としては6~8秒に1回くらいです。ここまで、「エンコードの仕組みとは? 高精細な動画エンコードのためにおさえておきたい5つのポイント【前編】」として、「配信したい解像度に適したビットレートを把握すること」、動き重視か画質重視かによって「フレームレート」や「キーフレームの入れ方」を変えるといった3つのポイントを解説しました。【後編】では、「ビットレート設定(CBR・VBR)のメリット・デメリット、使い分け」「正しいアスペクト比とインターレース処理」について解説します。

本記事の続き

■関連記事■
コーデックとは? 動画配信に必要な基礎知識
最適な動画コーデック選択のために、押さえるべき3つの視点

なお当社では、1コンテンツからエンコードサービスを行っています。エンコードサービスでは、パソコン、スマートフォン、タブレット、フィーチャーフォン、Hybrid CastなどのTV向け配信をはじめ、様々な端末への配信に向けて幅広いコーデックに対応しており、動画素材の特徴や対象端末にあわせて適宜必要なエンコードの設定・調整を行っていますので、お気軽にご相談ください。

エンコード・編集サービスの詳しい紹介はこちら

関連する記事一覧

Jストリームの
ソリューションに
興味をお持ちの方は
お気軽に
お問い合わせください。

電話でのお問い合わせ

0120-658140

【受付時間】9:30~18:30(土日祝日を除く)

登録無料!

Jストリームのサービスを活用した成功事例や、お客さまの課題解決につながるお役立ち情報などをメールでお届けしています。

メールマガジン登録

電話でのお問い合わせ

0120-658140

【受付時間】9:30~18:30(土日祝日を除く)