protected override void OnRefresh() { for (int i = 0; i < WaveIn.DeviceCount; ++i) { AvailableRecordingSources.Add(new NAudioItem(i, WaveIn.GetCapabilities(i).ProductName)); } }
public override IAudioProvider GetAudioProvider(int FrameRate) { return(new MixedAudioProvider(AvailableRecordingSources .Concat(AvailableLoopbackSources) .Cast <BassItem>(), FrameRate, !ServiceProvider.Get <Settings>().Audio.PlaybackRecordingRealTime)); }
public override IAudioProvider[] GetMultipleAudioProviders() { return(AvailableRecordingSources.Where(M => M.Active) .Concat(AvailableLoopbackSources.Where(M => M.Active)) .Cast <BassItem>() .Select(M => new BassAudioProvider(M)) .ToArray <IAudioProvider>()); }
public override IAudioProvider GetMixedAudioProvider() { return(new MixedAudioProvider(AvailableRecordingSources .Concat(AvailableLoopbackSources) .Cast <BassItem>(), !_settings.PlaybackRecordingRealTime )); }
public void Refresh() { AvailableRecordingSources.Clear(); AvailableLoopbackSources.Clear(); AvailableRecordingSources.Add(NoSoundItem.Instance); AvailableLoopbackSources.Add(NoSoundItem.Instance); OnRefresh(); SelectedRecordingSource = SelectedLoopbackSource = NoSoundItem.Instance; }
protected override void OnRefresh() { for (int i = 0; Bass.RecordGetDeviceInfo(i, out var info); ++i) { if (info.IsLoopback) { AvailableLoopbackSources.Add(new BassItem(i, info.Name)); } else { AvailableRecordingSources.Add(new BassItem(i, info.Name)); } } }
public override IAudioProvider[] GetMultipleAudioProviders() { var rec = AvailableRecordingSources.Where(audioItem => audioItem.Active) .Cast <NAudioItem>() .Select(nAudioItem => new WasapiCaptureProvider(nAudioItem.Device)) .Cast <IAudioProvider>(); var loop = AvailableLoopbackSources.Where(audioItem => audioItem.Active) .Cast <NAudioItem>() .Select(nAudioItem => new WasapiLoopbackCaptureProvider(nAudioItem.Device)) .Cast <IAudioProvider>(); return(rec.Concat(loop).ToArray()); }
public override IAudioProvider GetMixedAudioProvider() { var rec = AvailableRecordingSources.Where(audioItem => audioItem.Active) .Cast <NAudioItem>() .Select(nAudioItem => new WasapiCaptureProvider(nAudioItem.Device)) .Cast <NAudioProvider>(); var loop = AvailableLoopbackSources.Where(audioItem => audioItem.Active) .Cast <NAudioItem>() .Select(nAudioItem => new WasapiLoopbackCaptureProvider(nAudioItem.Device)) .Cast <NAudioProvider>(); return(new MixedAudioProvider(rec.Concat(loop))); }
protected override void OnRefresh() { var infos = new ArrayList(); for (int i = 0; Bass.RecordGetDeviceInfo(i, out var info); ++i) { var bassItem = new BassItem(i, info.Name); if (info.IsLoopback) { AvailableLoopbackSources.Add(bassItem); if ("Speakers".Equals(info.Type.ToString())) { this.SelectedLoopbackSource = bassItem; } } else { AvailableRecordingSources.Add(bassItem); this.SelectedRecordingSource = bassItem; } } }
public void RefreshAudioSources() { AvailableRecordingSources.Clear(); AvailableLoopbackSources.Clear(); AvailableRecordingSources.Add(new KeyValuePair <int?, string>(null, "[No Sound]")); AvailableLoopbackSources.Add(new KeyValuePair <int?, string>(null, "[No Sound]")); DeviceInfo info; for (int i = 0; Bass.RecordGetDeviceInfo(i, out info); ++i) { if (info.IsLoopback) { AvailableLoopbackSources.Add(new KeyValuePair <int?, string>(i, info.Name)); } else { AvailableRecordingSources.Add(new KeyValuePair <int?, string>(i, info.Name)); } } SelectedRecordingSource = SelectedLoopbackSource = null; }
public override IAudioProvider GetAudioProvider() { return(new MixedAudioProvider(AvailableRecordingSources.Cast <BassItem>(), AvailableLoopbackSources.Cast <BassItem>())); }