Ejemplo n.º 1
0
        public void RefreshAudioSources()
        {
            AvailableAudioSources.Clear();

            AvailableAudioSources.Add(NoSoundSource);

            foreach (var dev in WaveInDevice.Enumerate())
            {
                AvailableAudioSources.Add(dev);
            }

            foreach (var dev in LoopbackProvider.EnumerateDevices())
            {
                AvailableAudioSources.Add(dev);
            }

            SelectedAudioSource = NoSoundSource;
        }
Ejemplo n.º 2
0
        public IAudioProvider GetAudioSource(int FrameRate, out WaveFormat Wf)
        {
            Wf = new WaveFormat(44100, 16, Stereo ? 2 : 1);

            IAudioEncoder audioEncoder = SelectedBitRate != 0 && IsLamePresent && Encode ? new Mp3EncoderLame(Wf.Channels, Wf.SampleRate, SelectedBitRate) : null;

            if (SelectedAudioSource is WaveInDevice)
            {
                return(new WaveInProvider(SelectedAudioSource as WaveInDevice, Wf));
            }

            if (!(SelectedAudioSource is MMDevice))
            {
                return(null);
            }

            IAudioProvider audioSource = new LoopbackProvider((MMDevice)SelectedAudioSource);

            Wf = audioSource.WaveFormat;

            return(audioEncoder == null ? audioSource : new EncodedAudioProvider(audioSource, audioEncoder));
        }
Ejemplo n.º 3
0
        public IAudioProvider GetAudioSource(int FrameRate, out WaveFormat Wf)
        {
            Wf = new WaveFormat(44100, 16, Stereo ? 2 : 1);

            IAudioEncoder audioEncoder = SelectedBitRate != 0 && IsLamePresent && Encode ? new Mp3EncoderLame(Wf.Channels, Wf.SampleRate, SelectedBitRate) : null;

            if (SelectedAudioSource is WaveInDevice)
                return new WaveInProvider(SelectedAudioSource as WaveInDevice, Wf, FrameRate);

            if (!(SelectedAudioSource is MMDevice))
                return null;

            IAudioProvider audioSource = new LoopbackProvider((MMDevice)SelectedAudioSource);

            Wf = audioSource.WaveFormat;

            return audioEncoder == null ? audioSource : new EncodedAudioProvider(audioSource, audioEncoder);
        }