Bagaimana cara mengirim audio ke KEDUA headphone jack dan HDMI secara bersamaan?

12

Saya perlu mengirim audio melalui HDMI dan jack headphone 3,5 mm secara bersamaan. Saya belum dapat menemukan apa pun tentang ini. Apakah ini mungkin?

Joker327
sumber
Apakah Anda ingin memutar audio yang identik, atau dua aliran audio yang berbeda ?
gemetar

Jawaban:

7

Bukan jawaban yang lengkap tetapi beberapa pemikiran tentang hal itu.

Mari kita lihat sisi perangkat kerasnya: skema sayangnya tidak membantu untuk Pi B + dan bahkan tidak tersedia untuk Pi2, jadi kita terjebak dengan B Rev 2.1 di sini untuk saat ini.

Output audio jack headphone dihasilkan oleh PWM. Tepat dari pin GPIO BCM2835 40 dan 45 melalui filter Low-pass RC. (Lihat skema , halaman 2.)

Audio pada HDMI di sisi lain seharusnya ditransmisikan secara digital. Wikipedia menyatakan: "Untuk audio digital, jika perangkat HDMI memiliki audio, diperlukan untuk menerapkan format dasar: PCM stereo (tidak terkompresi)." Dan memang audio analog berbasis PWM yang disebutkan sebelumnya tidak diumpankan ke konektor HDMI.

Jadi sekarang kami telah memverifikasi beberapa berita lama: jack headphone analog vs HDMI digital. Dari sudut pandang saya, keduanya harus ditangani secara terpisah dan independen sehingga juga (quasi-) secara bersamaan. Sekarang PulseAudioharus dapat melakukan streaming dari satu sumber ke beberapa buah perangkat keras suara. Saya masih bertanya-tanya mengapa tidak ada yang dapat ditemukan di web mengenai hal ini.

Ghanima
sumber
Saya setuju bahwa mereka harus ditangani secara terpisah, saya diminta oleh seseorang yang sedang mengerjakan pi raspberry dan mereka diminta untuk melakukan ini, saya menjelaskan kepada mereka bahwa saya tidak percaya bahwa itu mungkin, tetapi saya harus memverifikasi dengan orang lain yang tahu lebih banyak tentang ini daripada aku.
Joker327
3

Saya ingin sekali dapat melakukan hal yang sama. Setidaknya saya mencoba berkontribusi pada tren ini dengan beberapa ide yang berharap dalam pengembangan koperasi akhirnya.

Apa yang terlintas dalam pikiran saya adalah, bahwa mungkin ada (dan harus) dua contoh modul driver dimuat secara paralel, masing-masing untuk satu rute sinyal. Namun ini akan memerlukan beberapa parameter level modul kernel seperti dalam sampel ideal di bawah ini, masing-masing membuat satu perangkat ALSA (angka 0 untuk HDMI dan 3 untuk earphone dalam sampel). Anda kemudian dapat mengirim suara ke satu dan lainnya ke yang lain (atau menyalin ke keduanya).

Mencoba ke google untuk homepage kode sumber modul snd_bcm2835 (untuk mengevaluasi kelayakan tambalan sederhana), tetapi tidak berhasil (dan waktu), jadi saya menyerah untuk saat ini. Jika seseorang menemukan sumber dan menyumbang tautan, saya akan melihatnya lagi.

CATATAN !!! Berikut ini hanya contoh ideal perintah memuat modul kernel. Dalam perangkat lunak Raspberry Pi yang sebenarnya, tidak ada parameter seperti itu (AFAIK)!

modprobe snd_bcm2835 out=hdmi alsa=0
modprobe snd_bcm2835 out=ear alsa=3
pmendl
sumber
Halo dan selamat datang! Saya juga akan tertarik untuk membuat ini bekerja (jujur ​​saja, tidak menggunakan kehidupan nyata khusus;))
Ghanima