Beispiel #1
0
        private async Task SetupDeviceListAsync()
        {
            await _meetingConfigView.Dispatcher.BeginInvoke(new Action(() =>
            {
                ClearDeviceList();
                CachedCameras.ForEach((camera) =>
                {
                    MainCameras.Add(camera);
                    SecondaryCameras.Add(camera);
                });

                CachedMicrophones.ForEach((microphone) =>
                {
                    MainMicrophones.Add(microphone);
                    SecondaryMicrophones.Add(microphone);
                });

                CachedSpeakers.ForEach((speaker) =>
                {
                    Speakers.Add(speaker);
                });
            }));
        }
Beispiel #2
0
        private async Task CacheDeviceListAsync()
        {
            await Task.Run(() =>
            {
                var cameraList = _sdkService.GetDeviceList(1);
                CachedCameras.Clear();
                foreach (var camera in cameraList)
                {
                    if (!string.IsNullOrEmpty(camera.m_szDevName))
                    {
                        CachedCameras.Add(camera.m_szDevName);
                    }
                }
                CachedCameras.Add(NonExclusiveItem);

                var micList = _sdkService.GetDeviceList(3);
                CachedMicrophones.Clear();
                foreach (var mic in micList)
                {
                    if (!string.IsNullOrEmpty(mic.m_szDevName))
                    {
                        CachedMicrophones.Add(mic.m_szDevName);
                    }
                }
                CachedMicrophones.Add(NonExclusiveItem);

                var speakerList = _sdkService.GetDeviceList(4);
                CachedSpeakers.Clear();
                foreach (var speaer in speakerList)
                {
                    if (!string.IsNullOrEmpty(speaer.m_szDevName))
                    {
                        CachedSpeakers.Add(speaer.m_szDevName);
                    }
                }
            });
        }