38
今日はVJ用に最適なビデオコーディックを紹介します。
映像素材は、快適にVJできるよう最適なコーデックに変換しましょうという事です。
VJ用として再生時の負荷が軽いコーデックを紹介します。

動画ファイルのコーデックとは

動画ファイルのコーデックとは、簡単に言うとコーデックとはデータの規格の事です、

動画の仕組みは単純にいうと「パラパラ漫画」です。
その「パラパラ漫画」の1枚1枚に使用されているのは「画像」です。
event_20140426_02_theatercafe
例えば「1920×1080」の解像度、「30fps」動画(1秒間に30枚紙芝居が表示される)とかだと、1分間で1800枚の「1920×1080」の画像が必要となります。

これをそのまま動画にしてしまうと、3分で15GBとかいうアホみたいにデカいファイルサイズになってしまいます。

そこで、「コーデック」という「圧縮のアルゴリズム」を使用して、1枚1枚の画像(フレームと言う)を色々な方法で圧縮する事で、ファイルサイズを大幅に小さくします。

なぜ変換するのか

動画をそのまま使った方が楽ですね。
しかし複数レイヤーの映像にミックスやエフェクトなどのVJプレイ行うと、マシンに負担がかかり過ぎて落ちてしまうことも。
その危険を軽減するために、映像素材の再生時の負荷を軽くしようということです。

VJ用ビデオコーデック

VJ用に開発されたビデオコーデックがあります。これは、一般的なビデオコーデックのmp4(H.264コーデック)に比べ、再生時のCPU負荷が軽いのが特徴です。
VJ用のビデオコーデックには以下があります。

アルファチャンネルなし。 アルファチャンネル付き - 透過色が扱える。

どのコーデックがいいの

以下の記事に比較グラフがあります。
Presenting Hap, a family of open-source GPU accelerated video codecs — VDMX - VJ SOFTWARE
データ量が多くて良いならHap系が最も再生が軽いですが、データ量も抑えつつ再生を軽くしたいならPhoto JPEGがバランスがよいです。
ちなみにmp4(H.264コーデック)は、これらよりはるかにCPU負荷が高いハズ。実際どれくらい高いのか検証してみたい。

ビデオコーデックを変換する

動画ファイルのコーデックを変換するには、エンコーダーというソフトを使用します。
主なエンコーダーは以下です。
以下FFmpegを使用し、動画ファイルのコーデックをHapに変換する方法を解説します。

FFmpegでコーデックをHapに変換する

以下、動画ファイルをHapコーデックにエンコードする方法を解説します。
以下でやることは、動画変換ソフトのFFmpegをインストールし、自動実行ソフトのAutomatorにFFmpegを連続実行させて複数の動画ファイルを変換します。以下手順。

まずFFmpegを準備します。
FFmpegのページにアクセスしてdownloadボタンをクリック。
http://ffmpeg.org/
48
ページ中ほどのGet the packagesから該当するモノをクリック。
スクリーンショッ
右側の安定版のDownload as DMGをクリックしてダウンロード。
スクリーンショット
ダウンロードしたファイルをダブルクリックして解凍します。解凍するとアプリ本体がお目見えします。
49
以上でffmpegの準備はOKです。ターミナルから実行する場合は以下のように入力します。
ffmpeg -i [変換前の動画ファイル名] -vcodec hap [変換後動画ファイル名.mov]
ただしターミナルで実行する場合、一つづつしか処理できません。ここではターミナルではなくAutomatorを使い、複数のファイルを一括で変換する方法を解説します。以下解説。

まず変換する動画ファイルを一つのフォルダにまとめます。
34
Automatorを起動します。場所は"アプリケーション"フォルダーにあります。
スクショ
起動したら、メニューバーのファイルから新規をクリック。
a
ワークフローを選択して"選択"ボタンをクリックします。
b
左側のペーンから、右側のペーンにドラッグアンドドロップして以下の項目を追加します。
  • Finder 項目の選択を求める
  • フォルダの内容を取得
  • シェルスクリプトを実行
59
すると、画面は以下のようになっているハズです。
a
"Finder 項目の選択を求める"の"タイプ"プルダウンを"フォルダ"に変更します。
b
"シェルスクリプトを実行"の"入力の引き渡し方法"プルダウンを、"stdin"から"引数として"に変更します。
あ
以下を入力します。
for f in "$@"
do
    [ffmegをドラッグアンドドロップ] -i "$f" -vcodec hap "${f%.*}_変換後.mov"
done
18

ウィンドウ右上にある"実行"ボタンをクリックします。
11
処理が始まります。フォルダ選択を求められるので、先ほどのフォルダーを選択して"選択"ボタンを押します。
18
しばらくして処理が終わると、右下の"ログ"ペーンに"ワークフローが完了しました"と表示されます。
フォルダを確認すると、変換されたファイルが追加されています。
28