Bagaimana cara menggunakan ponsel Android 2.1 sebagai penerima audio jarak jauh?

21

Saya memiliki ponsel Android HTC Hero yang tidak digunakan (menjalankan Android OS 2.1), saya ingin menghubungkannya ke amplifier audio dan membiarkannya terhubung selama berbulan-bulan, jadi saya bisa menggunakan ponsel android ini sebagai server / penerima pulseaudio jarak jauh / etc /.

Ada aplikasi "Remote Audio" yang tersedia di Android Market, yang dapat mengambil streaming dari / dev / dsp. / dev / dsp telah dinonaktifkan karena kesalahan / alasan apa pun di ubuntu 10.10 dan bahkan setelah saya mengaktifkannya sesuai utas ini - setelah mengikuti petunjuk ini tidak membantu, jadi ketika saya mengklik tombol Play / Pause di android saya - tidak ada yang benar-benar terjadi dan mpg123 song.mp3 masih menggunakan speaker laptop saya. terakhir | kepala bahkan tidak menunjukkan pengguna baru ini masuk (saya kira itu akan muncul di sini?)

Mencari dengan "pulseaudio" Saya menemukan Airbubble di pasar Android, tetapi dikatakan "tidak bekerja dengan RaopX di MacOS X dan modul raop untuk pulseaudio di Linux." (c)

Jadi apakah ada cara untuk menggunakan ponsel Android sebagai penerima audio jarak jauh, idealnya tidak terbatas pada memutar mp3 / musik - tetapi sub-sistem Suara secara umum?

Tentunya saya bukan satu-satunya orang yang ingin menyiarkan audio ke ponsel android melalui wi-fi untuk mendengarkannya di speaker yang tepat?

pengguna35834
sumber

Jawaban:

13

Saya pikir Anda terlalu bekerja idenya, mencoba membuat ponsel Anda melakukan sesuatu yang tidak pernah dimaksudkan untuk dilakukan (terhubung ke PulseAudio atau sesuatu yang lebih rendah lagi). Buat komputer Anda melakukan kerja keras.

Saya sarankan pergi dengan sesuatu seperti Icecast ( tutorial di sini ) dan menggunakan salah satu dari 30-aneh aplikasi untuk Android yang dapat mengalirkannya.

Oli
sumber
Terima kasih, tetapi setidaknya ada 2 aplikasi di pasar Android yang seharusnya menyelesaikan masalah saya dengan tepat: "audio jarak jauh" dan "AirBubble" (yang kompatibel dengan Apple AirportExpress).
user35834
@ user35834: setelah menyiapkan server Icecast di sisi Ubuntu Anda akan independen di sisi penerima. Apa pun (!) Yang dapat disetel ke "Radio Internet" juga akan dapat menerima aliran Anda sendiri. Ada banyak keuntungan tambahan dari Icecast vs RAOP.
Takkat
19

Dua hari yang lalu saya menemukan pertanyaan ini dan tidak bisa memperbaikinya. Akhirnya saya membaca di manual AirBubble bahwa RAOP tidak didukung.

Saya akhirnya menyelesaikannya dengan kemampuan DLNA / UPnP dari pulseaudio. Ini berfungsi seperti yang Anda harapkan. Anda memutar suara dengan aplikasi apa pun dengan output pulseaudio di kotak Anda dan memilih output streaming kapan pun Anda ingin mengarahkannya ke perangkat Android Anda.

Pertama, instal Rygel:

$ sudo apt-get install rygel rygel-preferences rygel-gst-launch

Kemudian ubah file /etc/rygel.conf, sehingga baris dengan parameter enable-transcoding terlihat seperti ini:

enable-transcoding=false

Kemudian muat modul DLNA dan TCP dan mulai rygel:

$ pactl load-module module-http-protocol-tcp
$ pactl load-module module-rygel-media-server 
$ pactl load-module module-null-sink sink_name=upnp format=s16be channels=2 rate=44100 sink_properties="device.description='DLNA/UPnP Streaming' device.bus='network' device.icon_name='network-server'"
$ rygel

