Example #1
0
        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);
        }