Ejemplo n.º 1
0
        private void CreateEngineCapture()
        {
            VideoCapture1 = new VideoCaptureCore(VideoViewCapture as IVideoView);

            VideoCapture1.OnError += VideoCapture1_OnError;
            VideoCapture1.OnTimeshiftFileCreated += VideoCapture1_OnTimeshiftFileCreated;
        }
Ejemplo n.º 2
0
        private void CreateEngine()
        {
            VideoCapture1 = new VideoCaptureCore(VideoView1 as IVideoView);

            VideoCapture1.OnError        += VideoCapture1_OnError;
            VideoCapture1.OnFaceDetected += VideoCapture1_OnFaceDetected;
        }
Ejemplo n.º 3
0
        private void CreateEngine()
        {
            VideoCapture1 = new VideoCaptureCore(VideoView1 as IVideoView);

            VideoCapture1.OnError           += VideoCapture1_OnError;
            VideoCapture1.OnLicenseRequired += VideoCapture1_OnLicenseRequired;
        }
Ejemplo n.º 4
0
        private void CreateEngine()
        {
            VideoCapture1 = new VideoCaptureCore(VideoView1 as IVideoView);

            VideoCapture1.OnError += VideoCapture1_OnError;
            VideoCapture1.OnNetworkSourceDisconnect += VideoCapture1_OnNetworkSourceDisconnect;
        }
Ejemplo n.º 5
0
        private void Form1_Load(object sender, EventArgs e)
        {
            CreateEngine();

            videoCaptureHelper = new VideoCaptureCore();
            Text += $" (SDK v{videoCaptureHelper.SDK_Version()})";

            foreach (var device in videoCaptureHelper.Video_CaptureDevices())
            {
                cbCamera1.Items.Add(device.Name);
                cbCamera2.Items.Add(device.Name);
            }

            if (cbCamera1.Items.Count > 0)
            {
                cbCamera1.SelectedIndex = 0;
                cbCamera2.SelectedIndex = 0;
            }

            edFilename.Text = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "VisioForge", "multiple_video_streams.wmv");

            VideoCapture1.Video_Renderer_SetAuto();

            tmRecording.Elapsed += (senderx, args) =>
            {
                UpdateRecordingTime();
            };
        }
Ejemplo n.º 6
0
        private void DestroyEngine()
        {
            VideoCapture1.OnError -= VideoCapture1_OnError;

            VideoCapture1.Dispose();
            VideoCapture1 = null;
        }
Ejemplo n.º 7
0
        private void DestroyEngine2()
        {
            VideoCapture2.OnError -= VideoCapture2_OnError;

            VideoCapture2.Dispose();
            VideoCapture2 = null;
        }
        /// <summary>
        /// Video codec combobox event.
        /// </summary>
        /// <param name="sender">
        /// Sender object.
        /// </param>
        /// <param name="e">
        /// Event args.
        /// </param>
        private void cbVideoCodecs_SelectedIndexChanged(object sender, EventArgs e)
        {
            string name = cbVideoCodecs.Text;

            btVideoSettings.Enabled = VideoCaptureCore.Video_Codec_Has_Dialog(name, VFPropertyPage.Default) ||
                                      VideoCaptureCore.Audio_Codec_Has_Dialog(name, VFPropertyPage.VFWCompConfig);
        }
Ejemplo n.º 9
0
        private void Form1_Load(object sender, EventArgs e)
        {
            VideoCapture1 = new VideoCaptureCore(VideoCaptureView as IVideoView);
            VideoCapture1.OnVideoFrameBuffer += VideoCapture1_OnVideoFrameBuffer;
            VideoCapture1.OnError            += VideoCapture1_OnError;

            MediaPlayer1 = new MediaPlayerCore(MediaPlayerView as IVideoView);
            MediaPlayer1.OnVideoFrameBuffer += MediaPlayer1_OnVideoFrameBuffer;
            MediaPlayer1.OnError            += MediaPlayer1_OnError;

            Text += " (SDK v" + VideoCapture1.SDK_Version + ")";

            foreach (var device in VideoCapture1.Video_CaptureDevices)
            {
                cbVideoInputDevice.Items.Add(device.Name);
            }

            if (cbVideoInputDevice.Items.Count > 0)
            {
                cbVideoInputDevice.SelectedIndex = 0;
                cbVideoInputDevice_SelectedIndexChanged(null, null);
            }

            cbIPCameraType.SelectedIndex = 0;
        }
