Windows вывод звука на разные устройства

Как вывести звук на несколько устройств одновременно?

Как транслировать ЗВУК с одного ПК сразу на несколько подключенных устройств?

Если вы никогда об этом не задумывались, то, вероятно, может возникнуть вопрос: «А нафига?» — Приведу пару примеров:

— У вас и у подруги есть любимые наушники (часто беспроводные) и каждый предпочитает слушать с них. И вот вы решили дома посмотреть фильмец, но как минимум одного из вас не устраивает звук с колонок или телевизора. Или дело происходит ночью и выкручивать громкость до комфортного восприятия невозможно из-за соседей или уже давно спящих домашних. Ну или просто, кто-то желает слушать с телека, а кто-то в наушниках! Выход — подача звука на несколько источников!

— Ты стример, блогер, диктор, радиоведущий собственной радиостанции.. но ты или нищеброд или тебе не нужно париться с кучей оборудования, всякими микшерами, переходниками и т. д. Тебе просто нужно переключать звук туда-сюда, на два и более устройств.

Я не знаю чего там на юниксах, но винды (далее в основном буду подразумевать WIN10) только недавно научились без бубна переключаться с одного аудио-выхода на другой и даже (!) настраивать вывод звука отдельно, для каждого запущенного софта! (Вот уж спасибо, 20 лет ждали)

Если кто не знал — это делается так:

Причем винды запоминают эти настройки и в дальнейшем нет надобности лазить туда снова. Таким образом, на телеке кто-то может смотреть кинцо с одного браузера, а ты в наушниках можешь смотреть или слушать что-то другое с иного источника (плеер, игра, другой браузер и т. д.). Круто, удобно! А что если надо вывести звук одновременно на два устройства с одного источника-приложения? Вот этим и займемся далее…

Одновременный вывод звука на два и более устройств всё ещё, оказывается, проблема… и количество решений этой проблемы, судя по тому, что я смог нагуглить, можно посчитать на пальцах одной руки искалеченной черепашки-ниндзя.

Не буду вам рассказывать про «стереомикшер» спрятанный в аудиоустройствах — ибо это самое частое решение и оно ГОВНО и чаще всего не работает. И вообще, это не решение, а тупой костыль.

Вот вам то, что сработает наверняка:

Качаем и ставим » VoiceMeter Banana»

После установки следует перезагрузиться, т. к. вместе с прогой будет установлен драйвер виртуального микшера.

Поделим картинку выше на 3 части:

1 — Здесь отображены физические (hardware) устройства ввода звука (ну микрофоны как бы)

2 — Виртуальное устройство ввода (на него то мы должны переключиться, если хотим транслировать звук куда-то одновременно).

3 — Физические устройства вывода, на которые будет транслироваться звук!

Видите в блоке № 2 буковки «A» и «B»? — это указание того, куда будет транслирован звук. «A» — это физический вывод, а «B» — виртуальный (не будем рассматривать)

Также в каждом блоке есть отдельные настройки, например, «Fader Gain» — в нашем случае просто громкость. Остальные настройки интуитивно понятны и не требуют пояснения.

В блоке № 3 наверху у меня видятся кнопочки «A1» и «A2» — это те самые физические устройства на которые можно вывести звук! Как? — Просто тыкай на эти кнопки и выбираем устройство, сначала одно, затем второе!

А, ну да… Видишь эти «WDM», «KS» и «MME»? Если коротко — это API вывода звука. Можно игнорировать всё и выбирать только «WDM», но если хочешь засрать мозг подробностями, вот тебе инфа.

Всё. Отмечу лишь то, что если выберешь в «Voicemeeter» какое-то устройство для вывода, в других программах для воспроизведения звука следует уже выбирать именно виртуальное устройство!

Например, если и тут и там выбрать одно и то же устройство — звука не будет нигде.

Поэтому, если я хочу чтобы «Mozilla Firefox» выводил мне звук на «USB Audio Device», настраиваю это устройство на «А1», а Мозилле говорю, чтобы выводил мне звук на виртуальное устройство.

А чтобы звук не транслировался сразу на два лагеря, убираю устройство с «А2» и всё.

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

