Esempio n. 1
0
        private void btnCamStop_Click(object sender, RoutedEventArgs e)
        {
            vidDevice.Stop();
            imgStream.Source = null;
            statusList.Insert(0, DateTime.Now.ToString("hh:mm:ss") + " - Disconnected from " + currentCapDev + ".");

            if (grdStream.Children.Contains(lblFPS))
            {
                timerFPS.Tick -= get_FrameRate;
                timerFPS.Stop();
                statusList.Insert(0, DateTime.Now.ToString("hh:mm:ss") + " - 'Frames per Second' hidden.");

                grdStream.Children.Remove(lblFPS);
            }
        }
Esempio n. 2
0
        private void Root_Loaded(object sender, RoutedEventArgs e)
        {
            if (Dispatcher != null)
            {
                Dispatcher.BeginInvoke(DispatcherPriority.Loaded, (SendOrPostCallback) delegate
                {
                    vidDevice = new CapDevice(null);

                    if (cbDevices.Items.Count > 0)
                    {
                        cbDevices.ItemsSource = null;
                    }

                    bool isDevices = vidDevice.Monikercheck();                 //performs initial device check

                    List <ComboMonikers> listDev = new List <ComboMonikers>(); //initiates the list of items

                    if (!isDevices)
                    {
                        MessageBox.Show("No video capture device detected, please connect one and press refresh.");
                        statusList.Insert(0, DateTime.Now.ToString("hh:mm:ss") + " - No video devices found!.");
                    }
                    else if (isDevices)
                    {
                        devList = vidDevice.DeviceList();

                        foreach (FilterInfo device in devList)
                        {
                            listDev.Add(new ComboMonikers(device.Name, device.MonikerString));
                        }
                    }

                    cbDevices.DisplayMemberPath = "_Name";
                    cbDevices.SelectedValuePath = "_Moniker";
                    cbDevices.ItemsSource       = listDev;
                    cbDevices.SelectedIndex     = 0;

                    statusList.Insert(0, DateTime.Now.ToString("hh:mm:ss") + " - Populated available video devices.");

                    vidDevice.Stop();
                }, null);

                lbStatus.ItemsSource          = statusList;
                statusList.CollectionChanged += statusList_Sourceupdated;
            }
        }