2012-04-15 3 views
4

Мое устройство имеет 2 внешних громкоговорителя. Как я могу их раздельно протестировать?Как воспроизводить звук на разных громкоговорителях?

1 функция, которая будет воспроизводить звук только слева и один, который будет воспроизводить звук только на правой.

Googled без успеха. Возможно, я использую неправильные условия.

Возможно, установите весы с помощью API WIN32?

ответ

4

Если вы говорите о двух громкоговорителях из стереосистемы, то ваше решение прост.

Создайте звук, который воспроизводится только на левом канале, а затем воспроизведите его. Затем создайте звук, который воспроизводится только на правом канале, воспроизведите его.

Вы можете использовать Audacity для создания звуков.

Как .NET API, то, вы можете попробовать свою удачу с http://windowsmedianet.sourceforge.net/

Что вам может понадобиться http://msdn.microsoft.com/en-us/library/ms712636(VS.85).aspx, поскольку у них есть их аккуратно завернуты.

EDIT:

Кстати, вы можете использовать waveOutOpen, чтобы открыть то же самое устройство в два раза, и один раз играть ЛЕВЫЙ звуковой файл, и независимо друг от друга играют ПРАВЫЙ звуковой файл на два отдельных устройства waveOutOpen ручки, что и указывают на одно физическое устройство. Звук выйдет точно так же, как ожидалось, в динамике вашего выбора в зависимости от типа звука.

Кроме того, если вы хотите создать звуки программно, имеющими только левый канал означает, что каждый ваш другой образец PCM в аудиофайле должен быть 0.

Я бы не рекомендовал использовать баланс, потому что смеситель API трудно чтобы понять, и вы установите API для BOTH случайно воспроизведенных образцов.

Еще больше информации:

Вы можете использовать http://msdn.microsoft.com/en-us/library/system.media.soundplayer(VS.80).aspx играть WAV файлы. Если у вас нет WAV-файлов, но вы хотите что-то сыграть с MemoryStream, найдите способ вставить какую-либо форму заголовка WAV в начале ваших данных выборки аудио. Вы не будете первым, кто попробует это :)

1

Я не думаю, что .NET сам по себе имеет достаточный контроль над тем, что вы просите. Возможно, вам придется использовать стороннюю библиотеку. Проверьте NAudio, он определенно сможет делать то, что вы хотите.

Смежные вопросы