oFでsyphonでVDMXする回


###概要
---
注)編集中の内容です...スミマセン

脇田研輪読サブゼミ
oFと別環境と連携させて、いろいろ遊ぶための基礎編です。
今回は、VDMXというVJなどで使われる環境にoFから映像を入力してみましょう。そのためにsyphonというものを導入してみようと思います。

###手順
***
1. 必要なものをすべてダウンロード
2. アドオンを使ってoF側にsyphonを導入
3. 何か適当にアニメーションを書いてみる
4. syphonにoFからアニメーションを送信してみる
5. simple clientで受信してみる
6. VDMXでアニメーションを受信してみる
7. 発展させてみる


###用意するもの
***
* openframewroks -v0.8.4
* ofxSyphon [download](https://github.com/astellato/ofxSyphon)
* Syphon　[download](http://syphon.v002.info/)
        * 以下2つをインスコしてきてください
	* simple server
	* simple client 	
* VDMX [download](https://vidvox.net/)

###アドオンを使ってoF側にsyphonを導入
***
1. ofxSyphonをプロジェクトに追加して、新規プロジェクトを生成
2. xcodeのプロジェクトファイル->general->Linked Framewroks and Librariesへと行き、coreVideo.frameworkを追加 (これやらないと、エラー出るので注意)
![framework.png](https://qiita-image-store.s3.amazonaws.com/0/42656/8ee22c5c-82f2-b5ae-95ef-96cb2721e78f.png)


3. 同じく、frameworkにsyphon.frameworkを追加する。
``addons/ofxSyphon/libs/Syphon/lib/osx/Syphon.framework``
4. xcodeの左パレット->addons->ofxSyhonにSyphonNameboundClient.mを追加する。(projectGeneratorでプロジェクトを生成した場合必要)
![Screen Shot 2015-05-20 at 16.22.18.png](https://qiita-image-store.s3.amazonaws.com/0/42656/3096f5f2-edf3-0534-d248-e4d18bbba66b.png)


``addons/ofxSyphon/libs/Syphon/src/SyphonNameboundClient.m``
この階層に飛んでSyohonNameboundClient.mをadd
![Screen Shot 2015-05-20 at 16.22.52.png](https://qiita-image-store.s3.amazonaws.com/0/42656/76673b3b-522f-7bcb-7618-e510c3144659.png)




###何か適当にアニメーションを書いてみる
---
* ofApp.h

```
#pragma once

#include "ofMain.h"

class ofApp : public ofBaseApp{

	public:
		void setup();
		void update();
		void draw();

    int r,add;
    
};

```

* ofApp.cpp

```
#include "ofApp.h"

//--------------------------------------------------------------
void ofApp::setup(){
    r=10;
    add=10;
}

//--------------------------------------------------------------
void ofApp::update(){
   if(r==200)add=-10;
    if(r==10)add=10;
    r=r+add; 
}

//--------------------------------------------------------------
void ofApp::draw(){
    //丸が大きくなったり、小さくなったりするだけのアニメーション
    
    ofSetColor(200, 0, 0);
    ofCircle(ofGetWidth()/2, ofGetHeight()/2, r);
}

```


###syphonにoFからアニメーションを送信してみる
***
* ofApp.h

```
#pragma once

#include "ofMain.h"
#include "ofxSyphon.h"

class ofApp : public ofBaseApp{

	public:
		void setup();
		void update();
		void draw();
    ofxSyphonServer output;
    int r,add;
    
};

```

* ofApp.cpp

```
#include "ofApp.h"

//--------------------------------------------------------------
void ofApp::setup(){
    output.setName("Main");
    r=10;
    add=10;
}

//--------------------------------------------------------------
void ofApp::update(){
   if(r==200)add=-10;
    if(r==10)add=10;
    r=r+add; 
}

//--------------------------------------------------------------
void ofApp::draw(){
    //丸が大きくなったり、小さくなったりするだけのアニメーション
    
    ofSetColor(200, 0, 0);
    ofCircle(ofGetWidth()/2, ofGetHeight()/2, r);
//ここで送信している
    output.publishScreen();
}
    
```


###simple clientで受信してみる
***
右がoFのアプリケーションで、左がsyphon simple clientです。下のように同じものが出てたらとりあえず大丈夫！
![Screen Shot 2015-05-20 at 14.17.48.png](https://qiita-image-store.s3.amazonaws.com/0/42656/e86067a9-ed35-6929-190f-c826eb5b698d.png)

###VDMXでアニメーションを受信してみる
***
1. VDMXを起動->Templates->simple mixerを選択
![Screen Shot 2015-05-20 at 14.22.44.png](https://qiita-image-store.s3.amazonaws.com/0/42656/8bfa0454-8d6d-da6e-cc4f-53c8520a8125.png)

2. oFのアプリをビルド

3. 右クリックでAdd clips from Built-in Sources->syphon->oFアプリを選択
![Screen Shot 2015-05-20 at 14.29.12.png](https://qiita-image-store.s3.amazonaws.com/0/42656/b4c6ddd1-6f4b-cb46-271f-8b2c8500bfe4.png)


###発展させてみる
***
まだ考えてないです、、ごめんなさい。