2024-10-27(Sun)追記: 本エントリで言及しているMovieMakerクラスはProcessing 3より前に存在したクラスで、最新のProcessingには存在しません。過去の記録として注意してお読みください。
グラフィックプログラミング環境としてはお手軽なProcessingですが、リファレンスはお世辞にも充実しているとは言えません。MovieMakerクラスのリファレンスを参照して途方に暮れた人は少なからずいるのではないでしょうか。
Parametersのtypeとqualityに定数が列挙してあるだけというのはいまどき信じられない手抜きっぷりです。こういうところこそ普段プログラミングに縁のない人向けに充実させたほうがいいのに……
ことに日本語の情報が不足しているようなので、わかる範囲でコメントを。
- Descriptionにも書いてあるようにMovieMakerクラスで作成するのはQuickTimeムービーです。Windowsの場合QuickTimeがインストールされていないと動作しないと思われます(QuickTime for JavaのAPIを用いているものと推測)。
- typeで指定可能な定数のうちH.264に関してはそのままでは使えません。QuickTime Proにアップグレードすると使えるようになると思われます。
- qualityはWORSTが低画質=高圧縮(つまりファイルサイズが小さくなる)、BESTが高画質=低圧縮(つまりファイルサイズが大きくなる)の意です。LOSSLESSは圧縮なし。ただしtypeは圧縮が前提だったり圧縮しないものがあったりするので組みあわせによっては指定は無視されます。たとえばtypeにJPEGを指定するとqualityにLOSSLESSを指定してもなにがしかの圧縮は行われます。
じゃあ具体的にどのtypeを指定すればいいのかをHD(720p)のムービーを作成した経験を元にあげてみますと……
- いちばん汎用的なのはたぶんJPEG(MOTION_JPEG_AもMOTION_JPEG_Bも変わりないと思われる)。
- H.261とH.263はちいさい画面サイズ向けにはいいかもしれませんが、おおきい画面サイズだと字などで実用に耐えません。SORENSONも同様(SORENSONはブロックノイズを確認)。
- 単純な描画しか行わない場合はANIMATIONも選択肢に入ります。JPEGよりはファイルサイズがおおきくなりますが、再エンコーディングによる画質劣化を気にせずにすみます。
- あとはよっぽど探究心の旺盛な方でなければ試すまでもないでしょう。ファイルサイズがおおきくなりすぎたり画質がよくなかったりいろいろです。
以上、なにかの参考になれば幸いです。