Disattiva il rilevamento del jack per cuffie in pulseaudio


19

Ho una porta per le cuffie non sicura sul mio laptop che non rileva in modo affidabile quando sono collegate cuffie / altoparlanti esterni. Ciò significa che l'uscita viene costantemente silenziata / muta, il che è piuttosto fastidioso

Come posso configurare pulseaudio per disabilitare il rilevamento del jack (o in alternativa forzare semplicemente l'uscita attraverso questo jack)?

Presumo che comporterà la modifica di analog-output-headset.conf, tuttavia non riesco a capire come farlo (analog-output.conf.common non è di aiuto).


2
Hai considerato / provato a rimuovere pulseaudio e hai appena usato ALSA?
Riccioli d'oro,

Sì, ma mi piace in qualche modo il controllo extra che pulseaudio dà. Inoltre sono sicuro che esiste una soluzione semplice: non riesco proprio a capire di cosa si tratti.
Ross,

L'uso di ALSA semplificherebbe la soluzione. Quindi sceglierei di usare un jack diverso. Evitando entrambe queste opzioni, sceglierei di riparare il jack traballante (richiede saldatore e un po 'di esperienza) :)
Elder Geek,

Risposte:


7

Puoi provare a sospendere il jack delle cuffie. Per trovare l'indice del jack delle cuffie:

pactl list short sinks

Quindi sospendi quel lavandino:

pactl suspend-sink [SINK] 1|0

Dove "SINK" è l'indice del primo comando e "1" verrà sospeso e "0" non verrà sospeso.

Modifica: scusa, ho frainteso la situazione. Trovato un thread Arch che ha un metodo per disabilitare la commutazione automatica. Modifica /etc/pulse/default.pa(gdamjan suggerisce l'alternativa ~/.config/pulse/default.pa) per rimuovere la seguente riga:

load-module module-switch-on-port-available

1
Grazie, ma non voglio disabilitare le cuffie, piuttosto forzare l'uscita attraverso di esse - anche quando non rilevano un cavo collegato.
Ross

Per quanto riguarda la disabilitazione: modulo modulo di carico-switch-on-port-available - l'ho provato ma sembra non fare alcuna differenza.
Ross

1
prova in modo alterato ~ / .config / pulse / default.pa
gdamjan il

Stavo provando questo per far arrivare l'audio attraverso gli altoparlanti quando collego un microfono (è un microfono per cuffia, ma voglio che il microfono raccolga i suoni degli altoparlanti per la registrazione). Quando ho provato a rimuovere l'interruttore, riesco a farlo (con un comando "pacmd set-sink-port") per essere trasmesso solo all'altoparlante (non viene emesso alcun suono dalle cuffie), ma l'audio verrà comunque emesso dall'altoparlante solo quando nulla è collegato al jack. Arrrggghhhh ....
anthony il

5

Non so come (o se) questo può essere fatto direttamente tramite PulseAudio stesso, ma so che ciò può essere fatto tramite il controllo ALSA chiamato "Auto-Mute Mode", abilitando questo controllo (con 'alsamixer' per esempio) dovrebbe impedire che l'uscita venga silenziata automaticamente quando qualcosa è inserito nella presa frontale.

Modificarlo in questo modo funzionerà anche se il tuo sistema esegue PulseAudio, purché utilizzi ALSA come backend (ma penso che questo sia il caso nella maggior parte delle distribuzioni Linux per impostazione predefinita).

Se usi 'alsamixer' per cambiare questa impostazione, dovrai prima selezionare il dispositivo hardware giusto (premi F6), poiché il dispositivo predefinito sarà probabilmente il dispositivo virtuale PulseAudio, che non ha la "Modalità di silenziamento automatico" controllo.

Per rendere permanente questa impostazione, esegui come root:

# alsactl store

Grazie per aver inserito i dettagli sulla modifica del dispositivo tramite F6. Ho trascorso mezz'ora in alsa e in altri file di configurazione / controllo cercando di trovare qualcosa di "AutoMute" fino alla lettura del tuo commento, non avevo pensato di cambiare dispositivo.
Daniel,

1

supponendo che almeno uno dei tuoi jack funzioni ancora senza errori, ti suggerisco di fare riferimento a questa domanda su askubuntu - invece di dipendere dal jack audio difettoso, ti suggerisco di usare il microfono in porta per le cuffie.


Immagino di non averlo spiegato così chiaramente. L'uscita dal jack va bene. Per qualsiasi motivo, c'è un problema nel rilevare se un cavo è collegato o meno. Questo porta a pulseaudio a silenziare casualmente il flusso come pensa che la spina sia stata rimossa (quando non lo ha fatto).
Ross,

1

Corri pavucontrol. Nel menu "Configurazione", seleziona l'opzione "Off" per la scheda audio integrata.


1

Nel caso in cui questo sia utile per qualcuno, descriverò come ho risolto il mio problema con i jack anteriori su Ubuntu 14.04

Nel mio caso il microfono frontale non funzionava correttamente, ho provato a riattivare l'audio alsamixere altre mille possibili soluzioni, ma alla fine quello che è stato risolto è stato installare alsa-toolse utilizzare hdajackretaskper impostare il microfono anteriore come "microfono interno", quindi alsamixersolo riattiva il microfono interno e i canali di potenziamento del microfono interno e regolato i loro valori (53 su entrambi nel mio caso)


1

Ho avuto il problema che il rilevamento delle cuffie ha disabilitato l'altoparlante, che a quanto pare è collegato al mio jack per cuffie nel computer portatile. Informazioni HDA su Fujitsu Siemens Amilo 1520 qui.

Ciò che dovrebbe darti un indizio è avere alsamixer aperto sulla tua scheda audio e vedere influenzati i controlli del volume per l'altoparlante e le cuffie (quando si collegano le cuffie, disattivano l'audio degli altoparlanti e si ripristinano le cuffie, e viceversa).

