Использование Pi для потоковой передачи всех аудиовыходов с моего компьютера на стерео

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

В принципе, я хочу, чтобы моя малина Pi подключалась к моей стереосистеме, а затем воспроизводила любые аудиовыходы с моего компьютера через Wi-Fi в PI.

Есть ли способ сделать это легко, без необходимости использовать специальных игроков? То есть Нужно ли вообще ПК распознавать Pi как «динамиков»? »

Мне хотелось бы услышать каждый звук на моем ПК на стерео, т.е. Игры, музыка, системные звуки, уведомления, видеоролики YouTube и т. Д.

Большое спасибо!

35 голосов | спросил Jerome 16 62013vEurope/Moscow11bEurope/MoscowSat, 16 Nov 2013 00:15:47 +0400 2013, 00:15:47

7 ответов


19

Если вы используете Linux на своем ПК, то это отлично выполнимо, если вы устанавливаете и правильно настраиваете PulseAudio на обоих: ваш Raspberry Pi и ваш Linux-ПК.

Если ваш компьютер работает под управлением Windows ... Пропустить до конца сообщения (которое я только что обновил).

Другой вариант - использовать PulseAudio в качестве приемника /клиента AirPlay, но, насколько я знаю, это невозможно.

Но если вы используете Linux, читайте дальше:

Примечание №1: PulseAudio через Wi-Fi будет работать безупречно на некоторых маршрутизаторах, но не сработает на других.

Примечание # 2: Ниже приведены инструкции из нескольких разговоров, которые несколько пользователей Raspberry Pi (включая меня) имели на эта тема .

1) Установите PulseAudio на свою малину Pi

sudo apt-get install pulseaudio pulseaudio-module-zeroconf avahi-daemon

2) Убедитесь, что PulseAudio запускается автоматически:

sudo nano /etc/default/pulseaudio

Найдите запись PULSEAUDIO_SYSTEM_START и измените ее на 1 , чтобы она выглядела как PULSEAUDIO_SYSTEM_START = 1

3) Настройте PulseAudio для работы по сети:

sudo nano /etc/pulse/system.pa

Добавьте следующие строки:

модуль загрузочного модуля-native-protocol-tcp auth-ip-acl = 127.0.0.1; 192.168.1.0/24

модуль load-module-zeroconf-publish

4) Перезагрузите свою малину Pi:

sudo reboot

5) Теперь на вашем Linux-ПК установите paprefs . Если ваш дистрибутив Linux основан на Debian (например, Ubuntu, Mint и т. Д.), Вы можете использовать эту команду:

sudo apt-get install paprefs

6) Запустите paprefs и в разделе Доступ к сети включить Сделать доступными сетевые звуковые устройства PulseAudio, доступные локально

7) В разделе Сетевой сервер включить Включить сетевой доступ к локальным звуковым устройствам и отметить обе опции (Это, вероятно, не обязательно, если вы также не хотите использовать свой Linux-сервер в качестве сервера /приемника)

8) В разделе Multicas /RTP включить обе опции

9) Проверьте доступные устройства вывода (используйте ваше приложение для аудио /микшера Linux distro). Ваша малина Pi будет (должна) появляться в списке; выберите его, и все, что воспроизводится на вашем Linux-боксе, будет перенаправлено на Малиновский Пи.

Если ваш Raspberry Pi по-прежнему недоступен, попробуйте перезагрузить свой Linux-ПК.


UPDATE: Отправка всего звука из Windows в Малиновый Pi

Вам все равно нужно следовать предыдущим инструкциям по установке и настройке PulseAudio на вашем малиновом Pi.

Теперь это то, что вам нужно сделать для Windows:

1) Загрузите последнюю версию LineInCode

2) Разархивируйте загруженный файл

2) Загрузите PuTTY Plink и поместите plink .exe в той же папке, где вы извлекли LineInCode

3) Откройте «Блокнот» и вставьте следующий код:

linco.exe -B 16 -C 2 -R 44100 | plink 192.168.1.104 -l pi -pw raspberry "cat - | pacat --server 127.0.0.1 --playback"

Конечно, измените IP-адрес ( 192.168.1.104 ), имя пользователя ( pi ) и пароль ( малина ), чтобы соответствовать вашим установка.

4) Сохраните файл как audio2rpi.bat в той же папке, где вы извлекли LineInCode

Теперь, всякий раз, когда вы хотите перевести аудиофайлы Windows на ваш Raspberry Pi, просто дважды щелкните файл audio2rpi.bat.


Кредит на эти инструкции:

ответил xfx 16 62013vEurope/Moscow11bEurope/MoscowSat, 16 Nov 2013 09:05:53 +0400 2013, 09:05:53
4

