public void ReloadProperties()
        {
            properties = reloadDelegate();

            if (properties == null)
            {
                return;
            }

            deferUpdate = properties.Flags.HasFlag(ObsPropertiesFlags.DeferUpdate);

            RefreshProperties();
        }
Exemple #2
0
        public void EnumerateAndSetWebcams()
        {
            Store.Data.Webcam.Webcams.Clear();

            InitializeWebcamObsSource(null);

            ObsProperties webcamProperties = Store.Data.Webcam.Source.GetProperties();

            ObsProperty[] webcamPropertyList = webcamProperties.GetPropertyList();

            for (int i = 0; i < webcamPropertyList.Length; i++)
            {
                if (webcamPropertyList[i].Name.Equals("video_device_id"))
                {
                    string[] propertyNames  = webcamPropertyList[i].GetListItemNames();
                    object[] propertyValues = webcamPropertyList[i].GetListItemValues();

                    for (int j = 0; j < propertyNames.Length; j++)
                    {
                        Store.Data.Webcam.Webcams.Add(new WebcamDevice(propertyNames[j], (string)propertyValues[j]));
                    }
                }
            }
        }