private SOBSAudioSource _translateAudioSource(SLOBSAudioSource input, int index = 0) { SOBSAudioSource source = new SOBSAudioSource(); source.SourceId = input.SourceId; source.ResourceId = input.ResourceId; source.Index = index; source.Name = input.Name; source.Muted = input.Muted; source.Hidden = input.MixerHidden; source.Volume = input.Fader.Db; return(source); }
private void _audioSources() { List <SOBSAudioSource> audios = new List <SOBSAudioSource>(); //special sources first var keys = new string[] { "desktop-1", "desktop-2", "mic-1", "mic-2", "mic-3" }; for (int s = 0; s < keys.Length; s++) { if (SpecialSources.ContainsKey(keys[s])) { var value = SpecialSources[keys[s]]; if (!String.IsNullOrEmpty(value)) { try { var source = Sources.Find(x => x.Name == value); SOBSAudioSource audio = new SOBSAudioSource(); audio.Name = source.Name; audio.Id = source.Id; audio.Index = source.Index; audio.Volume = source.Volume; audio.Muted = source.Muted; audio.Hidden = false; audios.Add(audio); } catch (ArgumentNullException e) { } } } } for (int s = 0; s < Sources.Count; s++) { if (Sources[s].Audio) { if (!audios.Exists(x => x.Name == Sources[s].Name)) { SOBSAudioSource audio = new SOBSAudioSource(); audio.Name = Sources[s].Name; audio.Id = Sources[s].Id; audio.Index = Sources[s].Index; audio.Volume = Sources[s].Volume; audio.Muted = Sources[s].Muted; audio.Hidden = false; audios.Add(audio); } } } AudioSources = audios; }