如何静音或只选择一个音频通道?

Posted

技术标签:

【中文标题】如何静音或只选择一个音频通道?【英文标题】:How to mute or select only one audio channel? 【发布时间】:2017-06-03 11:49:04 【问题描述】:

我知道如何在 C# 中静音或仅选择一个音频通道。我只能在左/右声道中播放音频文件。可能吗?我该怎么办?

【问题讨论】:

请提供更多细节和代码。到目前为止,您如何播放音频文件? 我正在使用 System.Media SoundPlayer 【参考方案1】:

您可能需要使用 System.Windows.Media.MediaPlayer 的 Balance 属性。

MSDN MediaPlayer Balance Property

将左声道设置为 -1,右声道设置为 1。

    MediaPlayer mediaPlayer = new MediaPlayer();

    private void Button_Click(object sender, RoutedEventArgs e)
    
        mediaPlayer.Open(new Uri(@"C:\temp\Kalimba.mp3"));

        if (DateTime.Now.Second % 2 == 0)
        
            mediaPlayer.Balance = 1;
            mediaPlayer.Play();
        
        else
        
            mediaPlayer.Balance = -1;
            mediaPlayer.Play();
        
    

【讨论】:

你能给我一个示例代码吗?我需要创建一个音频播放器并选择频道(取决于时间),然后播放音频。谢谢【参考方案2】:

System.Media.SoundPlayer 缺乏调整平衡的可能性。你应该尝试一些不同的东西。 System.Media.SoundPlayer 只是控制 .wav 文件中声音的播放

【讨论】:

以上是关于如何静音或只选择一个音频通道?的主要内容,如果未能解决你的问题,请参考以下文章

iOS:静音右声道音量

使用 NAudio 创建静音 WAVE 流

chrome 扩展:如何将某个选项卡中的所有音频静音

如何检测音频是不是无法静音?

如何使来自 UIWebView 的音频静音

如何使用 libsndfile 在音频文件中打印静音?