Данный вопрос мучил меня давно… Надеюсь, что не меня одного и тем самым я смог помочь себе подобным, а кому-то дать повод сказать: «А чё, так можно было?!» =)

А может кто-то знает ещё какие-нибудь способы?

13 ответов на пост

Время на прочтение6 мин

Количество просмотров18K

Продолжаем цикл статей-руководств, в которых рассматриваем, как с нуля реализовать простое и дешевое управляемое из облака и IoT-устройство с огромным потенциалом — без пайки и лишних сложностей. Возьмем чистый микрочип ESP8266, установим прошивку от DeviceHive, настроим и напишем простенькое веб-приложение для обращения к облачному серверу. Соберем и подключим к микрочипу простое устройство, которым можно будет управлять с помощью пары кликов в браузере. Перед вами — вторая часть цикла, в которой рассказывается, какой софт понадобится, как его запустить, как прошить ESP8266 и «подружить» с сервером.

Автор статьи демонстрирует то, о чем сегодня пойдет речь.

Первые статьи цикла:
• IoT за копейки, или Что может DeviceHive.
• IoT за копейки: практическое руководство. Часть 1-я, аппаратная.

Создаем сервер

Пойдем по самому простому пути и воспользуемся бесплатным плейграундом DeviceHive. Для этого нужно зайти сюда и зарегистрироваться. После этого авторизуемся и попадаем вот на такую страницу:

Поздравляем! Теперь у вас есть собственный плейграунд на DeviceHive. Для подключения к плейграунду извне используйте ссылку API Url. Именно этот адрес мы используем для обращений к серверу с ESP8266 и клиентского приложения. Для доступа в админскую панель (по адресу Admin Url) используйте указанный логин (Initial Login) и пароль (Initial Password).

Небольшое отступление: сервер можно развернуть локально или на облачном сервисе. Инструкции по установке ищите здесь. Можно сделать проще — запустить сервер при помощи Docker в одну строку:

docker run -d --name=devicehive -p 8080:80 -p 9001:9001 devicehive/devicehive-standalone

Полное описание ищите здесь.
DeviceHive — проект с полностью открытым кодом. А это значит, что сервер можно развернуть как дома, так и в облачном сервисе, например, Azure.

Прошивка

Настало время заняться прошивкой. Для этого нам нужно подключить ESP8266 к компьютеру, затем соединить переходник USB->UART, блок питания и модуль ESP8266.

Установите драйвер для вашего адаптера. Пользователям Linux тут проще, т. к. ядро уже включает большинство подобных драйверов. А вот пользователям Windows и OS X придется установить драйвер переходника самостоятельно.

Ссылки на официальные страницы загрузок для наиболее популярных чипов:

CP210x: www.silabs.com/products/mcu/pages/usbtouartbridgevcpdrivers.aspx
PL230x: www.prolific.com.tw/US/ShowProduct.aspx?pcid=41
FTDI: www.ftdichip.com/Drivers/VCP.htm
CH341: www.wch.cn/index.php?s=/page-search_content-keyword-CH341SER.html

Подключите переходник и убедитесь, что драйвер работает корректно. В Linux устройство должно появиться на файловой системе /dev/ttyUSB*, в OS X — /dev/tty.*, а в Windows — в диспетчере устройств должен появится дополнительный COM-порт. Если все хорошо, отключайте адаптер от компьютера.

Далее подключаем выход блока питания (3.3 Вольт) к ESP8266 двумя проводами. Чтобы модуль включился, при подаче питания надо разрешить ему работать, подав высокий уровень на вывод CH_PD. Необходимо сообщить модулю, что мы будем использовать внутреннюю память, поэтому при включении на GPIO15 должен быть низкий уровень. А чтобы войти в режим программирования, нам нужно подать на GPIO0 низкий уровень. Последнее потребуется нам только во время прошивки. Звучит жутковато, но на самом деле нам нужно лишь соединить тремя проводами CH_PD с плюсом источника питания, а GPIO0 и GPIO15 подключить к земле (минусу) источника питания. В последнюю очередь подключаем USB->UART-адаптер при помощи еще трех проводов: соединяем выводы минус источника(GND) c землей адаптера, вывод RX-адаптера подключаем к выводу TX-модуля ESP8266 и вывод TX-адаптера — к выводу RX-модуля. У нас получается итоговая схема подключения для трех разных типовых модулей. Если какой-то вывод отсутствует, он, скорее всего, уже подключен внутри модуля, фиолетовый провод — то самое временное подключение для входа в режим программирования.