Я написал небольшую запись в блоге о том, как я работал с PulseAudio на ПК и Raspbmc на малиновой Pi - используя потоки DLNA /UPnP. Он находится здесь: http://westmarch.sjsoft.com/2014 /04 /потокового аудио-линукс-на-raspbmc /. Надеюсь, это поможет. В XBMC-буферах есть небольшое отставание, поэтому это вряд ли будет отлично подходит для игр или чего-то еще, но оно отлично работает для музыки.

Это довольно длинный набор инструкций - отсюда ссылка здесь, но вот резюме варианта, который работал для меня, используя DLNA /UPnP:

  • apt-get install rygel
  • Откройте настройки PulseAudio и под Сетевой сервер Сделайте локальные звуковые устройства доступными как медиасервер DLNA /UPnP и Создайте отдельное аудиоустройство для потоковой передачи DLNA /UPnP
  • Измените конфигурацию Rygel в /etc/rygel.conf или $HOME/.config/rygel.conf и настройте его для публикации с помощью GstLaunch (см. ниже).
  • Перейдите в Диспетчер файлов XBMC, найдите новый источник, выберите UPnP Devices , и вы увидите Gst Launch в качестве опции
  • Затем вы должны иметь возможность сказать XBMC воспроизвести звук из этого потока.

Вот настройка для Rygel для использования GstLaunch:

[GstLaunch]
enabled=true
launch-items=mypulseaudiosink
mypulseaudiosink-title=Audio on @[email protected]
mypulseaudiosink-mime=audio/flac
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! flacenc
ответил Matt Hampton 12 PMpSat, 12 Apr 2014 18:00:17 +040000Saturday 2014, 18:00:17
4

Требуется сделать это сам из Windows7 -> RaspberryPi (OpenElec) и наткнулся на ваш вопрос. После довольно некоторых исследований я все еще не нашел удовлетворительного решения для OpenElec, но имел достаточно информации, чтобы придумать тот, который очень прост и действительно работает с высоким качеством и только около ~ 1 с. Задержка!

Вам нужно:

  1. VLC Media Player (я использовал v2.1.3 Rincewind на своем Win7 x64)
  2. Звуковая карта, которая предоставляет записывающее устройство Stereo Mix (I посчастливилось иметь один на борту)
  3. A Raspberry Pi (я использую OpenElec 4.0.5, хотя он должен работать для XBMC в целом)

Примечание. Если у вас нет звуковой карты, которая поддерживает это, вы можете попробовать использовать VAC ( http: //www.virtualaudiocable.net/), хотя я говорю, что вы не работали должным образом для меня, плохое качество звука и проблемы с буфером на всем пути ... но, возможно, это только я.

Шаг 1)

Создайте пакетный файл, который запускает службу потоковой передачи HTTP VLC в фоновом режиме и захватывает звук с устройства записи Stereo Mix:

@echo off

set vlc="C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"
start "" %vlc% --qt-start-minimized dshow:// :dshow-vdev=none :dshow-adev="Stereo Mix (Realtek High Defini" :live-caching=10 :sout=#transcode{vcodec=none,acodec=vorb,ab=500,channels=2,samplerate=44100}:http{dst=:8080/audiostream.ogg} :sout-keep

Примечания:

  1. Возможно, вам придется изменить записывающее устройство, если у вас другое имя, я использовал Audacity ( http: //смелость. sourceforge.net/), чтобы проверить имена моих устройств захвата, поскольку я уже установил его
  2. Да, битрейт звука очень высок (максимум для Vorbis), но чем выше биттрейт, тем быстрее заполняется буфер и, следовательно, короче задержка :-) (вы не можете изменить разницу в размерах буфера для музыки на XBMC, Я использую 5 МБ буфера на шахте вообще)
  3. Я пробовал FLAC, MP3 и даже WAV, и кроме того, что только MP3 и Vorbis работали вообще с моим Pi, у меня было самое быстрое время загрузки на Pi (в основном мгновенно) и наименьшая задержка с Vorbis

Шаг 2)

Перейдите к

  

\\ rapsberrypi \ Userdata \ плейлистам \ музыка

и создайте файл .strm с выбранным вами именем (я назвал мой VLC.strm), который содержит простую ссылку на ваш поток VLC: (измените IP на IP вашего ПК: p)

http://192.168.0.1:8080/audiostream.ogg

Шаг 3)

Теперь вы можете либо установить аудиоустройство, которое было записано в «Stereo Mix», по умолчанию в настройках звука Windows, либо открыть плеер, такой как VLC, и вручную использовать устройство, отличное от стандартного, для воспроизведения музыки на вашем RaspberryPi:

