はじめに
合同会社DMM.comで動画配信サービスの開発をしている中村(@zyackusan)です。2020年に入社して以来、DMM TVを始めとする動画配信サービスにおいて、主にバックエンドの開発に関わってきました。
ちなみに、私が今の開発グループを選んだ理由は「なんかややこしそうなシステムを作ってて面白そうだな」と思ったからです。
実際にその通りでした。とても巨大で複雑で、しかもニッチな分野です。
私が動画技術について初めて触れたのは今の開発グループに配属されたときのことです。当時はバックエンドに関する基本的な知識を持ち合わせていた一方で、動画技術についてはさっぱりでした。配属直後は開発メンバーとの会話やソースコードに出現するさまざまな動画配信技術に関する用語や概念について最初は理解できず、それらのキャッチアップに多く時間を費やしたことを覚えています。
今回の記事では、そんな自分の経験をもとに「動画配信技術」に関わる方がまず知っておきたい知識を伝えたいと思います。
そもそも動画ファイルとは?
この動画配信技術を理解していくにあたって、最初に押さえておきたいのが「動画ファイル」という概念です。動画配信技術を語る上で動画ファイルについての理解は欠かせません。
スマートフォンで撮影した映像も、DVDやBlu-rayなどのメディアに焼かれた映像も、インターネット上で配信される映像も、全てが動画ファイルとして扱われます。また、動画配信サービスにおいても、納品から配信までの一連の行程でも必ず動画ファイルが登場します。
連載の第1回では、動画配信の工程で必要とされる技術として、エンコード、パッケージング、配信(キャッシュ)、再生(プレイヤー)を紹介しました。動画ファイルはこの4つの工程すべてに関わってきます。
このように動画ファイルは動画配信技術を構成する土台となる要素であり、ここを理解することで動画配信技術に対する理解が加速度的に向上します。
とっかかりとして、動画ファイルに対する大雑把なイメージを共有しましょう。動画ファイルとは、映像や音声などの「個別のデータ」をひとつのファイルにまとめたものです。
動画配信技術において映像と音声データは別々に扱われる概念です。これは直感的に理解できることでしょう。
スマートフォンで撮影するシーンを例にとると、カメラが映像データを、マイクが音声データをそれぞれデジタルデータとして取り込むことからも、映像と音声データは別々に扱われることがわかります。
つまり、動画ファイルをプレイヤーで再生するということは、映像データと音声データを同時に再生するということになります。このイメージが描ければ、動画ファイルに対する理解はそれほど難しくないでしょう。
このように整理してみると、動画ファイルに対する疑問は以下に集約されます。
- 映像や音声データをどのようにファイルとしてまとめるのか?
- 物理現象である映像や音声がデジタルデータとして表現されるとき、どのような変換が行われるのか?
本記事では、上記2点について解説していきます。