骨格追跡コードを実行して、追加した次のコード行をテストしようとすると、エラーが発生してクラッシュします。
void sensor_AllFramesReady(object sender, AllFramesReadyEventArgs e)
{
if (closing)
{
return;
}
//Get a skeleton
Skeleton first = GetFirstSkeleton(e);
if (first == null)
{
return;
}
using (SkeletonFrame skeletonFrame = e.OpenSkeletonFrame())
{
//if (skeletonFrame == null)
//{
// return;
//}
this.recordStream = new MemoryStream(100);
KinectRecorder Recorder = new KinectRecorder(KinectRecordOptions.Skeletons, recordStream);
if (skeletonFrame != null)
{
this.Recorder.Record(skeletonFrame);
}
//StartRecord
// Skeleton[] skeletonData = this.Recorder.Record(skeletonFrame);
}
// some more stuff
}
Kinectツールボックスで利用可能なRecord関数を呼び出しています。
エラーは次のとおりです。System.NullReferenceExceptionが処理されませんでした.......メッセージ=オブジェクト参照がオブジェクトのインスタンスに設定されていません。..... Source = SkeletalTracking ..
更新:初期化をレコーダーの呼び出しと同じ関数に移動した場合。