トランスコードシステム開発 ~コンテナとコーデック~
みなさんが動画を撮影するとき、何を使いますか?
スマホそれともビデオカメラ?
最近はスマホを使うことが多いと思いますが、ではスマホはiPhone?それともAndroid?
Androidの方は、メーカーはどこですか?サムスン?SONY??
このように一口に動画を撮影といっても様々な機種がありますね。
そして、実は、撮影された動画のファイルは、機種によって異なる場合があるのです。
なので、撮影した動画をwebにアップしてもそのまま再生できるとは限らないってご存知でしたか?
この、アップされた動画を、webで再生できるように変換することを
トランスコード
といいます。このトランスコードを自動的に行うのが、
動画トランスコードシステム
です。
動画のトランスコードシステムを開発する場合にやっかいなのが、コンテナとコーデックの関係。
例えば、「Avi」という拡張子(コンテナ形式)のファイルがあります。
ある動画ファイルがあって、123.aviと、qbc.aviというふたつがまったく同じ方法でトランスコードできるか、というとそれがそうはいかないんです。
問題になるのは、コンテナに内包される動画のコーデック。
これは、コンテナを350mlのアルミ缶、コーデックを飲み物の種類、と考えてもらえばわかりやすいです。
同じ外見の350mlのアルミ缶(aviというコンテナ)でも、その中身がコーラなのか、ビールなのか、はたまた水なのか、は缶に詰めた人で無い限りは、缶をあけてみないとわかりません。
ビデオカメラで撮影した動画ファイルは、拡張子が同じaviであっても、上記のように中身が違うということがよくあります。
ですので、トランスコードシステム開発時は、この点を検討して開発をしないとならないのです。
コンテナとコーデックについては、こちらのサイトがわかりやすいですよ。