quindi utilizzando l'hdajackretask ho selezionato: cuffia verde (lato posteriore) - seleziona override - e imposta su "speaker interno"

puoi quindi verificare collegando e scollegando le cuffie se funziona per la tua configurazione (la documentazione è scarsa).

Nel mio caso ha funzionato e ho fatto clic sul pulsante "Installa sostituzione avvio". Riavvia il sistema e riproduci il suono funzionante ...

(Mi piacerebbe davvero sapere cosa ha creato sotto il cofano, lo scoprirò qualche tempo dopo.)


1

Il mio problema è il jacksense sulla porta frontale che passa costantemente a "cuffie" (anche quando l'intestazione del pannello frontale non è collegata) e una scheda madre MSI difettosa mi hanno rifiutato RMA. Anche quando jack sense è disabilitato in config commentandolo in default.pa. Un terribile lavoro in giro è stato quello di utilizzare il pannello frontale e ottenere un costante scoppiettio. Ho provato tutte le soluzioni alternative elencate qui e ovunque su Google.

Ho provato hdajackretask che non funzionava su Debian Stretch, tuttavia tutto ciò che serviva era creare / lib / firmware. Al termine, lo script di installazione dell'override di avvio crea in / tmp copia correttamente il file .fw lì.

/etc/modprobe.d/hda-jack-retask.conf contiene:

# This file was added by the program 'hda-jack-retask'.
# If you want to revert the changes made by this program, you can simply erase this file and reboot your computer.
options snd-hda-intel patch=hda-jack-retask.fw,hda-jack-retask.fw,hda-jack-retask.fw,hda-jack-retask.fw

(che prevede il file in / lib / firmware,)

Non sono sicuro se altre opzioni snd-hda-intel lo sovrascrivono o interferiscono, quindi prova a disabilitarli se fallisce.

Il mio file del firmware è simile al seguente, non sono sicuro di poter usare la stanza [suggerimento] in quanto sono solo felice di rovinare la cosa:

/lib/firmware/hda-jack-retask.fw

[codec]
0x10ec0892 0x1458a002 2

[pincfg]
0x11 0x99430130
0x12 0x4037c540
0x14 0x01014010
0x15 0x01011012
0x16 0x01016011
0x17 0x411111f0
0x18 0x01a19050
0x19 0x02a19060
0x1a 0x0181305f
0x1b 0x43f1413f
0x1c 0x411111f0
0x1d 0x4045e601
0x1e 0x01452140
0x1f 0x411111f0

[hints]
jack_detect=no

Non posso votare quelle risposte o commentarle, se stai leggendo questo e hai provato tutte le altre soluzioni elencate come ho fatto, prova a ripetere il jack su "non connesso". Sul mio hdajackretask si chiamava "Frontale verde per cuffie"


Ho una porta audio sul pannello frontale che non ha il pin di rilevamento jack, quindi mostra sempre come scollegato. Alla fine è stato risolto e questa risposta è la migliore. Non è possibile applicare le impostazioni perché pulseaudio sta probabilmente usando la scheda e fermare PA è sorprendentemente difficile. Se si abilita l'override avanzato, è possibile disattivare il rilevamento del jack in base alla porta. Inoltre, la priorità della porta della porta non rilevabile in PA è inferiore rispetto alle porte di rilevazione, altrimenti la linea di rilevamento del jack non verrà mai utilizzata perché le cuffie rotte appaiono sempre connesse.
TrentP

0

Ecco la semplice sostituzione manuale, soluzione alternativa che ha funzionato per me (Mint Debian Edition con Cinnamon):

  1. Apri le impostazioni audio (puoi arrivarci dal widget di controllo del volume o dalle Impostazioni di sistema)
  2. Nella scheda Uscita predefinita, in Dispositivo, fai clic su "Audio incorporato uscita analogica"

Questo è tutto. Hai finito.

Ho trascorso un giorno e mezzo su questo. Sì, è necessario impostare manualmente il dispositivo che si desidera utilizzare ogni volta, ma per me due secondi farlo è meglio di un altro parecchi giorni di ricerca e, nel migliore dei casi, sembra, impostare l'output l'uno o l'altro e cambiare solo con un riavvio . Non ho visto alcuna correzione per il problema alla radice del rilevamento traballante.

È importante sottolineare che il suono di prova ha sempre funzionato per gli heapdphone o l'altoparlante esterno, quindi nel mio caso è una questione di rilevamento traballante. Probabilmente non è questo il caso universale. Ho descritto i sintomi nel mio caso in modo più dettagliato altrove .


0

modificare /etc/pulse/default.pa

commento seguente:

#load-module module-switch-on-port-available
#load-module module-suspend-on-idle

e deseleziona le ultime due righe:

set-default-sink output
set-default-source input

Ora le tue prese Jack saranno attive dopo l'avvio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.