Пример исполнения такого соединения:

Как видим, ничего паять не потребовалось, все соединения можно сделать с обычными разъемами.

Далее включаем источник питания, подключаем адаптер к компьютеру и скачиваем перекомпилированную прошивку DeviceHive для ESP8266. На момент публикации первая и последняя версия доступна здесь.

Новые прекомпилированные версии всегда можно найти на GitHub. Можете также взять весь репозиторий тут, скомпилировать прошивку самостоятельно и модифицировать ее по своему желанию. Весь код в репозитории — под лицензией MIT.
Распакуйте скачанный по ссылке выше архив в отдельную директорию, запустите esp-flasher-<имя вашей ОС> из консоли (пользователи Windows могут просто сделать двойной клик на esp-flasher-win.exe). В результате у вас должно появиться нечто подобное:

Кроме прилагаемой утилиты для прошивки ESP8266, можно воспользоваться любой другой, например, esptool.

Поздравляем — прошивка установлена и уже работает! Теперь отключите землю от вывода GPIO0 (он больше не понадобится), чтобы модуль снова не вошел в режим программирования. Для подключения к терминалу ESP8266 запустите esp-terminal-<имя вашей ОС> или любой другой терминал серийного порта с поддержкой escape-символов, например, PuTTY или GNU-утилитой ‘screen’. Параметры порта: скорость 115200, 8N1.

Обе прилагаемые утилиты умеют автоматически определять порт, к которому подключен ESP8266, т.е. никаких параметров при запуске задавать не требуется.
Запустив терминал, увидим приглашение:

По сути, это обычный unix like-терминал, поддерживающий автодополнение (клавиша «Tab») и историю (клавиши «вверх», «вниз»). Но на самом деле никаких файловых или операционных систем там нет. Список доступных команд доступен по ‘help’:

Нас интересует команда ‘configure’. Запустим ее, чтобы сконфигурировать девайс.

Утилита задаст пять простых вопросов:

  1. Имя вашей Wi-Fi-сети.
  2. Пароль вашей Wi-Fi-сети.
  3. Адрес API вашего сервера.
  4. DeviceID вашего устройства.
  5. DeviceKey вашего устройства.

В «DeviceHive server URL» вводим «API Url» от сервера. В «DeviceID» — какой-нибудь уникальный для сервера идентификатор устройства, именно с помощью этого имени мы будем различать устройства на сервере. «DeviceID» может быть обычным текстом. В частности, можно сгенерировать текстовый GUID по нажатии на Tab. И на последний запрос о DeviceKey вводим выбранный пароль. Его можно сгенерировать нажав клавишу Tab.

Тут стоит сделать небольшое отступление. ESP8266 использует идентификацию на сервере по DeviceID. Как только DeviceID и DeviceKey будут зарегистрированы на сервере, никакое другое устройство с таким же DeviceID, но другим паролем, подключиться не сможет. В дальнейшем DeviceKey-пароль может потребоваться, только если вы захотите заменить физическое устройство на другое с таким же DeviceID.

Вот так выглядит настройка:

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

USB->UART-переходник теперь можно отключить. Можно и оставить, если хотите иметь возможность посмотреть на отладочный вывод или состояние сети.

Теперь во вкладке «Устройства» в админской панели появится первое устройство.

Попробуем отправить устройству первую команду. Для этого в админской панели идем по следующему пути: «Devices»->«ESP»->«details»->«commands»->«enter new command». В поле «name» указываем «gpio/read» и нажимаем «push». Команда отправлена!

Ответ придет очень быстро, однако результаты команд в админской панели автоматически не обновляются. Для этого напротив команды есть кнопка «refresh». Щелкните на ней через секунду-другую после отправки и увидите вот такой экран:

Что же произошло? Нажав клавишу «push», вы отправили команду из админской панели (которая в данном случае является клиентом сервера) серверу команду. ESP8266 ее подобрал, исполнил и передал результат на сервер. Нажав кнопку «refresh», вы запросили у сервера результат выполнения команды:

