Resultados 1 al 3 de 3

Audio 4.0 en Debian Squeeze

  1. #1 Audio 4.0 en Debian Squeeze 
    Moderador HH
    Fecha de ingreso
    Nov 2006
    Mensajes
    1.516
    Descargas
    7
    Uploads
    0
    Despues de buscar y rebuscarle las vueltas a la tarjeta de sonido de mi portatil he decidido que me voy a tragar el orgullo de moderador y pediros ayuda:


    Acabo de instalar Debian Squeeze en un portatil con una tarjeta de audio tal que asi:

    raid@RaidMan-AlienWare:~$ lspci |grep Audio
    00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05)

    raid@RaidMan-AlienWare:~$ cat /proc/asound/modules
    0 snd_hda_intel

    raid@RaidMan-AlienWare:~$ lsmod | grep snd
    snd_hda_codec_idt 42481 1
    snd_hda_intel 20019 1
    snd_hda_codec 54244 2 snd_hda_codec_idt,snd_hda_intel
    snd_hwdep 5380 1 snd_hda_codec
    snd_pcm 60503 2 snd_hda_intel,snd_hda_codec
    snd_seq 42881 0
    snd_timer 15582 2 snd_pcm,snd_seq
    snd_seq_device 4493 1 snd_seq
    snd 46446 10 snd_hda_codec_idt,snd_hda_intel,snd_hda_codec,snd_ hwdep,snd_pcm,snd_seq,snd_timer,snd_seq_device
    soundcore 4598 1 snd
    snd_page_alloc 6249 2 snd_hda_intel,snd_pcm
    La tarjeta de Sonido tiene dos salidas MiniJack y una de entrada para un microfono.

    Mi problema es el siguiente: Al conectar dos pares de altavoces a las salidas MiniJack conmuta las entradas, es decir, suena o una u otra. Nunca las dos a la vez. Al desconectar ambas activa los altavoces del portatil.

    Lo que quiero es conseguir que el audio salga por los 4 canales (MiniJack), en lugar de solo por dos.


    He probado mil y una maneras que no me han dado resultado, desde editar el archivo de configuracion de ALSA hasta actualizarlo a la version 1.0.23 (que me dejo sin audio por completo). Ahora mismo el SO esta de base. No tiene absolutamente nada asi que trabajais sobre un SO limpio.


    Acepto cualquier sugerencia para hacer funcionar la tarjeta como quiero.


    Mas datos:

    • Debian Squeeze
    • Gnome 2.30.2
    • PulseAudio NO INSTALADO



    Un saludo y muchas gracias

    PD: Cualquier dato que querais pedidlo
    Mess with the best, die like the rest.


    Hazle a los demas... antes de que te hagan a ti.
    Citar  
     

  2. #2  
    Moderador HH
    Fecha de ingreso
    Nov 2006
    Mensajes
    1.516
    Descargas
    7
    Uploads
    0
    Bueno, por fin he conseguido hacer que suene como me gusta. Ahora os explico.

    Despues de formatear y reformatear, de cargarme el sistema de audio y un monton de jaleos mas, he dado con la solucion:


    Usando esta util herramienta: http://www.alsa-project.org/main/index.php/HDA_Analyzer

    Basta con que bajeis el Py:
    Ponedlo en funcionamiento: (como superusuario o root)
    python run.py

    Y realizando unos sencillos cambios he conseguido no solo que suenen dos pares de altavoces, sino tambien hacer que suenen los 4 externos y los 2 internos del portatil.

    Vereis que en el GUI aparecen una serie de salidas y entradas que podeis editar. En mi caso he tenido que ir a la 1º, 2º y 4º. (La 1º y 2º son los Externos y la 4º los internos.)
    Denominadas den el GUI:
    NODE[0x0a], NODE[0x0b] y NODE[0x0d]

    En la 1º y 2º (NODE[0x0a-b] he marcado en 'Connection List' la opcion
    Audio Output [0x13]
    Y en 'Widget Control' he marcado la opcion
    OUT
    para ambas salidas.



    En el 4º (NODE[0x0d] <-- altavoces internos) he marcado en 'Connection List' la opcion
    Audio Output [0x22]
    Y en 'Widget Control' he marcado la opcion
    OUT
    Tambien es recomendable que marqueis en uno de los dos externos la casilla del Widget Control que dice HP, ya que asi podreis controlar el volumen de uno de ellos con los controles de HeadPhones y el otro con el Front.


    Ahora habra que averiguar como guardar estos cambios... pero eso ya para otro dia ahora voy a ponerme a escuchar musica en 6.0 (algun dia me hare con un subwoofer y los vecinos me echaran)



    Un saludo y espero que os sirva!
    Última edición por RaidMan; 16-02-2011 a las 18:25
    Mess with the best, die like the rest.


    Hazle a los demas... antes de que te hagan a ti.
    Citar  
     

  3. #3  
    Moderador HH
    Fecha de ingreso
    Nov 2006
    Mensajes
    1.516
    Descargas
    7
    Uploads
    0
    Vale, definitivamente soy la ostia buscando y enredando

    Para realizar los cambios desde la consola y despues poder guardarlos bajaremos el siguiente programa:

    HDA-VERB

    Guardadlo donde querais, que vamos a compilarlo y crear un script que lo llame con ciertos parametros.


    Una vez bajado procedemos a descomprimir y compilar:

    tar xfz hda-verb-0.3.tar.gz
    cd hda-verb*
    make
    Y lo copiamos al siguiente directorio:

    cp hda-verb /usr/bin

    Ya esta compilado y listo para utilizarse. Es mas, si desde la consola lo llamais podreis ver los parametros que cambiar:

    raid@RaidMan-AlienWare:~/hda-verb-0.3$ hda-verb

    usage: hda-verb hwdep-device nid verb param
    known verbs:
    GET_STREAM_FORMAT, GET_AMP_GAIN_MUTE, GET_PROC_COEF, GET_COEF_INDEX
    PARAMETERS, GET_CONNECT_SEL, GET_CONNECT_LIST, GET_PROC_STATE
    GET_SDI_SELECT, GET_POWER_STATE, GET_CONV, GET_PIN_WIDGET_CONTROL
    GET_UNSOLICITED_RESPONSE, GET_PIN_SENSE, GET_BEEP_CONTROL
    GET_EAPD_BTLENABLE, GET_DIGI_CONVERT_1, GET_DIGI_CONVERT_2
    GET_VOLUME_KNOB_CONTROL, GET_GPIO_DATA, GET_GPIO_MASK
    GET_GPIO_DIRECTION, GET_GPIO_WAKE_MASK, GET_GPIO_UNSOLICITED_RSP_MASK
    GET_GPIO_STICKY_MASK, GET_CONFIG_DEFAULT, GET_SUBSYSTEM_ID
    SET_STREAM_FORMAT, SET_AMP_GAIN_MUTE, [...]

    etc...
    Y que parametros vamos a modificar??? Pues ese que dice
    SET_PIN_WIDGET_CONTROL
    Como podeis ver cuando usabamos el HDA-Analyzer veiamos que cambiabamos una propiedad de este control (en concreto marcabamos la casilla OUT)

    Para conseguir el HexaDecimal que nos hace falta para poner el valor OUT en los parametros del HDA-VERB usamos el HDA-Analyzer.

    root@RaidMan-AlienWare:/home/raid# python run.py
    Using temporary directory: /tmp/hda-analyzer
    You may remove this directory when finished or if you like to
    download the most recent copy of hda-analyzer tool.
    Downloading file hda_analyzer.py
    Downloading file hda_guilib.py
    Downloading file hda_codec.py
    Downloading file hda_proc.py
    Downloading file hda_graph.py
    Downloading file hda_mixer.py
    Downloaded all files, executing hda_analyzer.py
    [...]
    Una vez abierto vamos a seleccionar nuestras salidas, (en mi caso eran los NODE[0x0a,b,d]) y vamos a marcar OUT en Widget Control.

    Ahora en las pestañas de arriba seleccionamos
    Text Dump
    Y nos solatara algo tal que asi:
    Node 0x0a [Pin Complex] wcaps 0x400581: Stereo
    Pincap 0x0001001c: OUT HP EAPD Detect
    EAPD 0x2: EAPD
    Pin Default 0x0421401f: [Jack] HP Out at Ext Right
    Conn = 1/8, Color = Green
    DefAssociation = 0x1, Sequence = 0xf
    Pin-ctls: 0xc0: OUT HP
    Unsolicited: tag=0x01, enabled=1
    Power: setting=D0, actual=D0
    Connection: 4
    0x13 0x14* 0x1c 0x22
    Se nota cual es la que nos interesa, no??

    El valor que ha tomado es
    0xc0
    Asi que ya tenemos el valor que le daremos al parametro SET_PIN_WIDGET_CONTROL.

    Ahora creamos nuestro script:

    /usr/bin/hda-verb /dev/snd/hwC0D0 0x0a SET_PIN_WIDGET_CONTROL 0xc0
    /usr/bin/hda-verb /dev/snd/hwC0D0 0x0b SET_PIN_WIDGET_CONTROL 0xc0
    /usr/bin/hda-verb /dev/snd/hwC0D0 0x0d SET_PIN_WIDGET_CONTROL 0x40
    Ahora viene el problema. Para que arranque al inicio y al estar modificando un archivo del sistema debe arrancar con ciertos privilegios, asi que podemos copiarlo al final de alguno de los archivos que se encuentran en:
    /etc/init.d
    Es un apaño de mierda, pero no queda otra.

    Yo he editado el archivo rc.local:
    root@RaidMan-AlienWare:/home/raid/# gedit /etc/init.d/rc.local
    Y lo he pegado al principio del todo. De esta manera ejecutara el HDA-VERB y cambiara esos parametros de la configuracion del sonido.


    Ahora solo queda reiniciar y ver que pasa...

    En el caso de que se os fastidie el sonido o algo sencillamente eliminad esas lineas del archivo que editasteis y probad con otros valores en Hexadecimal y sobretodo aseguraos de estar viendo el valor HEX para el NODE correcto



    Un saludo

    PD: Ni que decir tiene que muchas de estas modificaciones hay que hacerlas como ROOT.
    Última edición por RaidMan; 23-02-2011 a las 18:50
    Mess with the best, die like the rest.


    Hazle a los demas... antes de que te hagan a ti.
    Citar  
     

Temas similares

  1. CD de Audio a ISO
    Por tacvbo en el foro MULTIMEDIA
    Respuestas: 8
    Último mensaje: 04-12-2011, 18:22
  2. Debian 6 A.K.A "Squeeze"
    Por ABODUJANA en el foro LINUX - MAC - OTROS
    Respuestas: 1
    Último mensaje: 10-02-2011, 14:15
  3. audio en el pc
    Por xofer en el foro WINDOWS
    Respuestas: 2
    Último mensaje: 14-06-2008, 01:33
  4. DVD Squeeze???
    Por Lagarto #2 en el foro MULTIMEDIA
    Respuestas: 4
    Último mensaje: 05-04-2003, 08:03
  5. USB Audio In u otra forma de meter audio
    Por Dr_Silverman en el foro HARDWARE
    Respuestas: 0
    Último mensaje: 21-06-2002, 18:54

Marcadores

Marcadores