oF:Mac搭載カメラとKinectカメラを併用したい

MacbookProのディスプレイ上部にはカメラが付いています。さらにこのMacbookProにKinectを接続します。
Kinectにも普通のカラーカメラが付いています。
今、openFrameworksで、例えば画面左半分にMBPのカメラ映像、画面右半分にKinectのカメラ映像を表示させようとしたのですが両方表示に成功したりしなかったりで困っております。

検証1:ofxKinect + ofVideoGrabber

examples/addonに元々入っているサンプルプロジェクト「kinectSample」はofxKinect型のオブジェクトとしてKinectカメラを使用している。このプロジェクトにofVideoGrabberオブジェクト(Macのカメラ)を追加してみる。
結果1:kinectカメラ、Macカメラを同時表示できた。

検証2:ofxOpneNi + ofVideoGrabber

ofxOpenNiアドオンに付属のサンプルプロジェクト「openNiSample007」はofxOpenNI型のオブジェクトとしてKinectカメラを使用している。このプロジェクトにofVideoGrabberオブジェクト(Macのカメラ)を追加してみる。
結果2:以下のような25個のエラーが出てビルドに失敗

追記:ofxOpenNiのサンプルを修正していくのではなく、自分で最初から作っていくことで実現できた(動いた)。

検証3:ofxCV + ofVideoGrabber

ofxCVアドオン(ofxOpenCVではなくofxCVの方)に付属のサンプルプロジェクト「example-face」はofVideoGrabber型のオブジェクトとしてMac本体のカメラを使用している。これにもう一つofVideoGrabberオブジェクトを追加して、そちらにKinect側のカメラ映像を割り当てようとしてみる。
結果3:両方ともMac側カメラの映像が表示される。

結果3への対応A:接続されている機器IDの確認と設定

Kinectを2個目のカメラ端末として設定できるよう、まずはlistDevices()を使って、パソコンに接続されている端末のID番号一覧を取得する。その取得方法は

//.hのpublic定義オブジェクトの中に以下を定義
ofVideoGrabber grabber;
//.cppのsetUp()内に記述
vector devices = grabber.listDevices();
for(vector::iterator it = devices.begin(); it != devices.end(); ++it) {
    //printf(it->id);
    cout << "DeviceID:" << it->id << endl;
}

※oF0.8.0からは、listDevices()は接続端末ID情報をvectorで返すようになったらしく、上記のような記述をした。

これでXcodeの出力ウィンドウに出力されるが、表示されるのはDeviceID:0のみ。つまりMac本体のカメラしかID取得できていない。
そこで、kinectカメラはおそらく2番目のカメラだろうと当てずっぽうのエラー覚悟で、

.cppのsetUp()内に追記
kinectCamera.setDeviceID(1); //.h内でofVideoGrabber kinectCamera;と定義してある

してビルドすると真っ黒。この結果から、どうもKinectのカメラはofVideoGrabberオブジェクトとしては利用できないと思われる。

ここまでの感想

実験1なら同時表示できる。実験3はKinectカメラをofVideoGrabberとして取得するのは諦めて、実験1のようにofKinectとして画像取得すればその後いろいろ処理はできるのでひとまずよしとしよう。
ただ、今回僕がやりたいのは※実験2にあたる、kinect映像+OpneNI処理に加えて、横にMac本体カメラ画像を並べて表示させたいわけで、このエラーはC++初心者の僕には今のところ検討がつかない。≒エラー文言の意味が理解できていない。
※ちがった!僕がやりたいのはKinect+OpenNI処理と、ofVideoGrabber+ofxCV処理を併用する案件。まぁ現状実験2でつまづいているのでそれ以前だけども。

策としては、単一oFアプリ上で2つのカメラ映像を並べるのは諦めて、2個のアプリを作成して、片方でMac本体カメラ、もう片方でKinectカメラを表示させる。ofxSyphonを使ってどちらかの映像をもう片方に送る&場合によってはofxOscも使ってイベントを送信する、みたいな実装で、目的は果たせそうにも思えるけども、でももっとスマートに解決したいなぁ。

参考記事:
can’t detect Kinect camera in oF
※KinectのカメラはofVideoGrabber型ではないよと書かれている。

Using a Kinect and Webcam at the same time
※Kinectと別のUSBポートにUSBカメラ付けてみたら的な議論がされてるけど、僕のやりたいこととは違う。

最新の追記:
上に書いたような、やりたいことは全部できた。