Откройте свой VLC (в дополнение к тому, который был сведен к минимуму в вашем лотке, который транслирует ваш «Stereo Mix») и выполните следующие шаги:

  1. Инструменты -> Предпочтения
  2. Аудио
  3. Выходной модуль: «Звуковой выход WaveOut»
  4. Устройство: - ваше (аналоговое) устройство, которое записывается устройством записи Stereo Mix -
  5. Сохранить
  6. Перезапустить VLC
  7. Воспроизведение музыки

Шаг 4)

На вашем RaspberryPi:

  1. В XBMC перейдите к Music -> Плейлисты
  2. Выберите VLC.strm (или как вы его назвали)
  3. НАСЛАЖДАЙТЕ МУЗЫКУ!

Устранение неполадок

Если у вас возникли проблемы с получением «стереомикса» для работы или захвата, сначала поиграйте в Windows, например, записывая его с Audacity и пробую некоторые предложения форума как:

этот:

http://www.howtogeek.com/howto/39532/how-to-enable-stereo-mix-in-windows-7-to-record-audio/

или этот:

http://www.sevenforums.com/sound-audio/104497-stereo-mix-enabled-but-no-sound.html

Правильно, достаточно набрав на сегодня, надеюсь, что это кому-то помогло!

BR, Deads

ответил Deadman 18 J0000006Europe/Moscow 2014, 23:13:56
3

«LineInCode» - описанная здесь версия, но звук ужасен по сравнению с Wi-Fi. Вышеописанное VLC-решение работает тоже, но нужно много щелчков. Я объединил оба в пакетном файле, который запустил бы VLC как стример на моем ПК и mpg123 в качестве «listner» на PI. Он работает как прелесть для меня. Вы должны иметь Plik в той же папке (мы используем это как ssh-клиент). Я использую этот скрипт с сегодняшнего дня, чтобы прослушивать mp3 на моем ноутбуке, а звуковой выход - это pi:

            REM This is fischteich's start_sound.bat v 0.3
            @echo off

            set vlc="C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"
            set ssh-login=YOURLOGIN
            set ssh-pw=YOURPW
            set this-machine-ip=192.168.XXX.XXX
            set pi-ip=192.168.XXX.XXX
            set use-port=5001

            set start-string= --sout-keep --sout=#transcode{vcodec=none,acodec=mp3,ab=192,channels=2,samplerate=44100}:http{mux=mp3,dst=:%use-port%/}

            REM Start VLC ready for files to play
            @start "vlc" %vlc% %start-string%
            REM Start playback via mpg123 on the Pi!
            plink %pi-ip% -l %ssh-login% -pw %ssh-pw% "mpg123 http://%this-machine-ip%:%use-port%"
ответил leosok 2 J000000Wednesday14 2014, 06:09:23
1

Одним из способов достижения этой цели было бы установить ОС volumio на малиновый pi ( http://volumio.org ) следуйте инструкциям, приведенным там. В этот дистрибутив входит приемник ShairPort, который позволяет устройствам Apple передавать потоки аудио. В качестве альтернативы, я думаю, вы могли бы просто установить Shairport на дистрибутив по вашему выбору.

На вашем ПК с ОС Windows установите tuneblade ( http://tuneblade.com ), бесплатная версия которого позволяет вам транслировать аудио вашего компьютера на ShairPort на вашем малиновом пи. Он также хорошо работает с vlc для устранения задержки звука при просмотре видео и т. Д.

Это работает для меня - я надеюсь, что это может сработать и для вас.

ответил rdt25 25 FebruaryEurope/MoscowbTue, 25 Feb 2014 01:36:42 +0400000000amTue, 25 Feb 2014 01:36:42 +040014 2014, 01:36:42
0

Насколько я знаю, нет решения (пока). Существует стандарт /технология с именем AVB , но его поддержка, запланированная для 802.11, ограничена временной синхронизацией.

ответил themihai 6 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 06 Sep 2016 23:55:41 +0300 2016, 23:55:41
-1

Пробовали ли вы простые потоки звука Bluetooth с помощью адаптера A2DP, подключенного к вашей стереосистеме? Использование малины Pi для этого кажется излишним, хотя я соглашусь на создание аудио-потокового устройства A2DP bluetooth с малиной Pi и дешевым USB-адаптером Bluetooth.

ответил G Ragib 25 FebruaryEurope/MoscowbTue, 25 Feb 2014 03:05:13 +0400000000amTue, 25 Feb 2014 03:05:13 +040014 2014, 03:05:13

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132