ClassIn tidak dapat memutar audio di Linux – 145a
Saat menggunakan ClassIn pada sistem Debian (KDE Plasma), saya tidak dapat memutar audio apa pun. Suara aplikasi lain (seperti browser dan pemutar media) normal, dan hanya ClassIn yang bermasalah. Hanya ada “default” pada opsi perangkat output audio ClassIn, dan perangkat lain tidak dapat dipilih secara manual.
lingkungan
- Sistem: Pengujian Debian
- Kernel: 7.0.7+deb14-amd64
- Lingkungan desktop: KDE Plasma 6.6.5
- Layanan audio: PipeWire
- Monitor eksternal tanpa speaker
- Versi KelasDalam: 6.0.6
Memecahkan masalah peralatan audio
Kami mengetahui dari pejabat ClassIn bahwa ClassIn menggunakan ALSA.
aplay -l
Outputnya adalah sebagai berikut:
**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC3232 Analog [ALC3232 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
Sistem ini memiliki dua kartu suara:
- kartu 0: HDA Intel HDMI, kompatibel dengan keluaran HDMI
- kartu 1:HDA Intel PCH (ALC3232 Analog), kompatibel dengan jack headphone atau speaker internal
Karena perangkat ALSA “standar” biasanya menampilkan kartu 0, dan monitor HDMI tidak memiliki speaker, ini berarti suara ClassIn dapat dikirim ke perangkat tanpa kemampuan output.
Pecahkan masalah monitor HDMI
Inilah masalahnya: monitor saya tidak memiliki speaker. Apakah sistem menganggapnya sebagai perangkat keluaran audio?
Baca informasi EDID monitor:
edid-decode /sys/class/drm/card0-HDMI-A-2/edid
Bagian Blok Ekstensi CTA-861 pada output hanya berisi Blok Data Video dan Blok Data Spesifik Vendor, dan tidak ada Blok Data Audio dan Blok Data Alokasi Speaker. Hal ini menunjukkan bahwa monitor melaporkan dengan benar ke sistem bahwa monitor tidak mendukung audio.
Jadi mengapa sistem masih menganggap monitor saya memiliki speaker? Pencarian mengungkapkan bahwa driver HDA HDMI dari kernel Linux (snd-hda-codec-hdmiStrategi desainnya adalah membuat perangkat audio untuk semua port output HDMI tanpa secara otomatis menonaktifkan port yang tidak berguna berdasarkan informasi audio di EDID.
Ubah urutan kartu suara
Karena kartu 0 menunjuk ke perangkat HDMI tanpa speaker, ide yang wajar adalah menempatkan kartu suara PCH terlebih dahulu sehingga ALSA “standar” akan menunjuk ke sana.
pengeditan /etc/modprobe.d/alsa-reorder.conf:
options snd-hda-intel index=1,0
index=1,0 Fungsinya untuk mengurangi perangkat HDMI yang ditemukan oleh kernel terlebih dahulu ke kartu 1, dan perangkat PCH yang ditemukan kemudian ke kartu 0.
Saya me-restart perangkat. Buka ClassIn lagi, tetap tidak ada suara.
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC3232 Analog [ALC3232 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
Saat ini, PCH telah berhasil digantikan oleh kartu 0. Konfigurasi berlaku, tetapi tidak menyelesaikan masalah.
Memecahkan masalah perangkat default ALSA
speaker-test -t wav -c 2
Keluaran:
speaker-test 1.2.15.2
Playback device is default
Stream parameters are 48000Hz, S16_LE, 2 channels
WAV file(s)
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) [error.pcm] unable to open slave
Playback open error: -16,Device or resource busy
Device or resource busy. Hal ini menunjukkan bahwa perangkat keras kartu suara sedang ditempati oleh proses lain dan ALSA tidak dapat mengaksesnya secara langsung.
Periksa siapa yang memiliki perlengkapan audio:
fuser -v /dev/snd/*
Keluaran:
USER PID ACCESS COMMAND
/dev/snd/controlC0: user 1114 F.... pipewire
user 1175 F.... wireplumber
/dev/snd/controlC1: user 1175 F.... wireplumber
/dev/snd/pcmC0D0p: user 1114 F...m pipewire
/dev/snd/seq: user 1114 F.... pipewire
PipeWire sudah terisi /dev/snd/pcmC0D0p(Ini adalah perangkat pemutaran 0 kartu). Ini adalah perangkat yang ingin diakses oleh ClassIn.
pactl info 2>&1 | head -5
Keluaran:
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 156
Sistem ini menggunakan PipeWire (kompatibel dengan antarmuka PulseAudio). Perangkat keras kartu suara ALSA dikendalikan
menganalisa
- Sebagai layanan audio sistem, PipeWire secara langsung mengakomodasi perangkat keras kartu suara ALSA.
- ClassIn mencoba mengakses perangkat keras secara langsung melalui perangkat “standar” ALSA
- Karena perangkat keras sudah digunakan secara eksklusif oleh PipeWire, ClassIn tidak dapat membuka perangkat dan pemutaran gagal.
- Aplikasi lain terdengar normal karena diputar melalui PipeWire (antarmuka yang kompatibel dengan PulseAudio) alih-alih mengoperasikan perangkat keras ALSA secara langsung.
mengatasi
pipewire-alsa Paket ini menyediakan lapisan kompatibilitas ALSA ke PipeWire.
sudo apt install pipewire-alsa
Alat “standar” ALSA dirutekan ke PipeWire alih-alih mengakses perangkat keras secara langsung.
speaker-test -t wav -c 2
Kali ini sistem tidak lagi melaporkan kesalahan dan suara pengujian dapat terdengar normal. Buka ClassIn dan audio dapat diputar.
meringkaskan
Di Debian 12+ (yang menggunakan PipeWire secara default), beberapa aplikasi (seperti ClassIn) mungkin gagal memutar audio secara langsung melalui ALSA. Alasan dasarnya adalah PipeWire memonopoli perangkat keras kartu suara, sehingga aplikasi yang mengakses langsung perangkat keras ALSA tidak dapat diputar.
Selama proses pemecahan masalah, saya menemukan bahwa perangkat ALSA standar menunjuk ke output HDMI tanpa speaker, dan mencoba membalikkan urutan kartu suara, namun langkah ini tidak menyelesaikan masalah – sistem menggunakan PipeWire sebagai layanan audio.
Solusi terakhir adalah dengan menginstalnya pipewire-alsa. Ini menjembatani permintaan ALSA ke PipeWire, memungkinkannya untuk diputar dengan benar. Jika ClassIn Anda tidak mengeluarkan suara di Linux dan sistem Anda menggunakan PipeWire, Anda dapat memeriksa apakah paket telah diinstal.
PakarPBN
A Private Blog Network (PBN) is a collection of websites that are controlled by a single individual or organization and used primarily to build backlinks to a “money site” in order to influence its ranking in search engines such as Google. The core idea behind a PBN is based on the importance of backlinks in Google’s ranking algorithm. Since Google views backlinks as signals of authority and trust, some website owners attempt to artificially create these signals through a controlled network of sites.
In a typical PBN setup, the owner acquires expired or aged domains that already have existing authority, backlinks, and history. These domains are rebuilt with new content and hosted separately, often using different IP addresses, hosting providers, themes, and ownership details to make them appear unrelated. Within the content published on these sites, links are strategically placed that point to the main website the owner wants to rank higher. By doing this, the owner attempts to pass link equity (also known as “link juice”) from the PBN sites to the target website.
The purpose of a PBN is to give the impression that the target website is naturally earning links from multiple independent sources. If done effectively, this can temporarily improve keyword rankings, increase organic visibility, and drive more traffic from search results.