Este fin de semana vimos con unos amigos la versión ripeada del DVD de “Batman: The Dark Knight”. Peliculón. Ya la habíamos visto en el cine, y habíamos disfrutado del film con sonido 3D envolvente de alta definición y queríamos repetir la experiencia. Uno de mis amigos trajo su “Cine en casa” (Home Theatre) e intentamos verla con sonido 5.1.
ESPECTACULAR. Entonces me dije “como obtengo el sonido 5.1 en mi Ubuntu?”, ya que no habia tenido la necesidad de usarlo, por lo cual, jamás lo había intentado. Después de googlear y buscar en los foros de Ubuntu, aparentemente lo encontre. Advierto que NO SE si es la solución definitiva, pero yo logré sonido 5.1 en mi Ubuntu Hardy Heron.
Para empezar, debemos contar con la seguridad de que TENEMOS una placa de sonido que soporta 6 canales o más! Tengo una placa madre Asus M2N-VM DVI. Mi tarjeta de sonido es, segun lspci : nVidia Corporation MCP67 High Definition Audio.
Pero se identifica en la info de la motherboard como Realtek ALC662 High Definition Audio 6-Channel CODEC con soporte S/PDIF y detección de JACKs.
Me basé en este tutorial y en este otro. Este último parece haber dado la solución. Procedemos asi:
Antes que nada, identifica el codec, necesario por el módulo alsa-base, para activar las posibilidades HD de tu placa de sonido. En terminal:
aplay -l cat /proc/asound/card0/codec#* | grep Codec
A continuación obtendras los datos de tu placa de sonido. Yo obtuve las siguientes salidas:
**** Lista de PLAYBACK Dispositivos Hardware **** tarjeta 0: NVidia [HDA NVidia], dispositivo 0: ALC662 Analog [ALC662 Analog] Subdispositivos: 0/1 Subdispositivo #0: subdevice #0 tarjeta 0: NVidia [HDA NVidia], dispositivo 1: ALC662 Digital [ALC662 Digital] Subdispositivos: 1/1 Subdispositivo #0: subdevice #0 Codec: Realtek ALC662 rev1
Ahora, editamos las opciones de /etc/modprobe.d/alsa-base, con el siguiente comando:
gksudo gedit /etc/modprobe.d/alsa-base
Modifica (o agrega) la siguiente linea con el modelname = apropiado, según la lista que se muestra más abajo.
options snd-hda-intel model=modelname
Lista de modelnames según tu CODEC:
(si tu codec no aparece, verifica en ESTA LISTA)
Module snd-hda-intel
--------------------
Model name Description
---------- -----------
ALC880
3stack 3-jack in back and a headphone out
3stack-digout 3-jack in back, a HP out and a SPDIF out
5stack 5-jack in back, 2-jack in front
5stack-digout 5-jack in back, 2-jack in front, a SPDIF out
6stack 6-jack in back, 2-jack in front
6stack-digout 6-jack with a SPDIF out
w810 3-jack
z71v 3-jack (HP shared SPDIF)
asus 3-jack (ASUS Mobo)
asus-w1v ASUS W1V
asus-dig ASUS with SPDIF out
asus-dig2 ASUS with SPDIF out (using GPIO2)
uniwill 3-jack
fujitsu Fujitsu Laptops (Pi1536)
F1734 2-jack
lg LG laptop (m1 express dual)
lg-lw LG LW20/LW25 laptop
tcl TCL S700
clevo Clevo laptops (m520G, m665n)
medion Medion Rim 2150
test for testing/debugging purpose, almost all controls can be
adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
auto auto-config reading BIOS (default)
ALC260
hp HP machines
hp-3013 HP machines (3013-variant)
fujitsu Fujitsu S7020
acer Acer TravelMate
will Will laptops (PB V7900)
replacer Replacer 672V
basic fixed pin assignment (old default model)
test for testing/debugging purpose, almost all controls can
adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
auto auto-config reading BIOS (default)
ALC262
fujitsu Fujitsu Laptop
hp-bpc HP xw4400/6400/8400/9400 laptops
hp-bpc-d7000 HP BPC D7000
hp-tc-t5735 HP Thin Client T5735
hp-rp5700 HP RP5700
benq Benq ED8
benq-t31 Benq T31
hippo Hippo (ATI) with jack detection, Sony UX-90s
hippo_1 Hippo (Benq) with jack detection
sony-assamd Sony ASSAMD
ultra Samsung Q1 Ultra Vista model
lenovo-3000 Lenovo 3000 y410
basic fixed pin assignment w/o SPDIF
auto auto-config reading BIOS (default)
ALC267/268
quanta-il1 Quanta IL1 mini-notebook
3stack 3-stack model
toshiba Toshiba A205
acer Acer laptops
dell Dell OEM laptops (Vostro 1200)
zepto Zepto laptops
test for testing/debugging purpose, almost all controls can
adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
auto auto-config reading BIOS (default)
ALC269
basic Basic preset
ALC662/663
3stack-dig 3-stack (2-channel) with SPDIF
3stack-6ch 3-stack (6-channel)
3stack-6ch-dig 3-stack (6-channel) with SPDIF
6stack-dig 6-stack with SPDIF
lenovo-101e Lenovo laptop
eeepc-p701 ASUS Eeepc P701
eeepc-ep20 ASUS Eeepc EP20
m51va ASUS M51VA
g71v ASUS G71V
h13 ASUS H13
g50v ASUS G50V
auto auto-config reading BIOS (default)
ALC882/885
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack digital with SPDIF I/O
arima Arima W820Di1
targa Targa T8, MSI-1049 T8
asus-a7j ASUS A7J
asus-a7m ASUS A7M
macpro MacPro support
mbp3 Macbook Pro rev3
imac24 iMac 24'' with jack detection
w2jc ASUS W2JC
auto auto-config reading BIOS (default)
ALC883/888
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack digital with SPDIF I/O
3stack-6ch 3-jack 6-channel
3stack-6ch-dig 3-jack 6-channel with SPDIF I/O
6stack-dig-demo 6-jack digital for Intel demo board
acer Acer laptops (Travelmate 3012WTMi, Aspire 5600, etc)
acer-aspire Acer Aspire 9810
medion Medion Laptops
medion-md2 Medion MD2
targa-dig Targa/MSI
targa-2ch-dig Targs/MSI with 2-channel
laptop-eapd 3-jack with SPDIF I/O and EAPD (Clevo M540JE, M550JE)
lenovo-101e Lenovo 101E
lenovo-nb0763 Lenovo NB0763
lenovo-ms7195-dig Lenovo MS7195
haier-w66 Haier W66
3stack-hp HP machines with 3stack (Lucknow, Samba boards)
6stack-dell Dell machines with 6stack (Inspiron 530)
mitac Mitac 8252D
clevo-m720 Clevo M720 laptop series
fujitsu-pi2515 Fujitsu AMILO Pi2515
auto auto-config reading BIOS (default)
ALC861/660
3stack 3-jack
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack with SPDIF I/O
3stack-660 3-jack (for ALC660)
uniwill-m31 Uniwill M31 laptop
toshiba Toshiba laptop support
asus Asus laptop support
asus-laptop ASUS F2/F3 laptops
auto auto-config reading BIOS (default)
ALC861VD/660VD
3stack 3-jack
3stack-dig 3-jack with SPDIF OUT
6stack-dig 6-jack with SPDIF OUT
3stack-660 3-jack (for ALC660VD)
3stack-660-digout 3-jack with SPDIF OUT (for ALC660VD)
lenovo Lenovo 3000 C200 & ASUS X20SG, ASUS U1E
dallas Dallas laptops, Toshiba satellite L30-106
hp HP TX1000
auto auto-config reading BIOS (default)
CMI9880
minimal 3-jack in back
min_fp 3-jack in back, 2-jack in front
full 6-jack in back, 2-jack in front
full_dig 6-jack in back, 2-jack in front, SPDIF I/O
allout 5-jack in back, 2-jack in front, SPDIF out
auto auto-config reading BIOS (default)
AD1882
3stack 3-stack mode (default)
6stack 6-stack mode
AD1884A / AD1883 / AD1984A / AD1984B
desktop 3-stack desktop (default)
laptop laptop with HP jack sensing
mobile mobile devices with HP jack sensing
thinkpad Lenovo Thinkpad X300
AD1884
N/A
AD1981
basic 3-jack (default)
hp HP nx6320
thinkpad Lenovo Thinkpad T60/X60/Z60
toshiba Toshiba U205
AD1983
N/A
AD1984
basic default configuration
thinkpad Lenovo Thinkpad T61/X61
dell Dell T3400
AD1986A
6stack 6-jack, separate surrounds (default)
3stack 3-stack, shared surrounds
laptop 2-channel only (FSC V2060, Samsung M50)
laptop-eapd 2-channel with EAPD (Samsung R65, ASUS A6J)
laptop-automute 2-channel with EAPD and HP-automute (Lenovo N100)
ultra 2-channel with EAPD (Samsung Ultra tablet PC)
AD1988/AD1988B/AD1989A/AD1989B
6stack 6-jack
6stack-dig ditto with SPDIF
3stack 3-jack
3stack-dig ditto with SPDIF
laptop 3-jack with hp-jack automute
laptop-dig ditto with SPDIF
auto auto-config reading BIOS (default)
Conexant 5045
laptop-hpsense Laptop with HP sense (old model laptop)
laptop-micsense Laptop with Mic sense (old model fujitsu)
laptop-hpmicsense Laptop with HP and Mic senses
benq Benq R55E
test for testing/debugging purpose, almost all controls
can be adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
Conexant 5047
laptop Basic Laptop config
laptop-hp Laptop config for some HP models (subdevice 30A5)
laptop-eapd Laptop config with EAPD support
test for testing/debugging purpose, almost all controls
can be adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
Conexant 5051
laptop Basic Laptop config (default)
hp HP Spartan laptop
STAC9200
ref Reference board
dell-d21 Dell (unknown)
dell-d22 Dell (unknown)
dell-d23 Dell (unknown)
dell-m21 Dell Inspiron 630m, Dell Inspiron 640m
dell-m22 Dell Latitude D620, Dell Latitude D820
dell-m23 Dell XPS M1710, Dell Precision M90
dell-m24 Dell Latitude 120L
dell-m25 Dell Inspiron E1505n
dell-m26 Dell Inspiron 1501
dell-m27 Dell Inspiron E1705/9400
gateway Gateway laptops with EAPD control
panasonic Panasonic CF-74
STAC9205/9254
ref Reference board
dell-m42 Dell (unknown)
dell-m43 Dell Precision
dell-m44 Dell Inspiron
STAC9220/9221
ref Reference board
3stack D945 3stack
5stack D945 5stack + SPDIF
intel-mac-v1 Intel Mac Type 1
intel-mac-v2 Intel Mac Type 2
intel-mac-v3 Intel Mac Type 3
intel-mac-v4 Intel Mac Type 4
intel-mac-v5 Intel Mac Type 5
macmini Intel Mac Mini (equivalent with type 3)
macbook Intel Mac Book (eq. type 5)
macbook-pro-v1 Intel Mac Book Pro 1st generation (eq. type 3)
macbook-pro Intel Mac Book Pro 2nd generation (eq. type 3)
imac-intel Intel iMac (eq. type 2)
imac-intel-20 Intel iMac (newer version) (eq. type 3)
dell-d81 Dell (unknown)
dell-d82 Dell (unknown)
dell-m81 Dell (unknown)
dell-m82 Dell XPS M1210
STAC9202/9250/9251
ref Reference board, base config
m2-2 Some Gateway MX series laptops
m6 Some Gateway NX series laptops
pa6 Gateway NX860 series
STAC9227/9228/9229/927x
ref Reference board
3stack D965 3stack
5stack D965 5stack + SPDIF
dell-3stack Dell Dimension E520
dell-bios Fixes with Dell BIOS setup
STAC92HD71B*
ref Reference board
dell-m4-1 Dell desktops
dell-m4-2 Dell desktops
STAC92HD73*
ref Reference board
dell-m6 Dell desktops
STAC9872
vaio Setup for VAIO FE550G/SZ110
vaio-ar Setup for VAIO AR
power_save and power_save_controller options are for power-saving
mode. See powersave.txt for details.
Note 2: If you get click noises on output, try the module option
position_fix=1 or 2. position_fix=1 will use the SD_LPIB
register value without FIFO size correction as the current
DMA pointer. position_fix=2 will make the driver to use
the position buffer instead of reading SD_LPIB register.
(Usually SD_LPLIB register is more accurate than the
position buffer.)
NB: If you get many "azx_get_response timeout" messages at
loading, it's likely a problem of interrupts (e.g. ACPI irq
routing). Try to boot with options like "pci=noacpi". Also, you
can try "single_cmd=1" module option. This will switch the
communication method between HDA controller and codecs to the
single immediate commands instead of CORB/RIRB. Basically, the
single command mode is provided only for BIOS, and you won't get
unsolicited events, too. But, at least, this works independently
from the irq. Remember this is a last resort, and should be
avoided as much as possible...
MORE NOTES ON "azx_get_response timeout" PROBLEMS:
On some hardwares, you may need to add a proper probe_mask option
to avoid the "azx_get_response timeout" problem above, instead.
This occurs when the access to non-existing or non-working codec slot
(likely a modem one) causes a stall of the communication via HD-audio
bus. You can see which codec slots are probed by enabling
CONFIG_SND_DEBUG_VERBOSE, or simply from the file name of the codec
proc files. Then limit the slots to probe by probe_mask option.
For example, probe_mask=1 means to probe only the first slot, and
probe_mask=4 means only the third slot.
The power-management is supported.
En mi caso particular, mi codec es ALC662 , por lo cual, según el tipo de rack de conectores que tengo, elegi el modelname “3stack-6ch-dig“. Esto significa 3 conectores, que dan 6 canales, y con soporte SPDIF . Puedes averiguar esto, simplemente viendo la parte trasera de tu gabinete, donde están los conectores de audio, o buscando información acerca de tu placa madre, en el sitio web de fabricante. Entonces, agregué:
options snd-hda-intel model=3stack-6ch-dig
Guarda el archivo y Reinicia Ubuntu (seguramente no es necesario si se sabe reiniciar todos los servidores de sonido, los modulos implicados, y los procesos necesarios, pero como no lo se, simplemente reinicio)
Al volver, al hacer doble clic en el CONTROL DE VOLUME de Gnome, tengo las opciones para activar los 6 canales. Mis películas codificadas en AC3 y DVDs comerciales, ya funcionan con sonido 5.1!!! ![]()
Una vez que hayas enchufado apropiadamente todos los parlantes en sus respectivos conectores y esté todo listo, puedes testear que todos los canales estén funcionando, desde la terminal con:
speaker-test -Dplug:surround51 -c6 -l1 -twav
Oirás una voz sonando en cada uno de los parlantes, según su posición. Me hice un lanzador en un panel, con ese mismo comando y lo titulé Test 5.1.
Todo listo: a disfrutar!!!



Domingo 30 , Noviembre 2008 a las 17:35
Mañana, cuando vuelva el ancho de banda a mi blog, fijate que hay un tutorial sobre como reproducir musica estereo por todos los canales. Te va a gustar
Domingo 30 , Noviembre 2008 a las 19:26
Si, lo puse en practica, apenas tuve el 5.1. Lo había encontrado en los COMOs de Ubuntu-AR ! Saludos.
Domingo 30 , Noviembre 2008 a las 23:04
[...] caso de que no tu ubuntu no reproduzca sonido a la primera seguir este pequeño tutorial, o este [...]
Martes 7 , Abril 2009 a las 11:36
Funcionando el mismo principio, en Jaunty jackalope, donde obtuve sonido 5.1 usando este mismo tutorial
Viernes 15 , Mayo 2009 a las 16:07
tsss… ubo algunos problemillas…
pero ya me jalo el sonido al 100%
era todo lo ke buskaba y me faltaba
excelente tutorial
muchisimas gracias.!
Miércoles 27 , Mayo 2009 a las 14:58
[...] el arranque, pero todas las funciones de audio pueden ser activables manualmente, como se explica aqui. En resumen, el rendimiento general y uso es impecable. Extras post instalación? Algunos tweaks [...]