{"0":"1","1":"0","2":"1","3":"0","4":"1","5":"1","12":"0","13":"0","14":"0","15":"0"}

Список доступных команд расположен в прилагаемом с прошивкой PDF-файле. Он также доступен здесь, но может не совпадать с версией вашей прошивки.

По доброй традиции, зажжем светодиод на плате. В большинстве модулей ESP8266 светодиод стоит на выводе типа TX, им мы и займемся. Загорается он при появлении низкого уровня на выводе чипа. В документе мы увидим, что GPIO1 есть не что иное, как такой же вывод TX, поэтому давайте установим на нем логический ноль. В таком случае светодиод без проблем загорится. После этого терминал на модуле перестанет работать до перезагрузки.

Теперь задаем команду "gpio/write"
, также указанную в документе. В поле «name» задаем "gpio/write"
а в поле «parameters» — {"1":"0"}
. После выполнения команды светодиод на плате должен загореться, как на фото ниже.

Cиний светодиод под кварцем, рядом ещё светится красный, который сигнализирует о наличии питания у платы.

Как видно из фотографии, к модулю подключены лишь два провода с питанием и две перемычки для включения модуля в правильном режиме. Чтобы выключить, отправьте команду с параметром {"1":"1"}
. Формат параметров команды — обыкновенный JSON. Поля, которые можно заполнять, а также их возможные значения описаны в PDF-файле.

Сегодня мы разобрались, как посылать простейшие команды из админской панели на устройство. В следующей статье расскажем, как написать простое клиентское приложение для сервера, позволяющее обращаться к устройству, и реализуем чуть более серьезное устройство (помните лазер из первой статьи?).

Stay tuned, будет интересно!

Автор: Николай Хабаров, Senior Embedded Developer.

Have you ever been creating a presentation or live streaming a gaming session and wished to output your audio to multiple devices simultaneously? This is particularly useful if you use distinct recording devices, such as Elgato. Here, we’ll simplify the process for you.

Modern motherboards, particularly those powered by Realtek audio, come with a built-in virtual input named ‘Stereo Mix’. This feature, when enabled, lets you hear the device’s audio and simultaneously playback through different devices. However, Stereo Mix might not always function as expected, failing to transmit sounds from your computer to the chosen device.

Fortunately, there is an easy fix to this issue by using a third-party program called VoiceMeeter. It’s a free, user-friendly application that lets you direct your computer’s audio output to multiple hardware devices concurrently. Like playing your computer sound to your Headset/Speaker and to other devices. In my case, I want to output sounds to my Headset and at the same time I want to output the sound to my video recording device (Elgato HD60s). VoiceMeeter handles this task effortlessly, enabling sound output on both your chosen devices, it will work to any Windows version (XP, Windows 7, 10) and including 11.

How to use Voice Meeter to Output Audio to Multiplay Playback Devices

Here’s a step-by-step guide to use VoiceMeeter for audio output to multiple playback devices:

Step 1: Visit the VoiceMeeter official website at https://voicemeeter.com/ to download VoiceMeeter. You can opt for either the Zip package or the Exe file.

Step 2: Install the program. You may need to restart your computer, but this is optional.

Step 3: Launch the VoiceMeeter application. In the ‘Hardware Out’ section located in the upper right corner, you’ll find A1 and A2 where the devices that will output your sound. For A1, select your primary or first output device (Eg. Headset/Speaker). Then on the A2, your second output device (Eg. Elgato HD60 or other device).

4. Finally, click on the Windows volume icon, situated in the bottom right corner of your screen. Select ‘VoiceMeeter Input (VB-Audio VoiceMeeter VAIO)’ as your playback option.

Now, your computer should successfully output audio to both your headset or speakers, as well as to your other chosen device.

Additionally, if you wish to direct your microphone’s output to one of these devices, simply navigate to the ‘Recording Devices’ option in your Windows sound settings. Right-click on your microphone, go to ‘Listen’, check ‘Listen to this device’ and select your desired playback device.

We hope this streamlined guide enhances your audio recording experiences and alleviates any related issues you might encounter.

Note: As of May 23, 2023, we have revised this article to accommodate the latest operating system and VoiceMeeter current version.

Вы сможете играть в наушниках, а музыку воспроизводить через колонки.

Если к вашему компьютеру подключено несколько аудиоустройств, то вы наверняка уже устали от того, что приходится постоянно между ними переключаться и менять их громкость. В Windows 10 это можно делать вручную с помощью иконки громкости в трее. Но в апрельском обновлении операционной системы появился способ автоматизировать процесс.

Щёлкните правой кнопкой мыши по упомянутой выше иконке звука и выберите «Открыть параметры звука». Пролистайте открывшееся окно до самого конца и нажмите на кнопку «Параметры устройств и громкости приложений».

Настройка звука Windows 10

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

Ниже отображаются открытые приложения. Уровень их звука — это определённый процент от установленной вами общей громкости, так что не бойтесь выкручивать ползунки на 100%.

Настройка звука: параметры устройств и громкости приложений

Но главное — вы можете выбрать не только громкость того или иного приложения или игры, но и программу, через которую она будет проигрывать звук. Если предпочитаете воевать в Fortnite в наушниках, то настройте систему так, чтобы игра всегда выводила звук через них. А «Яндекс.Музыка» пусть играет фоном через колонки, которые стоят в другом конце комнаты.

Когда закончите настройку, перезапустите приложения, чтобы всё заработало как надо.

Используя удаленный рабочий стол, нередко появляется потребность воспроизводить и передавать звук с удаленного рабочего стола на локальный компьютер, с которого вы производите подключение к столу. Многие пользователи сталкиваются с тем, что стандартные настройки системы Windows Server не включают данную опцию при установке системы и могут подумать, что прослушивать музыку или воспроизводить видео со звуком на удаленном рабочем столе невозможно. Но это не так.

Давайте же рассмотрим на примере системы Windows Server 2022, как включить звук на удаленном рабочем столе и полноценно работать с сервисом.
Для начала вам необходимо подключиться к удаленному рабочему столу, с которого мы будем передавать звук. Сразу после подключения мы можем увидеть, что иконка параметров звука отображается с красным крестиком, что означает отключенную службу звука.

Далее, вписав “services” в быстрый поиск приложений, найдите менеджер сервисов Windows.

Windows Server открыть менеджер сервисов для настройки звука через поиск

Либо используя комбинацию клавиш Win+R вызовите компонент Выполнить и впишите название менеджера «services.msc«. После чего нажмите OK.

Windows Server открыть менеджер сервисов для настройки звука через выполнить

В новом открытом окне списка всех сервисов системы Windows, найдите сервис Windows Audio и нажмите по нему два раза для перехода в редактирование его параметров.

Windows Server служба windows audio

Измените значение запуска сервиса на Automatic, запустите сервис и подтвердите изменения нажав на Apply.

Windows Server настройка параметров службы Windows Audio

Готово! Теперь на панеле задач мы можем видеть, что иконка звука поменяла свой вид и звук на удаленном рабочем столе теперь воспроизводится у нас в колонках.

В некоторых случаях бывает такая ситуация, что вы произвели описанные выше процедуры, но звук так и не появился у вас в колонках на локальном компьютере. Это может быть связано с тем, что у вас может быть не включена передача потока аудио в клиенте подключения к удаленному рабочему столу. Для проверки данного момента вам необходимо открыть параметры подключения в клиенте Подключение к удаленному рабочему столу и перейти в раздел Local Resources.

Windows Server настройка параметров воспроизведения звука

Теперь нажмите на параметры в графе Remote audio.
Убедитесь, что в настройках включено проигрывание звука на локальном компьютере.

Windows Server remote desktop connection включить звук

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

Мы надеемся, что данная статья поможет вам в решении вопроса передачи звука с удаленного рабочего стола и будет очень полезной!
Отдельно хотим заметить, что мы предоставляем наш удаленный рабочий стол со звуком и в случае возникновения вопросов — всегда рады помочь в их решении!
https://finerdp.com/ru/rdp-server

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Браузеры список лучших 2019 для windows 7
  • Windows 10 home x64 лицензия
  • Антивирус для безопасного режима windows 10
  • Как установить electronic workbench на windows 10
  • Office deployment tool windows 7