Di perangkat Android Anda unduh aplikasi BubbleUPnP. Perangkat keluaran pulseaudio Anda akan terdaftar di bawah server "Sound on% HOSTNAME%". Arahkan output di komputer Anda ke perangkat DLNA dalam preferensi suara. Pilih output yang sama di BubbleUPnP.

Ingatlah bahwa BubbleUPnP mengalirkan 30 menit pertama gratis. Versi lengkapnya adalah 3,49 €, tapi saya rasa harganya sepadan. Saya tidak mendapatkan aplikasi lain yang berfungsi untuk saya.

Terakhir, Anda dapat menonaktifkan peramban media jika Anda tidak suka menggunakan rygel-preferensi:

$ rygel-preferences

Satu lagi head-up: ini langsung mengalirkan data LPCM mentah, yang secara konstan ~ 250 kB / s. Setiap aktivitas WLAN palsu akan menyebabkan kegagapan jika Anda menggunakan jaringan 802.11 n. Jika Anda berencana untuk mendasarkan solusi hiburan Anda pada streaming nirkabel, pertimbangkan untuk membeli router n nirkabel.

IKUTI: TRANSCODING

Untuk mengurangi overhead jaringan dan kegagapan (yang akan terjadi kecuali Anda berada di jaringan 802.11 n), dimungkinkan untuk beralih ke transcoding aliran audio ke mp3.

Rekatkan ini ke ~ / .config / rygel.conf

[GstLaunch]
enabled=true
launch-items=mypulseaudiosink
mypulseaudiosink-title=Sound on @HOSTNAME@
mypulseaudiosink-mime=audio/mpeg
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! lamemp3enc target=quality quality=6

Gunakan layanan DLNA "Gst Launch" yang sekarang akan muncul ketika Anda memulai rygel.

IKUTI 2: FLAC

LAME dapat menyebabkan keterlambatan hingga 2 menit (!). FLAC di sisi lain cukup cepat, biasanya clocking di bawah satu detik. Ubah baris pada contoh di atas menjadi:

mypulseaudiosink-mime=audio/flac
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! flacenc quality=8

Ini mengurangi aliran hingga sekitar 100 kB / s, memungkinkan untuk pemutaran yang lancar di sebagian besar jaringan 802.11g dengan banyak pengguna. Saya mengujinya saat mengunduh torrent. Pada kecepatan penuh, ada beberapa kegagapan, tetapi ketika saya membatasi kecepatan unduh menjadi sekitar 200 kB / s di bawah bandwidth maksimum saya, semuanya lancar lagi.

Plus, Anda telah menghilangkan kerugian dalam kualitas.


Beberapa masalah di atas - ~/.config/rygel.confsebaliknya periksa dan edit , /etc/.config/rygel.confjika tidak dimuat secara default (?).

Pembuatan wastafel tidak akan berfungsi pada versi Ubuntu yang lebih baru.

Apa yang berhasil untuk saya, bagaimanapun, adalah mengikuti semua instruksi (tanpa membuat wastafel). Kemudian jalankan paprefs, dan pada tab "Network server", pilih opsi bawah "Jadikan perangkat suara lokal tersedia sebagai server uPnP" (dan mungkin suboption juga diperlukan).

Mulai rygel, dan pilih opsi "DLNA / UPnP Streaming" baru di pengaturan PulseAudio.

Pada BubbleUPnP pilih "Gst Launch" sebagai Library. Di aplikasi, pilih Perpustakaan dan sekarang harus ada pilihan di atas yang disebut "Sound on".