Ejemplo n.º 10
0
        private void cbCustomFilewriter_SelectedIndexChanged(object sender, EventArgs e)
        {
            string name = cbCustomFilewriter.Text;

            btCustomFilewriterSettings.Enabled = VideoCaptureCore.DirectShow_Filter_Has_Dialog(name, VFPropertyPage.Default) ||
                                                 VideoCaptureCore.DirectShow_Filter_Has_Dialog(name, VFPropertyPage.VFWCompConfig);
        }
Ejemplo n.º 11
0
        private void CreateEngine()
        {
            VideoCapture1 = new VideoCaptureCore(VideoView1 as IVideoView);

            VideoCapture1.OnError            += VideoCapture1_OnError;
            VideoCapture1.OnVideoFrameBitmap += VideoCapture1_OnVideoFrameBitmap;
        }
Ejemplo n.º 12
0
        protected virtual void Dispose(bool disposing)
        {
            if (!disposedValue)
            {
                if (disposing)
                {
                    // TODO: dispose managed state (managed objects)
                    VideoCapture1?.Dispose();
                    VideoCapture1 = null;

                    VideoCapture2?.Dispose();
                    VideoCapture2 = null;

                    VideoCapture3?.Dispose();
                    VideoCapture3 = null;

                    VideoCapture4?.Dispose();
                    VideoCapture4 = null;
                }

                // TODO: free unmanaged resources (unmanaged objects) and override finalizer
                // TODO: set large fields to null
                disposedValue = true;
            }
        }
Ejemplo n.º 13
0
        private void DestroyEngine()
        {
            VideoCapture1.OnError           -= VideoCapture1_OnError;
            VideoCapture1.OnLicenseRequired -= VideoCapture1_OnLicenseRequired;

            VideoCapture1.Dispose();
            VideoCapture1 = null;
        }
Ejemplo n.º 14
0
        private void DestroyEngineCapture()
        {
            VideoCapture1.OnError -= VideoCapture1_OnError;
            VideoCapture1.OnTimeshiftFileCreated -= VideoCapture1_OnTimeshiftFileCreated;

            VideoCapture1.Dispose();
            VideoCapture1 = null;
        }
Ejemplo n.º 15
0
        public Form1()
        {
            VideoCapture1          = new VideoCaptureCore();
            VideoCapture1.OnError += VideoCapture1_OnError;
            VideoCapture1.OnStop  += VideoCapture1_OnStop;

            InitializeComponent();
        }
Ejemplo n.º 16
0
        private void DestroyEngine()
        {
            VideoCapture1.OnError -= VideoCapture1_OnError;
            VideoCapture1.OnNetworkSourceDisconnect -= VideoCapture1_OnNetworkSourceDisconnect;

            VideoCapture1.Dispose();
            VideoCapture1 = null;
        }
        private void CreateEngine()
        {
            VideoCapture1          = new VideoCaptureCore(VideoView1 as IVideoView);
            VideoCapture1.OnError += VideoCapture1_OnError;

            VideoCapture2          = new VideoCaptureCore(VideoView2 as IVideoView);
            VideoCapture2.OnError += VideoCapture2_OnError;
        }
