public void ProcessNewSkeletonData(Skeleton skeleton, double deltaTimeMilliseconds)
        {
            if (!IsRecording)
            return;

              DeltaTimeInSeconds = deltaTimeMilliseconds / 1000.000;
              TotalTime += DeltaTimeInSeconds;

              SkeletonCapture capture = new SkeletonCapture() { DelayInMilliSeconds = deltaTimeMilliseconds, Skeleton = skeleton };
              try
              {
            MemoryStream memTmp = new MemoryStream();
            formatter.Serialize(memTmp, capture);
            byte[] buffer = memTmp.GetBuffer();

            writer.Write(buffer.Length);
            writer.Write(buffer, 0, (int)buffer.Length);
            FramesRecorded++;
              }
              catch (SerializationException e)
              {
            Console.WriteLine("Failed to serialize. Reason: " + e.Message);
            throw;
              }
        }