■
Processingで描いた絵をgifアニメにしたかった.調べてみたらいくつか方法がわかったので,まとめておく.
gifAnimatinonを使う
gifAnimationというprocessingの外部ライブラリを導入することで,gifアニメを作ることができる.gifAnimationについては次のリンクからダウンロードでき,使い方も書いてある.
http://extrapixel.github.io/gif-animation/
また,メニューの「Sketch」→「Import Library...」→「Add Library…」からでもライブラリをインポートできる.
サンプルプログラム
import gifAnimation.*; GifMaker gifExport; void setup(){ size(300, 300); noStroke(); smooth(); gifExport = new GifMaker(this, "noise.gif"); gifExport.setRepeat(0); } void draw(){ background(0); for(int i = 0; i < width; i++){ for(int j = 0; j < height; j++){ fill(random(255)); rect(i, j, 1, 1); } } gifExport.setDelay(1); gifExport.addFrame(); } void mousePressed(){ gifExport.finish(); }
作ったものはこんな感じになる.
ImageMagickを使う
まずは,連番画像を作る.作り方は,以下のコードをプログラムの中に埋め込む.基本的にはdraw()の最後にでも書いておけばいいと思う.
saveFrame(“frames/####.png”);
詳しくは,メニューの「Tools」→「Movie Maker」に書いてある.ここからは作った連番画像を使用して動画を作ることができる.音も別に追加できるよう.ただ,gifアニメはつくれない.ImageMagickの以下のコマンドで,作った連番画像を使用してgifアニメを作ることができる.
convert -delay 40 -loop 0 *.tif anime.gif
delayオプションは切り替え時間(ms),loopオプションは繰り返し設定.その他にPhotoshopを使ったりしても作れるよう.
[参考]
やばいと思ったがProcessingを抑えきれず、gif作った。 - 脱力系日記
http://tkmr.hatenablog.com/entry/2013/06/12/001733
log_ts processing2.0で動画保存
http://log-ts.tumblr.com/post/60166243311/processing2-0
OSX - 連番画像から簡単にgifアニメを作る - Qiita
http://qiita.com/ongaeshi/items/21fceae420b7330b0c1b