Ejemplo n.º 18
0
        public WMVSettingsDialog(VideoCaptureCore core)
        {
            InitializeComponent();

            _coreVideoCapture = core;

            LoadDefaults();
        }
        public void SetACMOutput(ref VFACMOutput acmOutput, VideoCaptureCore core)
        {
            if (pcmSettingsDialog == null)
            {
                pcmSettingsDialog = new PCMSettingsDialog(core.Audio_Codecs().ToArray());
            }

            pcmSettingsDialog.SaveSettings(ref acmOutput);
        }
        public void SetCustomOutput(ref VFCustomOutput customOutput, VideoCaptureCore core)
        {
            if (customFormatSettingsDialog == null)
            {
                customFormatSettingsDialog = new CustomFormatSettingsDialog(core.Video_Codecs().ToArray(), core.Audio_Codecs().ToArray(), core.DirectShow_Filters().ToArray());
            }

            customFormatSettingsDialog.SaveSettings(ref customOutput);
        }
        private void LoadDefaults()
        {
            cbMFProfile.SelectedIndex = 1;
            cbMFLevel.SelectedIndex = 12;
            cbMFRateControl.SelectedIndex = 3;

            _filtersAvailableInfo = VideoCaptureCore.GetFiltersAvailable();
            if (_filtersAvailableInfo.V11_NVENC_H264)
            {
                lbMFHWAvailableEncoders.Text += "NVENC ";
            }

            if (_filtersAvailableInfo.V11_AMD_H264)
            {
                lbMFHWAvailableEncoders.Text += "AMD ";
            }

            if (_filtersAvailableInfo.V11_QSV_H264)
            {
                lbMFHWAvailableEncoders.Text += "INTEL QSV";
            }

            cbMP4Mode.SelectedIndex = 0;

            cbAACOutput.SelectedIndex = 0;
            cbAACVersion.SelectedIndex = 0;
            cbAACObjectType.SelectedIndex = 1;
            cbAACBitrate.SelectedIndex = 16;

            switch (_mode)
            {
                case MFSettingsDialogMode.Default:
                case MFSettingsDialogMode.MP4v11:
                    {
                        Text = "MP4 v11 settings";

                        lbCustomMuxer.Visible = true;
                        cbCustomMuxer.Visible = true;

                        cbCustomMuxer.Items.AddRange(new object[] { "Default", "FFMPEG-based" });
                        cbCustomMuxer.SelectedIndex = 0;

                        break;
                    }
                case MFSettingsDialogMode.MKV:
                    Text = "MKV settings";
                    break;
                case MFSettingsDialogMode.MPEGTS:
                    Text = "MPEG-TS settings";
                    break;
                case MFSettingsDialogMode.MOV:
                    Text = "MOV settings";
                    break;
                default:
                    throw new ArgumentOutOfRangeException();
            }
        }
        public void SetWMAOutput(ref VFWMAOutput wmaOutput, VideoCaptureCore core)
        {
            if (wmvSettingsDialog == null)
            {
                wmvSettingsDialog = new WMVSettingsDialog(core);
            }

            wmvSettingsDialog.WMA = true;
            wmvSettingsDialog.SaveSettings(ref wmaOutput);
        }
Ejemplo n.º 23
0
        public Window1()
        {
            VideoCapture1                     = new VideoCaptureCore();
            VideoCapture1.OnError            += VideoCapture1_OnError;
            VideoCapture1.OnAudioFrameBuffer += VideoCapture1_OnAudioFrameBuffer;
            VideoCapture1.OnStop             += VideoCapture1_OnStop;

            InitializeComponent();

            System.Windows.Forms.Application.EnableVisualStyles();
        }
Ejemplo n.º 24
0
        private void Form1_Load(object sender, EventArgs e)
        {
            Text += " (SDK v" + VideoCaptureCore.SDK_Version + ", " + VideoCaptureCore.SDK_State + ")";

            edOutput.Text = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\VisioForge\\" + "output.mp3";

            VideoCapture1                     = new VideoCaptureCore();
            VideoCapture1.OnError            += VideoCapture1_OnError;
            VideoCapture1.OnLicenseRequired  += VideoCapture1_OnLicenseRequired;
            VideoCapture1.OnAudioFrameBuffer += VideoCapture1_OnAudioFrameBuffer;
        }
