
絵心がなくても簡単に絵が描けるProcessing(最終回)
やっと出た! 公式版のProcessingを動画で確認しよう
collisions.doppac.cc田中 孝太郎
2008/12/17
Minimライブラリも使ってみよう
さらにサンプルを発展させて、Minimライブラリを使用して音の出力も試してみましょう。
// Minimライブラリ |
JMyron版サンプル
minim_video_sample_jmyron.pde
カメラの動画像を動く1ラインのピクセルを調べ、暗い色のピクセルが連続した部分の数だけ、波形を生成し音にするというサンプルです。こちらも動作サンプル動画をご覧ください。音声としてはノイズに近いものではありますが、動画の形に応じた音が出ていることが分かるでしょうか。
minim video sketch from dotimpact on Vimeo
- - PR -
カメラ動画の読み込み、ピクセル情報の扱いなどは前ページのサンプルとほぼ同様です。(※1)行では指定したピクセル画像の色から「brightness」という命令で明るさ情報だけを取り出し、その値が低い(色が暗い)部分を音に変換するという処理を行い、音の発振処理をMinimライブラリで行います。
Minimライブラリは初期化(setup)関数でライブラリ本体であるMinimクラスのオブジェクトを生成することで以後の音声関係のメソッドを使用することができるようになります。今回のサンプルでは波形を出力するAudioOutputオブジェクトに、矩形波を発振するSquareWaveオブジェクトを渡すことで音を出力するという処理をsetWave関数内で行っています。(※2)行で使用しているmap命令はある範囲内の値を別の範囲の数値にマッピングできるProcessingの便利な命令で、ここでは暗い色ピクセルの連続ラインの値(画面Y座標の0〜heightの範囲)を矩形波の音程を決める周波数(ここでは60〜1500Hzの範囲)にマッピングしています。
このようにProcessingの外部ライブラリは、高度な機能を提供しながらも使い方はProcessingらしくシンプルになっているものが多く、動画や音声を使ったプログラムもそれほど苦労せず扱えます。上のサンプルに興味を持たれたなら、ぜひアルゴリズムを変更したり機能を追加してみてください。
Processingのプログラムを公開する
最後に、Processingで作ったプログラムを公開する方法を紹介しておきます。作ったプログラムや作品をWeb上などで公開するために、Processingで以下のような機能が用意されています。
そのほか今回の記事に使ったサンプル動画のように、デスクトップでのプログラムの動作を動画に録画し(これには専用のソフトが必要になります)、動画共有サイトで公開したり、または連載第1回で紹介したJavaScript実装のProcessing.jsやFlashのProcessingライブラリで動作する形で公開するのもよいかもしれません。
□ プログラムをJavaアプレットとして書き出す
Processingのウィンドウに並ぶ右端のボタンアイコンをクリックすることで、Javaアプレット(Webブラウザで動作するJavaプログラム形式)と表示用のHTMLが出力されます。これをサーバにアップロードすることでプログラムをネットに公開できます。
※ Videoライブラリでカメラを使うようなプログラムについてはJavaアプレットでの動作に対応していないため、注意してください。
□ プログラムをデスクトップアプリとして書き出す
Processingウィンドウのメニューから[File]→[Export Application]を選択すると、Windows、Mac OS X、Linuxで動作するデスクトップアプリが出力されます。これらのファイルを送ったりWeb上で配布することで、プログラムをProcessingがインストールされていないマシンでも実行できます。
□ 画像やPDFとして静止画を出力する
スクリーンショットを保存する命令や、前ページで紹介したPDFライブラリを使用することで、Processingのプログラムで作成したグラフィックをWebページに掲載したり印刷できます。
反応をもらうことで改良のアイデアやモチベーションを得られることも多いですから、完全な形ではないスケッチのプログラムでも公開していくとよいでしょう。皆さんもぜひProcessingのプログラミングの世界に参加してみてください。
■ @IT関連記事
| 「Javaは遅い」から「Javaは楽しい」に至る歴史 小山博史のJavaを楽しむ(12) 最新のJava実行環境は起動が速いドラッガブルアプレットなど楽しい機能が満載です。ここまで至るには、いろいろな出来事がありました…… 「Java
Solution」フォーラム 2008/12/15 |
| Silverlightのリッチなグラフィックス描画サンプル集 .NETを知らない人でも分かるSilverlight入門(3) 今回はグラデーションやベジェ曲線など多彩な機能を簡単に実現できるベクター形式のグラフィックス描画について 「リッチクライアント & 帳票」フ ォーラム 2008/3/19 |
||
| いまさら聞けないSVG、なぜ知られていないのか? いまさら聞けないリッチクライアント技術(9) 「SVG? 聞いたことないなあ……」と思うは無理もないことです。知られていない理由とその秘めたる実力について解説します 「リッチクライアント & 帳票」フ ォーラム 2008/2/15 |
||
| Linux Tips − GIMP 2.0を使うには − GIMP 2.2のメニューを日本語化するには − GIMPでスキャナから画像を取り込むには − GIMPでデジタルカメラのデータを取り込むに 「Linux Square」フォーラム
|
| SwingでJavaに強くなる JavaはサーブレットやJSPだけじゃない!Eclipseを使ってSwingを学ぶことで、Javaの基本、GUIアプリケーションの基本スキルを高めよう |
||
| 3/3 |
| INDEX | ||
| 絵心がなくても簡単に絵が描けるProcessing(最終回) やっと出た! 公式版のProcessingを動画で確認しよう |
||
| Page1 外部ライブラリを使って高度なプログラムを作ろう Processing 1.0リリース! 外部ライブラリを使用する──Minim(音声入出力)、Video(ライブカメラ、動画ファイル操作)、OpenGL、PDF、ハードウェアドライバ |
||
| Page2 外部ライブラリを使用する方法 Videoライブラリを使ってみよう |
||
| Page3 Minimライブラリも使ってみよう Processingのプログラムを公開する──プログラムをJavaアプレットとして書き出す、プログラムをデスクトップアプリとして書き出す、画像やPDFとして静止画を出力する |
||
絵心がなくても簡単に絵が描けるProcessing バックナンバー 連載インデックスへ»
- 第1回 Processingでスケッチプログラミングを始めてみよう
- 第2回 Processingの対話式スケッチプログラミングで遊ぼう
- 最終回 やっと出た! 公式版のProcessingを動画で確認
| 「デザインハック」コーナーへ |
TechTargetジャパン
- 次のモバイルアプリはどのフレームワークで作る? (2012/5/24)
スマホアプリの開発を容易にするJavaScriptのフレームワークが続々と増えている。それぞれの良さや仕組み、何がどこまでできるのかを徹底解剖する - 「LESS&専用エディター」でCSSをシンプルに書こう (2012/5/23)
「LESS」はCSS初心者に向けた、シンプルなライブラリだ。「LESS」で、変数などのプログラミングの基礎的な考え方もCSSで学ぼう - 学校が世界一のデジタル環境になったら (2012/5/18)
授業はアーカイブに蓄積され、家からも見られる。家族が授業テーマのアイデアを出す。そんな姿が実現されるかもしれない - 1000万ドル調達も夢じゃないクラウドファウンディング (2012/5/15)
クラウドファンディングは、寄付型でも投資型でもない「購入型」が主流。商品を“開発する前に販売”して開発費用を集める逆転のシステムだ
|
|
