oFメモ3

◇ScriptingBridgeを使って、openFrameworksでiTunesの情報取得/制御◇

ターミナルで
sdef /Applications/iTunes.app | sdp -fh –basename iTunes
カレントディレクトリにiTunes.hというヘッダーファイルができあがる。

iTunes.hとScriptingBridge.frameworkをプロジェクトに加える。
/System/Library/Frameworks/ScriptingBridge.framework

ofApp.cppとmain.cppのファイルタイプをデフォルトからobjective-c++ sourceに変更。

スクリーンショット 2015-02-23 1.19.09

ofApp.cpp

#include "ofApp.h"
#include "iTunes.h"

iTunesApplication *iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];

//--------------------------------------------------------------
void ofApp::setup(){
}
//--------------------------------------------------------------
void ofApp::update(){
}
//--------------------------------------------------------------
void ofApp::draw(){
    double position = iTunes.playerPosition;
    ofSetHexColor(0x000000);
    ofDrawBitmapString(ofToString(position), 10,10);
}
//--------------------------------------------------------------
void ofApp::keyPressed(int key){
    if(key == 'r'){
        iTunes.playpause;
    }
    if(key == 's'){
        iTunes.stop;
    }
}

以上でoFからiTunesの情報取得/操作ができる筈です。

参考…
http://qiita.com/Saqoosha/items/32803149f6e150dde54b
http://d.hatena.ne.jp/kacchi0516/20100128/1264609814
http://qiita.com/kuuki_yomenaio/items/6edc7cb16a81d2bc9ef5

//—————————————————–
先週のライブ


ofxFingerDetectorで指検出

指が物体(風船)の方向を向いたときにofxAudioUnitで音源を再生、という感じです。
この日はバグがあり、途中でプログラムが止まってしまいました…。修正できたらコードをアップしようと思います…。


02/23 01:41

最近

遅くなりましたが小倉メガヘルツでの12AA(introduction to Audiovisual Art)ご来場ありがとうございました。
何も特別な事は書いていませんが当日のスライド↓です。


参考にアドオン組み合わせ例(参考になるかどうか怪しいですが…)
ofxOpenCV+ofxUgen…光の位置でシンセサイズ
ofxKinect+ofxUgen…kinectで手の位置等でシンセサイズ
ofxKinect+ofxAudioUnit…kinectで音源の再生スピードとローパスフィルターを操作

//————————————————————–
最近はまた風船をやる機会がありました。ofxBox2dで衝突判定し、その位置でofxUgenでシンセサイズ等やっております。

projection mapping on balloon from NEXT-SYSTEM on Vimeo.

projection mapping on balloon 2nd ver. from NEXT-SYSTEM on Vimeo.


05/31 14:23

LeapMotion_ugen_vbo_video

LeapMotion+openFrameworks
手の傾き、奥行きでカメラのVBO描画の位置操作。
指の本数、位置で音の種類が変わります。

1本指…高めのサイン波
2…  低めのサイン波
3…  ホワイトノイズ
4…  のこぎり波
5…  1〜5をまとめて発音
6…  プチプチした音
7…  ハーモニックOsc
8…  パルス波
9…  無音(手の位置でバックの色が変わります)
10… 6〜9をまとめて発音

githubにコードあげています。
https://github.com/morooka/Leap_Ugen_vbo_video
User header search pathsにLeap Motion SDKのなかのLeap.hのパスを追加して、Leap Motion softwareをインストールしたmacOS10.8,10.9で動くはずです。

アドオンはofxUGen、vbo描画はここを参照しました。

vboについて
setup()で頂点情報の位置と色をセットアップしなくてもupdate()の中でsetVertexDataやっても高速に動くみたいです。
そしてGL_DYNAMIC_DRAWよりGL_DYNAMIC_DRAW_ARBの方がより高速な気がしましたがどうなんでしょう…。

よくLeap Motionは手の形を描画しているものが多いのですが、手は目の前に見えてるので省略しました(より高速化のためでもあるという言い訳…)。

//—
美野島の天ぷらの江上食品オススメです。

//–
2013/12/14 追記:
Leap Motion + openFrameworksの手順はココを参照しました。
fatal errorで止まる場合があります。その場合Build Phases–>>Copy Files–>>DestinationをFrameworksまたはExecutablesに変更してみて下さい。
正しい対処方法かは分かりませんがとりあえず動く筈です…。


12/14 21:29