Ejemplo n.º 25
0
        private void Form1_Load(object sender, EventArgs e)
        {
            VideoCapture1 = new VideoCaptureCore();

            Text += $" (SDK v{VideoCapture1.SDK_Version()})";

            edOutput.Text = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "VisioForge", "output.mp3");


            VideoCapture1.OnError            += VideoCapture1_OnError;
            VideoCapture1.OnAudioFrameBuffer += VideoCapture1_OnAudioFrameBuffer;
        }
        private void btAudioSettings_Click(object sender, EventArgs e)
        {
            string name = cbAudioCodecs.Text;

            if (VideoCaptureCore.Audio_Codec_Has_Dialog(name, VFPropertyPage.Default))
            {
                VideoCaptureCore.Audio_Codec_Show_Dialog(IntPtr.Zero, name, VFPropertyPage.Default);
            }
            else if (VideoCaptureCore.Audio_Codec_Has_Dialog(name, VFPropertyPage.VFWCompConfig))
            {
                VideoCaptureCore.Audio_Codec_Show_Dialog(IntPtr.Zero, name, VFPropertyPage.VFWCompConfig);
            }
        }
Ejemplo n.º 27
0
        private void btCustomMuxerSettings_Click(object sender, EventArgs e)
        {
            string name = cbCustomMuxer.Text;

            if (VideoCaptureCore.DirectShow_Filter_Has_Dialog(name, VFPropertyPage.Default))
            {
                VideoCaptureCore.DirectShow_Filter_Show_Dialog(IntPtr.Zero, name, VFPropertyPage.Default);
            }
            else if (VideoCaptureCore.DirectShow_Filter_Has_Dialog(name, VFPropertyPage.VFWCompConfig))
            {
                VideoCaptureCore.DirectShow_Filter_Show_Dialog(IntPtr.Zero, name, VFPropertyPage.VFWCompConfig);
            }
        }
Ejemplo n.º 28
0
        private void CreateEngine()
        {
            VideoCapture1          = new VideoCaptureCore(VideoView1 as IVideoView);
            VideoCapture1.OnError += VideoCapture_OnError;

            VideoCapture2          = new VideoCaptureCore(VideoView2 as IVideoView);
            VideoCapture2.OnError += VideoCapture_OnError;

            VideoCapture3          = new VideoCaptureCore(VideoView3 as IVideoView);
            VideoCapture3.OnError += VideoCapture_OnError;

            VideoCapture4          = new VideoCaptureCore(VideoView4 as IVideoView);
            VideoCapture4.OnError += VideoCapture_OnError;
        }
        public void SetMKVOutput(ref VFMKVv1Output mkvOutput, VideoCaptureCore core)
        {
            if (aviSettingsDialog == null)
            {
                aviSettingsDialog = new AVISettingsDialog(core.Video_Codecs().ToArray(), core.Audio_Codecs().ToArray());
            }

            aviSettingsDialog.SaveSettings(ref mkvOutput);

            if (mkvOutput.Audio_UseMP3Encoder)
            {
                var mp3Output = new VFMP3Output();
                SetMP3Output(ref mp3Output);
                mkvOutput.MP3 = mp3Output;
            }
        }
Ejemplo n.º 30
0
        protected virtual void Dispose(bool disposing)
        {
            if (!disposedValue)
            {
                if (disposing)
                {
                    // TODO: dispose managed state (managed objects)
                    if (onvifControl != null)
                    {
                        onvifControl.Dispose();
                        onvifControl = null;
                    }

                    mpegTSSettingsDialog?.Dispose();
                    mpegTSSettingsDialog = null;

                    mp4SettingsDialog?.Dispose();
                    mp4SettingsDialog = null;

                    mp4HWSettingsDialog?.Dispose();
                    mp4HWSettingsDialog = null;

                    movSettingsDialog?.Dispose();
                    movSettingsDialog = null;

                    gifSettingsDialog?.Dispose();
                    gifSettingsDialog = null;

                    aviSettingsDialog?.Dispose();
                    aviSettingsDialog = null;

                    wmvSettingsDialog?.Dispose();
                    wmvSettingsDialog = null;

                    tmRecording?.Dispose();
                    tmRecording = null;

                    VideoCapture1?.Dispose();
                    VideoCapture1 = null;
                }

                // TODO: free unmanaged resources (unmanaged objects) and override finalizer
                // TODO: set large fields to null
                disposedValue = true;
            }
        }