Ejemplo n.º 1
0
        /// <summary>
        ///   Stops recording.
        /// </summary>
        ///
        public void StopRecording()
        {
            if (!IsRecording)
            {
                return;
            }

            lock (syncObj)
            {
                IsRecording = false;

                if (videoWriter != null)
                {
                    videoWriter.Close();
                    videoWriter.Dispose();
                    videoWriter = null;
                }

                if (audioMixer != null)
                {
                    audioMixer.Stop();
                    foreach (IAudioSource source in audioMixer.Sources)
                    {
                        source.Stop();
                        source.Dispose();
                    }

                    audioMixer.Dispose();
                    audioMixer = null;
                }

                HasRecorded = true;
            }
        }