예제 #1
0
        public virtual void Close()
        {
            BitmapSourceProvider.Dispose();

            if (Mpeg4Recorder != null)
            {
                Mpeg4Recorder.Dispose();
            }

            Detector.MotionDetection -= Detector_MotionDetection;
            Detector.Dispose();

            VadFilter.VoiceDetected -= VadFilterVoiceDetected;
            VadFilter.Dispose();

            if (SoundTimer != null)
            {
                SoundTimer.Elapsed -= ElapsedVoice;
                SoundTimer.Stop();
                SoundTimer.Dispose();
            }

            if (MotionTimer != null)
            {
                MotionTimer.Elapsed -= ElapsedVoice;
                MotionTimer.Stop();
                MotionTimer.Dispose();
            }
        }
예제 #2
0
        void Mpeg4RecorderMultiplexFinished(object sender, VoIPEventArgs <bool> e)
        {
            Mpeg4Recorder.Dispose();
            Mpeg4Recorder.MultiplexFinished -= Mpeg4RecorderMultiplexFinished;

            OnGetFilePath(new VoIPEventArgs <string>(MotionFilePath));

            Log.Write("The captured video has been saved");
        }
예제 #3
0
        void Mpeg4RecorderMultiplexFinished(object sender, VoIPEventArgs <bool> e)
        {
            Mpeg4Recorder.Dispose();
            _microphone.Dispose();

            OnGetFilePath(new VoIPEventArgs <string>(MotionFilePath));
            MotionFilePath = String.Empty;

            Mpeg4Recorder.MultiplexFinished -= Mpeg4RecorderMultiplexFinished;
        }
예제 #4
0
        public override void StopCaptionVideo()
        {
            if (Mpeg4Recorder == null)
            {
                return;
            }

            Connector.Disconnect(_camera.AudioChannel, Mpeg4Recorder.AudioRecorder);
            Connector.Disconnect(_camera.VideoChannel, Mpeg4Recorder.VideoRecorder);

            Mpeg4Recorder.Multiplex();

            Log.Motion("Video capture has been stopped");
        }
예제 #5
0
        public override void StopCaptionVideo()
        {
            if (_camera == null || Mpeg4Recorder == null)
            {
                return;
            }

            Connector.Disconnect(_microphone, Mpeg4Recorder.AudioRecorder);
            Connector.Disconnect(_camera, Mpeg4Recorder.VideoRecorder);

            Mpeg4Recorder.MultiplexFinished += Mpeg4RecorderMultiplexFinished;
            Mpeg4Recorder.Multiplex();

            Log.Motion("Video capture has been stopped");
        }