GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Ubuntu:¿cómo detectar si el cable de audio está conectado?

Estoy usando Ubuntu Lucid (10.04). En mi script de shell que se ejecuta como root, quiero detectar si un cable de audio (conector analógico) está conectado a la computadora portátil o no. ¿Cómo puedo hacer eso? No necesito una solución portátil, necesito algo, sin importar qué tan complicado sea, que funcione en mi computadora portátil.

Respuesta aceptada:

Una forma podría ser usar amixer .

Jack enchufado:

$ amixer -c 0 contents
numid=29,iface=CARD,name='Front Headphone Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
...

Jack no conectado:

$ amixer -c 0 contents
numid=29,iface=CARD,name='Front Headphone Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off
...

Así que para ese específico podría hacer:

amixer -c 0 contents | \
awk -F"," '
$1 == "numid=29" {
    c=1
} c && /: values/ {
   split($0, a, "=")
   print a[2];
   exit
}'

dando salida de on o off .

También se pueden usar comandos y especificar por iface + name etc., por ejemplo:

Obtener lista por:

$ amixer -c 0 controls

Donde -c 0 especifica la tarjeta, no es necesaria si es la predeterminada o solo una. Entonces, por ejemplo:

$ amixer -c 0 cget numid=29,iface=CARD

$ amixer -c 0 cget numid=29,iface=CARD | awk -F"=" 'NR == 3 {print $2;}'

Una vez me encontré con una pieza de software, creo que usaba Tcl/Tk, que mostraba pin-power para todos los puertos en la computadora + mucha otra información de HW. Era una buena pieza de software, pero no puedo volver a encontrarla. He mirado a través de 12 HDD viejos sin suerte. Lo usé para depurar algunos puertos jack. Así que sí, definitivamente es posible sondear el estado de un puerto específico.

Jack es un dolor para buscar en la web debido a JACK. Lo hace casi imposible.

Tengo un código C que hace un sondeo de información de la tarjeta de sonido. Tengo que buscar si puedo encontrarlo.


Ubuntu
  1. Cómo instalar la grabadora de audio simple en Ubuntu 22.04

  2. Personalizar la Terminal en Ubuntu 20.04:¿cómo hacerlo?

  3. ¿Cómo detectar una pérdida de memoria?

  4. ¿Cómo actualizar Pulseaudio a 12.x en Ubuntu 18.04?

  5. ¿Cómo detectar el estado de conexión física de un cable/conector de red?

Cómo instalar Traceroute en Ubuntu

Cómo cambiar la dirección IP en Ubuntu

Cómo vaciar la caché de DNS en Ubuntu

Cómo instalar el reproductor de audio Audacious en Ubuntu

Cómo instalar el escritorio Budgie en Ubuntu

Cómo cambiar el nombre de host en Ubuntu 20.04 LTS