Bilgisayarımdaki tüm ses çıkışlarını stereo sistemime aktarmak için Pi kullanma


37

Sorunum oldukça basit ama tatmin edici bir çözüm bulamadım.

Temel olarak, Raspberry Pi'm stereo sistemime bağlanmasını ve daha sonra bilgisayarımdaki wifi üzerinden PI'ye herhangi bir ses çıkışı çalmasını istiyorum.

Özel oyuncular kullanmak zorunda kalmadan bunu kolayca yapmanın bir yolu var mı? Yani PC'nin Pi'yi sadece “konuşmacı” olarak tanıması için bir şey var mı?

Bilgisayarımdaki her sesi stereo olarak duymak istiyorum. Oyun, müzik, sistem sesleri, bildirimler, youtube videoları vb.

Çok teşekkürler!

Yanıtlar:


24

PC'nizde Linux kullanıyorsanız, PulseAudio'yu hem Raspberry Pi'nize hem de Linux PC'nize kurduğunuz ve düzgün şekilde yapılandırdığınız sürece, bu mükemmel bir şekilde yapılabilir.

PC'niz Windows kullanıyorsa ... Yazının sonuna atlayın (ki bu henüz yeni güncellendiğim).

Başka bir seçenek PulseAudio'yu AirPlay alıcısı / müşterisi olarak kullanmak olacaktır, ancak bildiğim kadarıyla bu mümkün değildir.

Ancak, Linux kullanıyorsanız, okumaya devam edin:

Not # 1: WiFi üzerinden PulseAudio bazı yönlendiricilerde kusursuz çalışır, ancak diğerlerinde başarısız olur.

Not # 2: Aşağıdaki talimatlar, birçok Raspberry Pi kullanıcısının (kendim dahil) bu konuda konuştukları bir sohbetten alınmıştır .

1) PulseAudio'nuzu Ahududu Pi'nize yükleyin

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

2) PulseAudio'nun otomatik olarak başladığından emin olun:

sudo nano /etc/default/pulseaudio

İçin bak PULSEAUDIO_SYSTEM_START giriş ve onu değiştirmek 1 gibi o görünüyor böylece PULSEAUDIO_SYSTEM_START = 1

3) PulseAudio'yu ağ üzerinden çalışacak şekilde yapılandırın:

sudo nano /etc/pulse/system.pa

Aşağıdaki satırları ekleyin:

yük modülü modülü-yerel-protokol-tcp auth-ip-acl = 127.0.0.1; 192.168.1.0/24

yük modülü modülü-zeroconf-yayınla

4) Ahududu Pi'nizi yeniden başlatın:

sudo reboot

5) Şimdi, Linux PC'nize paprefs yükleyin . Eğer Linux dağıtımınız Debian'ı temel alıyorsa (Ubuntu, Mint vb. Gibi) bu komutu kullanabilirsiniz:

sudo apt-get install paprefs

6) Paprefs'i çalıştırın ve Ağ Erişimi altından etkinleştirin Keşfedilebilir olun PulseAudio ağ ses cihazlarını yerel olarak kullanın

7) altında Ağ Sunucusu sağlayacak yerel ses cihazların ağ erişimi etkinleştirme ayrıca bir sunucu / lavabo olarak Linux kutusunu kullanmak istemiyorsanız, Bu muhtemelen gerekli değildir (ve her iki seçeneği işaretleyin)

8) Multicas / RTP altında her iki seçeneği de etkinleştirin

9) Mevcut çıkış aygıtlarınızı kontrol edin (Linux dağıtım Ses / Mikser Uygulamanızı kullanın). Ahududu Pi'niz listelenecektir (görünmelidir); onu seçin ve Linux kutunuzda oynanan her şey Raspberry Pi'ye yönlendirilecektir.

Raspberry Pi'niz hala kullanılamıyorsa, Linux PC'nizi yeniden başlatmayı deneyin.


GÜNCELLEME: Tüm sesleri Windows'tan Raspberry Pi'ye gönderme

Rasseberry Pi'nize PulseAudio'yu kurmak ve yapılandırmak için önceki talimatları izlemeniz gerekir.

Şimdi, Windows için yapmanız gerekenler:

1) LineInCode'un en son sürümünü indirin

2) İndirilen dosyayı çıkartın

2) Yükleme PuTTY en Plink ve LineInCode çıkarılan aynı klasöre plink.exe dosyasını yerleştirin

3) Not Defteri'ni açın ve aşağıdaki kodu yapıştırın:

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"

Tabii ki, kurulumunuza uygun IP adresini ( 192.168.1.104 ), kullanıcı adını ( pi ) ve şifreyi ( ahududu ) değiştirin.

4) Dosyayı audio2rpi.bat olarak, LineInCode'u çıkardığınız klasöre kaydedin.

Şimdi, ne zaman Windows PC'nizin sesini Raspberry Pi'nize aktarmak istediğinizde audio2rpi.bat dosyasına çift tıklayın.


Bu talimatlar için kredi: http://ubuntuforums.org/showthread.php?t=1121603


