コード例 #1
0
        public void InternalContolTest()
        {
            var fileName = GetFileName(nameof(InternalContolTest));
            var recorder = new RtspRecorder(rtsp, fileName);


            ThreadPool.QueueUserWorkItem(_ => recorder.Start());
            Thread.Sleep(5000);
            recorder.Stop();
            Assert.True(File.Exists(fileName));
        }
コード例 #2
0
        public void ExternalControlTest()
        {
            const string key      = "cameraTest";
            var          fileName = GetFileName(nameof(ExternalControlTest));

            var recorder = new RtspRecorder(rtsp, fileName,
                                            addr => MemoryCache.Default[key]?.ToString() == addr,
                                            (s, e) =>
            {
                //OnException
                (s as RtspRecorder).Stop();
                MemoryCache.Default[key] = string.Empty;
            }
                                            );

            MemoryCache.Default[key] = rtsp;
            ThreadPool.QueueUserWorkItem(state => recorder.Start());

            Thread.Sleep(5000);
            MemoryCache.Default[key] = string.Empty;
            Assert.True(File.Exists(fileName));
        }