Передача звука системы на другой компьютер

Передача звука системы на другой компьютер

У меня нет динамиков на моем ПК (Cent-OS 5.5), но есть стереодинамик, подключенный к компьютеру рядом с моим компьютером (Cent-OS 5.5). Оба компьютера объединены в сеть. Есть ли способ передать звуки моей системы на этот компьютерный динамик?

решение1

PulseAudioможно использовать по сети.

Я обычно предлагаю включить автоматическое обнаружение с помощью Avahi(если только вы не испытываете смертельного страха перед многоадресной IP-рассылкой)– преимущества в том, что вы сможете использовать как локальныеисетевые аудиоустройства, вместо того, чтобы жестко кодировать один конкретный сервер. Хотя это и не относится к вопросу @Bijoy, это может относиться ко многим другим читателям.

Примечаниеотносительно путей к файлам:

  • Более новые версии PulseAudio ≥ v2.99.1 помещают конфигурацию пользователя ~/.config/pulse/default.paи файл cookie аутентификации в ~/.config/pulse/cookie.

  • Более старые версии ≤ v2.98 используют ~/.pulse/default.paи ~/.pulse-cookieсоответственно. Если у вас такая старая версия, имейте это в виду при чтении инструкций.

Метод 1, автоматическое обнаружение с помощью Avahiс любым количеством серверов, включая локальные устройства:

  1. На обоих компьютерах запустите демон Avahi.

  2. На компьютере B разрешите входящий сетевой доступ:

    • Через paprefsСетевой серверВключить сетевой доступ к локальным устройствам

    • Или,отредактировав ~/.config/pulse/default.pa:

      .include /etc/pulse/default.pa
      
      load-module module-native-protocol-tcp
      load-module module-zeroconf-publish
      

      Не забудьте перезапустить pulseaudioего, чтобы перечитать конфигурацию (или загрузить оба модуля вручную с помощью pactl load-module).

  3. На компьютере A включите обнаружение:

    • Через paprefsДоступ к сетиСделайте устройства PulseAudio доступными для обнаружения

    • Или,отредактировав ~/.config/pulse/default.pa:

      .include /etc/pulse/default.pa
      
      load-module module-zeroconf-discover
      

      Не забудьте перезапустить pulseaudioего, чтобы перечитать конфигурацию (или загрузить модуль вручную с помощью pactl load-module).

  4. На компьютере A теперь вы должны увидеть звуковые устройства B в списке рядом с локальными устройствами (например, pavucontrolв настройках звука GNOME).

Способ 2, ручная настройка с одним сервером:

  1. На компьютере B разрешите входящий сетевой доступ:

    • Через paprefsСетевой серверВключить сетевой доступ к локальным устройствам

    • Или,отредактировав ~/.config/pulse/default.pa:

      .include /etc/pulse/default.pa
      
      load-module module-native-protocol-tcp
      

      Не забудьте перезапустить pulseaudioего, чтобы перечитать конфигурацию (или загрузить модуль вручную с помощью pactl load-module).

  2. Скопируйте ~/.config/pulse/cookieс компьютера B на компьютер A.

  3. На компьютере A укажите PulseAudio использовать удаленный сервер:

    • Отредактируйте ~/.profileили эквивалентный скрипт запуска, чтобы добавить:

      export PULSE_SERVER="tcp:computer-b-address"
      
      test "$DISPLAY" && pax11publish -e || true
      
    • Выйдите из системы, войдите снова и убедитесь, чтопо крайней мере один из printenv PULSE_SERVERи pax11publishпоказывает адрес компьютера B.

  4. На компьютере A теперь вы должны увидеть в списке звуковые устройства B (например, pavucontrolв настройках звука GNOME).


Примечаниео программах, которые изначально не поддерживают PulseAudio: Те, которые не поддерживают, можно настроить на использование слоя совместимости PulseAudio-ALSA через /etc/asound.conf. Следующий пример взят изпульсаудио-alsaпакет в Arch Linux:

pcm.!default {
  type pulse
  fallback "sysdefault"
  hint {
    show on
    description "Default ALSA Output (currently PulseAudio Sound Server)"
  }
}
ctl.!default {
  type pulse
  fallback "sysdefault"
}

решение2

Ну... первое, что пришло мне в голову, это версия VNC, которая позволяет воспроизводить звук. Не каждая установка позволяет. Поэтому я запустилСтраница сравнения VNC.

Просматривая его, можно найти ряд установок на основе VNC, которые не только работают с Linux, но и поддерживают звук. Так что вот, это один из способов. Вы устанавливаете сервер на свой компьютер, устанавливаете клиент на компьютер с динамиками, включаете многопользовательские сеансы, чтобы не отключаться, и можете передавать звук на этот компьютер.

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

решение3

Я думаю, лучше настроить samba-ресурсы для всей вашей музыкальной коллекции, а затем получить к ней доступ с помощью вашего плеера на второй машине. Я уверен, что это будет работать лучше, чем VNC (я считаю, что звук VNC не стерео)

Связанный контент