Teşekkürler, ben bir şans vereyim! akıllı telefondan akış sağlamak için pulseaudio'yu kullanabilir miyim? Teşekkürler
Jerome

@Jerome Bu web sitesinde sorduğunuz başka bir soru olmalı.
syb0rg

Pi'nizde hangi işletim sistemlerini kullanıyorsunuz? Yeni bir Raspbmc kurulumu çalıştırıyorum ve bu talimatları izleyerek cihazı örttüm. İyi bir şey, bir yeniden biçimlendirmek ... çok kolaydır
gillonba

Bu talimatları bazı Raspbian sürümlerinde denedim.
xfx

Varsayılan yapılandırma tcp modülüne hangi IP adresini girdiğimizi bilmek isteriz. nethogsSadece 13 KB / sn'lik raporlar kullanıldığında ilginç, kablosuz, ancak kablolu üzerinden kusursuz çalma deneyimi yaşıyorum .
M1ke

4

DLNA / UPnP akışını kullanarak bilgisayardaki PulseAudio ile ve Raspberry Pi'deki Raspbmc ile nasıl çalıştığım hakkında küçük bir blog yazısı yazdım. Burada: http://westmarch.sjsoft.com/2014/04/streaming-audio-linux-to-raspbmc/ . Umarım yardımcı olur. XBMC arabellekte iken biraz gecikme var - bu muhtemelen oyun oynamak ya da herhangi bir şey için harika olmaz, ama müzik için güzel çalışır.

Oldukça uzun bir komut seti - bu yüzden buradaki bağlantı, ancak burada DLNA / UPnP kullanarak benim için çalışan seçeneğin bir özeti:

  • apt-get install rygel
  • Açık PulseAudio'nun Tercihler ve altında Ağ Sunucusu kene DLNA / UPnP Media Server gibi yerel ses cihazları kullanılabilir hale getirin ve akış DLNA / UPnP için ayrı ses cihazı oluştur
  • Rygel'in config içinde /etc/rygel.confya $HOME/.config/rygel.confda düzenleyin ve kullanarak yayınlamak üzere yapılandırın GstLaunch(aşağıdaki config)
  • XBMC Dosya Yöneticinize gidin, yeni bir kaynağa göz atın, UPnP Aygıtları'nı seçin ve Gst Launch'ı seçenek olarak görmelisiniz.
  • O zaman XBMC'ye bu akıştan ses çalmasını söyleyebilmelisiniz.

İşte Rygel'in GstLaunch'ı kullanması için yapılandırma:

[GstLaunch]
enabled=true
launch-items=mypulseaudiosink
mypulseaudiosink-title=Audio on @HOSTNAME@
mypulseaudiosink-mime=audio/flac
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! flacenc

Gelecekte bir şey olması durumunda blog postanızdan bir dizi basitleştirilmiş talimat ekleyebilir misiniz?
Fred

4

Bunu kendim yapmak istedim, Windows7'den -> RaspberryPi (OpenElec) ve sorunuz üzerine tökezledi. Oldukça biraz araştırmadan sonra hala OpenElec için tatmin edici bir çözüm bulamadım, ancak çok basit ve gerçekten yüksek kalitede ve sadece yaklaşık 1 saniye gecikmeli çalışan bir tane bulmak için yeterli bilgiye sahip oldum!

İhtiyacın var:

  1. VLC Media Player (Win7 x64'ümde v2.1.3 Rincewind kullandım)
  2. "Stereo Mix" kayıt cihazı sağlayan bir ses kartı (Araçta yer alacak kadar şanslıydım)
  3. Ahududu Pi (Genel olarak XBMC için çalışması gerekir, ancak OpenElec 4.0.5 kullanıyorum)

Not: Bunu destekleyen bir ses kartınız yoksa, VAC ( http://www.virtualaudiocable.net/ ) kullanabilirsiniz , ancak benim için düzgün çalışmadığını söylememe rağmen, düşük ses kalitesi ve arabellek Her zaman sorun var ... ama belki de sadece benim.

Aşama 1)

Arka planda bir VLC http streaming servisi başlatan ve "Stereo Mix" kayıt cihazından ses alan bir toplu iş dosyası oluşturun:

@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

Notlar:

  1. Kendinizin farklı bir adı varsa, kayıt cihazını değiştirmeniz gerekebilir, zaten taktığımdan beri yakalama cihazlarımın adlarını kontrol etmek için Audacity ( http://audacity.sourceforge.net/ ) kullandım.
  2. Evet, ses bit hızı çok yüksektir (Vorbis için maksimum), ancak bit hızı ne kadar yüksek olursa, tampon o kadar hızlı doldurulur ve dolayısıyla gecikme süresi kısalır :-) (XBMC'deki müzik için arabellek açıklığını değiştiremezsiniz, 5MB kullanıyorum genel olarak mayın tamponu)
  3. FLAC, MP3 ve hatta WAV'ı denedim ve Pi'mde sadece MP3 ve Vorbis'lerin çalıştığı gerçeğinden ayrı olarak, Pi'ye en hızlı yükleme zamanım oldu (temelde anında) ve Vorbis ile en az gecikme oldu

Adım 2)

Şu yöne rotayı ayarla

\\ rapsberrypi \ Userdata \ çalma listeleri \ Müzik

ve VLC akışınıza düz bir bağlantı içeren orada seçtiğiniz bir adla (mine VLC.strm adını verdim) bir .strm dosyası oluşturun: (PC'nizin IP'sini değiştirin: p)

http://192.168.0.1:8080/audiostream.ogg

Aşama 3)

