tl; dr, как надежно передавать потоковое аудио по запросу между двумя компьютерами linux по сети по требованию?


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

Поскольку обе машины работают под управлением недавней Fedora Linux, я подумал, что это будет легко, но оказалось, что это не так просто. Сначала я попытался использовать потоковую передачу PulseAudio. Это на самом деле работало, но поскольку мультимедийный ноутбук старше и имеет только 54-битное соединение Wi-Fi с сетью, звук часто имел глюки. Также я столкнулся с ошибкой в импульсном аудио, что настройка локальной многоадресной трансляции PULSE_SINK фактически делает локальную сеть (здесь) и (здесь).

Поэтому я подумал, что мне нужен более профессиональный протокол для потоковой передачи, чем создает необработанный импульсный аудиосигнал. Я вижу, что VLC предлагается для этой цели. Но я хотел бы иметь возможность потоковой передачи на удаленный сервер только тогда, когда я хочу. Это означает, что когда я устанавливаю $ PULSE_SINK в какое-то другое значение, удаленный сервер должен воспроизводиться, в противном случае звук должен воспроизводиться локально, как обычно.

Мне было интересно, если бы кто-нибудь сделал это - создайте слушателя vlc, а затем создайте локальный приемник PulseAudio, который отправляет туда аудио, если он используется. В противном случае не отправляйте ничего. Я вижу, как создать слушателя VLC, но я не разбираюсь в PulseAudio и, прежде чем потерять слишком много связи с этим, я надеялся, что кто-нибудь подскажет мне, как это сделать, или, по крайней мере, предположит, что что-то работает, поэтому я не настраиваю то, что не будет работать тихо, как ожидалось.

Я открыт для решений, не относящихся к vlc, до тех пор, пока они не затопляют сеть, а звук воспроизводится без сбоев.

Спасибо!

1 ответ1

0

Мой личный метод потоковой передачи аудио по требованию - это использование MPD, который имеет встроенный http-сервер и предназначен для использования в качестве аудио-приложения без музыкальной базы данных, управляемого удивительным количеством клиентского программного обеспечения. Этот метод особенно полезен, если вы также хотите получить доступ с хоста, не расположенного в вашей локальной сети.

Использование удаленных интерфейсов VLC HTTP или Telnet также возможно, если по какой-то причине вы действительно настроены на использование VLC, хотя для клиентского программного обеспечения немного больше накладных расходов и меньше разнообразия, что означает меньшую гибкость. Мой собственный опыт ограничен приложением для Android "VLC Direct Pro", но общие инструкции по использованию http-сервера VLC можно найти здесь . Общая суть заключается в следующем:

  1. Чтобы активировать веб-интерфейс, откройте меню «Инструменты» в VLC и выберите «Настройки». Выберите опцию «Все» в разделе «Показать настройки» для просмотра расширенных настроек VLC. Прокрутите список дополнительных настроек и выберите «Основные интерфейсы» под заголовком «Интерфейс». Установите флажок Веб, чтобы включить интерфейс HTTP. Сохраните ваши настройки и перезапустите VLC. Каждый раз, когда вы запускаете VLC, веб-сервер будет запускаться в фоновом режиме.

  2. Укажите ваш веб-браузер на http://localhost:8080/ чтобы получить доступ к веб-интерфейсу VLC.

  3. Чтобы включить подключение с других компьютеров, добавьте их в файл /usr/share/vlc/lua/http/.hosts . Если вы пересекаете шлюз NAT, откройте необходимые порты.

  4. «Управление доступом было упрощено в VLC 2.1.0. Вы можете ограничить доступ к веб-интерфейсу с помощью простого пароля, который можно установить в разделе «Инструменты» → «Настройки» (все) → «Интерфейсы» → «Основные интерфейсы» → «Lua» → «Lua HTTP → пароль». (См. Документацию VLC здесь). Имейте в виду, что это мера http, а не https, мера аутентификации, так что стоит ограничиться локальной /VPN, если безопасность вообще вызывает беспокойство.

В дополнение к этим опциям, функция управления http, безусловно, является довольно популярной опцией, которую можно найти в других медиапроигрывателях, таких как Winamp или XBMC (просто у меня в голове ... список действительно довольно длинный), так что вы можете себе позволить выбрать тот вариант, который вам больше подходит.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .