Вывод звука на динамик и гарнитуру одновременно?

Я использую NAudio для вывода аудиофайлов на динамик и гарнитуру на ноутбуке с Windows 10. Я создал два WaveOut и назначил соответствующий номер устройства. Но я не могу здесь слышать звук из динамика, когда гарнитура подключена. Может кто-нибудь дать мне знать, как решить эту проблему? Вот мой код (он отлично работает на гарнитуре или динамике по отдельности, но я хочу слышать звук от них обоих одновременно):

        var input1 = new Mp3FileReader(PATH + "left.mp3");
        var input2 = new Mp3FileReader(PATH + "right.mp3");
        var waveProvider = new MultiplexingWaveProvider(new IWaveProvider[] { input1, input2 }, 2);

        var input3 = new Mp3FileReader(PATH + "left.mp3");

        int channel = ((Mp3FileReader)input1).Mp3WaveFormat.Channels;
        Debug.WriteLine(channel);

        waveProvider.ConnectInputToOutput(0, 0);
        waveProvider.ConnectInputToOutput(3, 1);

        WaveOut wave = new WaveOut();
        wave.DeviceNumber = 1;
        wave.Init(waveProvider);

        WaveOut wave1 = new WaveOut();
        wave1.DeviceNumber = 0;
        wave1.Init(input3);

        wave.Play();
        wave1.Play();

1 ответ

Решение

Я думаю, проблема в том, что у вас нет двух звуковых карт, у вас есть одна звуковая карта, которая переключается между воспроизведением звука через динамики и наушники. Если вы купили гарнитуру USB, то у вас будет две звуковые карты, и вы сможете проигрывать разные звуки через каждую из них в отдельности.

Другие вопросы по тегам