19
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

oFでsyphonでVDMXする回

Last updated at Posted at 2015-05-20

###概要

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

脇田研輪読サブゼミ
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
  • Syphon download
    * 以下2つをインスコしてきてください
    • simple server
    • simple client
  • VDMX download

###アドオンを使ってoF側にsyphonを導入


  1. ofxSyphonをプロジェクトに追加して、新規プロジェクトを生成

  2. xcodeのプロジェクトファイル->general->Linked Framewroks and Librariesへと行き、coreVideo.frameworkを追加 (これやらないと、エラー出るので注意)
    framework.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

addons/ofxSyphon/libs/Syphon/src/SyphonNameboundClient.m
この階層に飛んでSyohonNameboundClient.mをadd
Screen Shot 2015-05-20 at 16.22.52.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

###VDMXでアニメーションを受信してみる


  1. VDMXを起動->Templates->simple mixerを選択
    Screen Shot 2015-05-20 at 14.22.44.png

  2. oFのアプリをビルド

  3. 右クリックでAdd clips from Built-in Sources->syphon->oFアプリを選択
    Screen Shot 2015-05-20 at 14.29.12.png

###発展させてみる


まだ考えてないです、、ごめんなさい。

19
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?