Artık "Stereo Mix" ile yakalanan ses aygıtını Windows ses ayarlarında varsayılan olarak ayarlayabilir veya VLC gibi bir oynatıcı açabilir ve RaspberryPi'nizde müzik çalmak için varsayılan olmayan aygıtı manuel olarak kullanabilirsiniz:

VLC'nizi açın ("Stereo Mix" inizin yayınlandığı tepsinizde küçültülmüş olana ek olarak) ve aşağıdaki adımları izleyin:

  1. Araçlar -> Tercihler
  2. Ses
  3. Çıkış modülü: "WaveOut ses çıkışı"
  4. Cihaz: - "Stereo Mix" kayıt cihazı tarafından yakalanan (analog) cihazınız -
  5. Kayıt etmek
  6. VLC'yi yeniden başlatın
  7. Müzik çal

4. Adım)

RaspberryPi'nizde:

  1. XBMC'de Müzik -> Çalma Listeleri'ne gidin
  2. VLC.strm seçeneğini seçin (veya ne denirse)
  3. MÜZİK OLSUN!

Sorun giderme

"Stereo Mix" inizin çalışması veya yakalanması konusunda sorun yaşıyorsanız, örneğin Audacity ile kaydederek ve aşağıdaki gibi forum önerilerini deneyerek Windows'ta oynayın:

Bu:

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

ya da bu:

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

Doğru, bugün için yeterince yazarak, bunun birisine yardımcı olacağını umuyorum!

BR, Deads


3

Burada açıklanan "LineInCode" -Solution çalışıyor - ancak ses wifi üzerinden korkunç. Yukarıda verilen VLC-Çözümü de çalışır - ancak çok fazla tıklamaya ihtiyacı vardır. Hem PC'de bir flama olarak VLC'yi hem de PI'da bir "liste" olarak mpg123'ü başlatan bir toplu iş dosyasında birleştirdim. Benim için bir cazibe gibi çalışıyor. Aynı klasörde Plik'in olması gerekir (onu ssh-client olarak kullanıyoruz). Bugünden itibaren bu betiği dizüstü bilgisayarımda mp3 dinlemek için kullanıyorum, oysa ses çıkışı 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%"

1

Bunu başarmanın bir yolu, Volumio OS'yi Ahududu PI'ye ( https://volumio.org ) kurmaktır, burada verilen talimatları izleyin. Bu dağıtım, Apple cihazlarının kendisine ses yayını yapmasını sağlayan bir ShairPort alıcısı içerir. Alternatif olarak, seçtiğiniz dağıtıma Shairport'u da kurabilirsiniz.

Windows PC'nizde tuneblade ( http://tuneblade.com ) yazılımını yükleyin , bunun ücretsiz sürümü bilgisayarınızın sesini ahududu pi'nizdeki ShairPort'a aktarmanızı sağlar. Ayrıca, video izlerken vs. ses gecikmesini ortadan kaldırmak için vlc ile iyi çalışır.

Bu benim için çalışıyor - Umarım sizin için de işe yarayabilir.


Ahududu Pi Yığın Borsasına Hoşgeldiniz! Bu soruyu teorik olarak cevaplayabilse de , cevabın temel kısımlarını buraya eklemek ve referans için bağlantıyı sağlamak tercih edilir.
RPiAwesomeness

Tuneblade ayrıca Pi MusicBox ile de çalışır
giriş

0

Bildiğim kadarıyla henüz bir çözüm yok. AVB adında bir standart / teknoloji var ancak 802.11 için planlanan desteği zaman senkronizasyonu ile sınırlı.


-1

Stereo cihazınıza bağlı bir A2DP adaptörü kullanarak basit bir bluetooth ses akışı denediniz mi? Ahududu Pi kullanarak, ahududu Pi ve ucuz bir USB bluetooth adaptörü ile bir A2DP bluetooth ses akışı cihazı oluşturmayı itiraf etmeme rağmen, aşırı derecede gözüküyor.


A2DP'yi yayınlayabilen bir Raspi oluşturmuş olmanız harika, ancak cevabınız bana aynı şekilde yardımcı olmuyor, bu yüzden bu cevap bir cevap değil.
Mark Booth,

Pi gerekmedi. PC'nizi bir Bluetooth alıcısıyla eşleştirin ve doğrudan PC'nizden sterolünüze ses gönderin. Bluetooth alıcısı, bilgisayarınızda bir ses çıkışı olarak görünmelidir.
Christopher Biggs
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.