Konfigurasi port input default pulseaudio

Oct 01 2020

Laptop saya (menjalankan Pop_OS 20.04, kernel 5.4 - ini adalah Ryzen dan bekerja sangat buruk dengan kernel lama) berpura-pura memiliki 2 mikrofon: "mikrofon digital" (yang tidak pernah melakukan apa pun) dan "mikrofon headphone" (yang berfungsi dengan baik baik). Namun pada beberapa titik, pulse audio memutuskan bahwa input default adalah "mikrofon digital" yang tidak berguna (AFAIK tidak ada) "mikrofon digital" (mungkin pada saat yang sama diputuskan bahwa volume output dibagi ke seluruh headphone dan speaker terintegrasi, yang merupakan gangguan lain tetapi berbeda masalah).

Edit: Ini adalah output dari arecord --list-devices:

% arecord --list-devices
**** List of CAPTURE Hardware Devices ****
card 1: Generic_1 [HD-Audio Generic], device 0: CX8070 Analog [CX8070 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: acp [acp], device 0: DMIC capture dmic-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Dan keluaran dari pacmd list-sources | grep 'name:.*input':

% pacmd list-sources | grep 'name:.*input'
    name: <alsa_input.pci-0000_04_00.6.HiFi__hw_acp__source>
    name: <alsa_input.pci-0000_04_00.6.HiFi__hw_Generic_1__source>

Saat saya menggunakan pintasan tombol "bisukan mikrofon", tindakan ini menonaktifkan "mikrofon digital" yang tidak berfungsi dan memungkinkan suara mengalir ke "mikrofon headphone".

Saya dapat memilih mikrofon yang berfungsi di Audacity dan merekam dengan baik; namun di sebagian besar aplikasi, ini tidak tersedia sama sekali (misalnya, tidak dapat digunakan dari perangkat lunak konferensi video mana pun, yang menjengkelkan, karena sebagian besar program hanya mengizinkan penggunaan input "defaut", mungkin karena yang lain "dicabut").

Jelas "headphone mike" menggunakan mikrofon headphone yang sebenarnya saat headphone dengan mikrofon terintegrasi dicolokkan (meskipun masih salah diberi label "dicabut"), dan menggunakan mikrofon laptop terintegrasi ketika tidak ada mikrofon yang dicolokkan ke soket headphone. Bagaimanapun, mikrofon sebenarnya tidak tersedia untuk sebagian besar aplikasi.

Dalam pavucontrol saya tidak dapat menonaktifkan mikrofon digital atau membuat analog, yang berfungsi sebagai default (saya dapat mengklik tombol "default" tetapi pengaturannya langsung terlupakan). Perhatikan bahwa mikrofon "headphone" salah diberi label sebagai "dicabut" sementara bilah pemantauan menunjukkan bahwa ada suara yang masuk).

Saya telah mencoba beberapa hal yang diusulkan oleh jawaban ini tetapi mereka tidak melakukan apa-apa:

% pacmd list | grep active
    active port: <[Out] Headphones>
    active port: <[In] Mic1>
    active port: <[In] Mic2>
    active profile: <off>
    active profile: <HiFi>

Mic1 adalah "mikrofon digital" dan "Mic2" adalah "headphone". Namun:

% pacmd set-source-port 1 "<[In] Mic2>"
Failed to set source port to '<[In] Mic2>'.

Alsamixer juga tidak membantu; sejauh yang saya tahu itu hanya menampilkan satu input (yang default).

Ini adalah ketidaknyamanan yang serius terutama karena saya tidak dapat melakukan konferensi video kecuali saya menggunakan headphone Bluetooth saya.

Saya telah mencoba seperti yang disarankan oleh pertanyaan / jawaban ini untuk menyetel "mikrofon headphone analog" ke status "dicolokkan terus-menerus", tanpa dadu, masih "dicabut":

% sudo vi /usr/share/pulseaudio/alsa-mixer/paths/analog-input-headphone-mic.conf


[Jack Headphone Mic]
required-any = any
state.plugged = yes

Jawaban

2 AbhishekDeshpande Oct 03 2020 at 09:18

Cobalah untuk mengatur profil aktif. Berikut adalah kutipan dari Arch wiki:

"Profil aktif" dapat diatur dengan perintah pacmd set-card-profile INDEX PROFILE, tanpa koma yang memisahkan INDEX dan PROFILE, di mana INDEX hanyalah nomor pada baris "index:" dan nama PROFILE adalah semuanya yang ditampilkan dari awal baris mana pun di bawah "profile: "ke tepat sebelum titik dua dan spasi pertama, seperti yang ditunjukkan oleh perintah pacmd list-cards. Misalnya,pacmd set-card-profile 0 output:analog-stereo+input:analog-stereo

Pertama daftarkan kartu Anda pacmd list-cards, lalu setel profil kartu dengan menggunakan pacmd set-card-profile 0 output:analog-stereo+input:analog-stereotempat Anda dapat mengganti '0' dalam perintah dengan nomor indeks kartu. Coba pertahankan profil yang sama seperti yang dijelaskan pada perintah, yaitu output: analog-stereo + input: analog-stereo.

Anda juga dapat melakukan hal yang sama dari pavucontrolGUI. Tab 'Konfigurasi' terakhir dapat digunakan untuk ini.

1 BarBar1234 Oct 03 2020 at 09:26

Pertama, Anda harus mempersempit nama mikrofon analog dengan mendapatkan daftar sumber yang tersedia.

pacmd list-sources | grep -i "name:"

Salah satu sumber berikut akan sesuai dengan mikrofon analog Anda yang ingin Anda nonaktifkan, yang dapat 'membungkam andsuara ' dengan:

pacmd set-source-mute [NAME of source from previous command output] 1 

dan suarakan dengan

pacmd set-source-mute [NAME of source from previous command output] 0

Lebih baik lagi Anda dapat mengatur sumber sebagai keluaran sumber default Anda:

pacmd set-default-source [NAME] 

dan kemudian pintasan Anda, harus mengontrol mikrofon analog Anda.

wazoox Oct 30 2020 at 15:42

Akhirnya masalah telah terpecahkan kemarin ketika Pop_OS mengupgrade kernel saya ke versi 5.8. Sekarang mikrofon default adalah "Mikrofon internal", dan semuanya berfungsi dengan baik. Tombol "bisukan mikrofon" berfungsi, perekaman audio berfungsi di semua aplikasi.