どの文字列が何をさしているのか
これらの文字列は、「コーデック」、「プロファイル」、「レベル」を表しています。 例)H.264 Baseline 3.2 → H.264(コーデック) Baseline(プロファイル) 3.2(レベル) 例)H.265 Main 4.1 →H.265(コーデック) Main(プロファイル) 4.1(レベル) 続いて、それぞれが何を表しているのか説明します。「コーデック」とは
- 動画のファイル容量を圧縮するためのもの。
- 動画ファイルは何らかのコーデックを使って容量を圧縮して保管されていることが多い。
- 現在インターネットで一般的なものは、H.264(別名AVC)。
- 次世代のコーデックとして、H.26(別名HEVC)やAV1、VP9などが出回ってきている。
- 再生する機器やソフトウェアが、動画に利用されているコーデックに対応していないと、動画を再生することができない。
MPEG-4とMP4って同じじゃないの!?動画のコーデックとファイル形式を知ろう
本稿では動画ファイルの「コーデック」と「ファイル形式」について簡単にまとめ、違いが分かるようになります。
「プロファイル」とは
- プロファイルの種類はコーデックであらかじめ決められており、それぞれの用途が考えられている。
- プロファイルによって備わっている機能が違う。
- Aというプロファイルはプロの動画編集で利用されることを前提としている
- Bというプロファイルはスマホなどの小型端末向け再生用に考えている など。
- プロファイルごとに画質の良さや、色の豊富さ、再生処理などに影響する機能を定めている。
- 機能が豊富なプロファイルの動画は、スマホで再生できないなどのことが起こる。
「レベル」とは
- 動画再生に利用するメモリや処理の重さなどの上限が定められたもの。
- レベルごとに、画面解像度やフレームレートの上限が決まっている。
- レベルが高いと、処理が重いためスマホで再生できないなどのことが起こる。
コーデック、プロファイル、レベルを知っておくメリット
各用語の説明にも書きましたが、コーデックやプロファイル、レベルによっては、特定の端末やOSで再生ができないという事が起こります。 再生ができない、でもどうしてだろう?という場合に、コーデック、プロファイル、レベルを調べることで、問題の切り分けを行うことができます。 たとえばAndroid端末では、H.264コーデックの場合、基本的にBaselineプロファイルに対応しており再生できます。 そしてMainやHighプロファイルは再生できない場合があります。 iOS端末の場合は、Baselineプロファイルの再生が可能で、Mainプロファイルでも再生ができるようです。 またレベルも高すぎるものを指定すると、処理能力やメモリが貧弱な端末では再生ができない場合があります。※スマートフォン端末への動画配信を行う場合は、H.246 Baselineプロファイルのレベル4.1にしておくのが無難です。古いスマホも対象にする場合は、レベル1.3または3.0。
※Androidの端末によっては、Mainプロファイルのものでも再生できる場合があります