public void WriteSample(Sample sample) { if (closed) { return; } frameNumber++; sample.SampleTime = frameNumber * frameDuration; sample.SampleDuration = frameDuration; if (isFirstFrame) { logger.Verb("MfWriter::isFirstFrame"); //sinkWriter.BeginWriting(); sinkWriter.SendStreamTick(videoStreamIndex, sample.SampleTime); sample.Set(SampleAttributeKeys.Discontinuity, true); isFirstFrame = false; } sinkWriter.WriteSample(videoStreamIndex, sample); //sinkWriter.Flush(VideoStreamIndex); }