Captura.RecorderParams.CreateAviWriter C# (CSharp) Method

CreateAviWriter() public method

public CreateAviWriter ( ) : AviWriter
return AviWriter
        public AviWriter CreateAviWriter()
        {
            return new AviWriter(FileName)
            {
                FramesPerSecond = FramesPerSecond,
                EmitIndex1 = true,
            };
        }
        public IAviVideoStream CreateVideoStream(AviWriter writer)

Usage Example

        void RecordScreen()
        {
            var buffer            = new byte[Params.Width * Params.Height * 4];
            var timeTillNextFrame = TimeSpan.Zero;

            Control.CheckForIllegalCrossThreadCalls = false;

            bool creatingNewFile = false;

            while (!closed)
            {
                creatingNewFile = false;
                var startDate = DateTime.Now;
                using (var writer = Params.CreateAviWriter())
                {
                    var frameInterval = TimeSpan.FromSeconds(1 / (double)writer.FramesPerSecond);
                    var videoStream   = Params.CreateVideoStream(writer);
                    videoStream.Name = "Captura";
                    var timedWriter = new TimedFrameWriter(videoStream, writer, Params);
                    while (!stopThread.WaitOne(timeTillNextFrame) && !creatingNewFile)
                    {
                        var  timestamp = DateTime.Now;
                        bool captured  = Screenshot(buffer);
                        if (captured)
                        {
                            timedWriter.WriteFrame(true, buffer, 0, buffer.Length);
                        }
                        //videoStream.WriteFrame(true, buffer, 0, buffer.Length);
                        timeTillNextFrame = timestamp + frameInterval - DateTime.Now;
                        if (timeTillNextFrame < TimeSpan.Zero)
                        {
                            timeTillNextFrame = TimeSpan.Zero;
                        }
                        if (DateTime.Now.Subtract(startDate).Minutes == 1)
                        {
                            creatingNewFile = true;
                        }
                    }
                    writer.Close();
                    if (!creatingNewFile)
                    {
                        closed = true;
                    }
                    if (Params.YTUpload)
                    {
                        UploadToYouTube(Params.FileName);
                        Params.FileName = DateTime.Now.ToString("out-yyyy-MM-dd_HH-mm-ss.avi");
                    }
                }
            }
        }
All Usage Examples Of Captura.RecorderParams::CreateAviWriter