Karol Trojanowski
sumber
3
Untuk poster tentang penggunaan rygel: pendekatannya terdengar bagus tetapi module-null-sink tidak mengambil argumen tersebut dalam versi 11.10. Anda harus memaksudkan modul lain tetapi saya belum dapat menemukannya. Ide bagus, tolong bantu dengan mengoreksi.
Setelah menjalankan pactl load-module module-null-sink sink_name=upnp......, saya mendapatkan error ini: Failure: Module initalization failed. Ada ide?
Khurshid Alam
@KhurshidAlam: Coba pendekatan saya, tidak memiliki pengeditan teks dan hanya bergantung pada Wine yang sedang diinstal.
Janus Troelsen
@ JanusTroelsen: Sementara pendekatan Anda berhasil, saya akan menekankan bahwa metode lain dicoba terlebih dahulu. Anggur adalah proyek yang bagus, tetapi hanya boleh digunakan sebagai pilihan terakhir. Itu tidak bisa diandalkan.
Bakar
1

Shairplay tidak mendukung TCP dan raop_play (saya pikir pulseaudio-module-raop didasarkan pada ini) tidak mendukung UDP. Mengapa raop adalah TCP saja itu aneh, UDP sepertinya protokol yang lebih mudah dan lebih cocok untuk itu.

Dan jika Anda sumber flac maka icecast melalui MP3 akan mematikan kualitas, ditambah lagi itu lebih dari babi CPU. MPD secara alami mendukung output pulseaudio sehingga Anda dapat "menghidupkan dan mematikan" berbagai ruangan rumah menggunakan misalnya ponsel android dengan aplikasi mpdroid. Jika Anda bisa menggunakan airplay dock sebagai titik akhir Anda akan memiliki pengaturan yang fantastis. Tetapi Anda tidak dapat cos raop tidak mendukung titik akhir UDP yang lebih sederhana!

Stephen
sumber
1

Anda mungkin ingin melihat di luar komunitas Pulseaudio.

Saya mencoba Subsonic untuk melakukan ini. Sejauh ini telah bekerja dengan baik. Saya telah menginstalnya pada sistem Ubuntu saya, Roku ruang tamu saya, pada ponsel Android utama saya dan pada ponsel Android sekunder saya yang hanya wifi. Semua perangkat ini terhubung melalui wifi. Saya berencana untuk menginstalnya di mesin Windows juga, sehingga istri saya dapat melakukan streaming koleksi iTunes-nya ke perangkat lain.

Saya sekarang dapat melakukan streaming Audio dan Video dari sistem Ubuntu saya ke Roku saya di ruang tamu, atau Android saya yang dapat saya bawa ke dapur atau sambil melipat cucian. Saya juga dapat melakukan streaming dari komputer mana saja yang memiliki browser web. Saya mengalirkan musik dan podcast sambil mengerjakan proyek pemeliharaan rumah yang panjang dan membosankan.

Sejauh ini berhasil dengan baik.

Stefan Lasiewski
sumber
0

Anda dapat menggunakan Foobar2000 di server dan BubbleUPnP (payware) pada klien.

  1. dapatkan Wine
  2. mendapatkan foobar_v1.2.5.exe
  3. $ wine foobar2000_v1.2.5.exe
  4. selanjutnya, selanjutnya, selanjutnya ... :)
  5. dapatkan foo_upnp
  6. ekstrak di folder komponen foobar2000 (yang mungkin ada di ~/.wine/drive_c/Program Files/)
  7. luncurkan foobar2000
  8. pergi ke Perpustakaan → Konfigurasi → Playback → Output → Perangkat dan pilih "Null output"
  9. pastikan ufwtidak memblokir lalu lintas yang relevan
  10. dalam BubbleUPnP:
    1. buka Perangkat → Perpustakaan dan pilih server foobar2000
    2. di "Library", pilih "Playback Stream Capture"

Pendekatan ini memiliki keuntungan bahwa jika Anda menjeda di Android, itu akan mengakumulasi buffer (karena server masih mengirim).

Diuji pada Ubuntu (versi Wine 1.5.28-0ubuntu1~ppa1, foobar2000 versi 1.2.5 dan foo_upnp versi 0.99.46) dan Windows.

Janus Troelsen
sumber