NAudio:为什么我的耳机中的音量使用 SampleChannel 降低

问题描述

我制作了一个带有滑块的用户控件来播放 MP3,因此当我使用两个或多个用户控件时,我可以播放 MP3 并使用滑块降低每个 MP3 的音量。使用 WaveOut() 上的音量控制本身有效,但随后所有用户控件的音量上下波动。所以我发现我应该在某个地方使用 SampleChannel 并在那里设置音量:BINGO。 但是现在,当我用耳机听,并且在电脑上将耳机音量设置为 100% 时,音量比不使用 SampleChannel 时要低得多......奇怪

    private void slider1_Scroll(object sender,ScrollEventArgs e)
    {
        if (_inputStream != null) _inputStream.Volume = sliderVolume.Value / 100f;
    }

    private Mp3FileReader _fileStream;
    private SampleChannel _inputStream;
    private WaveOut _player;

    private void button1_Click(object sender,EventArgs e)
    {
        _fileStream = new Mp3FileReader(_path);
        _inputStream = new SampleChannel(_fileStream) {Volume = sliderVolume.Value / 100f};

      
        _player = new WaveOut();
        _player.Init(_inputStream);
        _player.Play();

        //player.PlaybackStopped += _player_PlaybackStopped;
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)