Hola Estereófilo, respondiendo a tu pregunta en Linux ocurre como en Windows. Suele haber una capa de en el SO encargada de "mezclar" sonidos simultáneos, lo cual tiene su utilidad en le día a día, pero no es útil si quieres escuchar música.
En función de que uses: KDE, GNOME, etc esta tarea la hacen sus demonios de sonido respectivos aRts, oss, esd...
Hace mucho que no uso un Linux en un sitema real, solo virtualizados, pero quero que esto se podía saltar si en tu programa reproductor multimedia seleccionas una capa a mas bajo nivel como salida de audio y que "creo" tanía control exclusivo sobre el hardware:
ALSA (como KS, WASAPI en win).
En MPlayer y Amarok se podía seleccionar ALSA como salida, pero tengo perdida la pista a Linux en estas cosas.
¿Qué reproductor usas?
Ahora las dudas que tienes y que cada poco salen en el foro acerca del tratamiento del sonido desde el fichero hasta la salida analógica.
El procesamiento del audio en el campo digital (como números) lo puedes agrupar en 5 bloques, por el orden en que se van aplicando:
1.- Programa reproductor multimedia:Aqui se pueden aplicar desde resamplers (Secret Rabit Code, SoX...) hasta equalización.
2.- Capa de mezcla del Sistema OperativoPara mezclar dos secuencias de audio simultaneamente
3.- Drivers del DAC/tarjeta de sonidoResample si el dispositivo esta configurado para trabajar a una frecuencia distinta de la secuencia de audio que le proporcionan
4.- DSP (procesador digital) en DAC/tarjeta sonidoEs un resample de lo que llega al aparato a una frecuencia mas alta (y habitualmente lleva un filtro pasabaja). Suele ser una funcionalidad extra en algunos DAC y puede deshabilitarse.
5.- Oversampling y pasabaja en el chip DAC (el que realiza la conversion de digital a analógico, no el aparto entero)
Se utiliza para alejar las "imagenes" (artefactos "raros") generadas en la conversión digital a analógico, del rango audible.
Del 1 al 3 son software que se ejecuta en tu PC, del 4 al 5 ocurre en el DAC/tarjeta de sonido (y hasta puedes considerarlo software tambien). Se van ejecutando en orden, del 1 al 5, aunque puedes saltarte algunos.
Contestando a tus dudas:
-
La capa 2 (mezclador) te la saltas en Windows con KS/SAIO/WASAPI y el Linux "creo" que seleccionado la salida ALSA.
Deseable saltársela.
-
La capa 3 (driver) es una funcionalidad algo molesta de algunas tarjetas de sonido basadas en chip Creative X-Fi (Creative, Auzentech) o C-Media (Auzentech, Xonar, etc). En vez de detectar el driver la frecuencia de muestreo de lo que le llega y cambiar su modo de trabajo si estaba configurado a una distinta, la resamplea (solo si es distinta).
Esta te la puedes saltar usando el modo "creación" o similar (no me acuerdo) en las que lleven X-Fi, o usando ASIO en las C-MEDIA
Ojo, que este procesamiento adicional SOLO ocurre si las frecuehcias de muestreo son distintas. Si lleva una secuencia a 44.1LHz y esta configurado el panel de control de la tarjeta a 44.1 no hay resampleo. Si estuviera a 48 o 96 si.
-
La capa 1 (programa reproductor multimedia) puede ser útil, no se puede descartar a la ligera y depende de tus necesidades. Sirve para:
--- DSP, efectos, etc
--- Ecualización de sala o auriculares, si lo necesitas
--- Resampleo cuando la frecuencia de muestreo del archivo de música no es soportada por los drivers de tu DAC/tarjeta de sonido
El caso típico son los 88.2KHz. Si la tarjeta o DAC sólo admiten 44.1/48/96/192, en cuento les pases 88.2 sin resample previo (capas 2 y 3) se va a quejar, dará error y no funcionará. Aqui entran los resamplers, SRC, SoX, etc. Le dices al programa que convierta "todo" a una frecuencia determinada, por seguir con el ejemplo a 96KHz.
Para mi gusto sólo tiene sentido en ese caso, y si el programa te permite elegir que algoritmo de resample quieres, mejor. A oido no distingo entre SoX y SRC.
Resumen "software": Saltarse en lo posible las capas 2 y 3, y aplicar la 1 sólo si la necesitas ya que no vas a ganar nada como veremos a continuación.
Queda ocuparse de la
capa 4 y 5 "en el aparato" que trabajan al unísono y que están presentes en cualquier aparato moderno (NOS aparte).
En alguna etapa de la conversión digital a anológico, se construye una primera versión de la señal analógica mediante "pulsos rectangulares" ( señal en escalera ) en vez de como dice exactamnet el teorema de Nyquist. Esta primera versión de la señal analógica es igual a la señal deseada + una serie de ruido o "imagenes" a frecuencias mas altas de las que porta la señal que se desea reconstruir en analógico.
Este ruido de alta frecuencia se puede eliminar con un filtro pasabaja, lo que ocurre es que si las "imágenes" están próximas a la señal analógica que deseamos reconstruir, el diseño del filtro debe ser mas complicado y puedes acabar modificando la señal original (como les pasa a muchos DAC externos, CDplayers y a algunas tarjetas de sonido).
Para evitarlo, en el aparato (DAC o tarjeta) se hace un truco: el upsampling. Se convierte la secuencia de audio en digital que llega al aparato en a otra a 2x, 4x, 8x veces su frecuencia de muestreo. Así cuando se convierta a analógico en la etapa intermedia mediante pulsos rectangulares, el ruido de alta frecuencia estará "lejos" de las frecuencias de la señal original. Como extra tras el upsampling y aún en digital (como números) se suele aplicar un filtro digital pasabaja para quitar cualquier frecuencia extra añadida en el proceso.
Hasta aquí creo que se entiende. Esta labor la realiza la capa 5, el chip DAC (a poco "moderno" que sea).
Decía antes que la capa 4 (no siempre presente) y 5 trabajan al unísono. Esto es debido a que muchos fabricantes de DACs externos prefieren utilizar sus propios algoritmos (operaciones matemáticas) para el upsampling y pasabaja, asi que incluyen en el DAC un DSP, que es como una mini CPU específica, con los programas para hacer el upsampling y pasabaja en su firmware (y por tanto actualizables).
Si el fabricante utiliza un DSP, el chip DAC puedes estar configurado para no ejecutar nada de la capa 5 (upsampling+pasabaja) porque ya lo hace el DSP. El chip DAC hará otras cosas segun su aquitectura interna (modulador), pero eso puede verse otro dia.
El fabicante suele poner un botón en los DAC externos para habilitar/desabilitar su DSP, usualmente llamado "upsampling" y si lo deshabilitas, se aplica el upsampling y pasabaja en la capa 5 del chip DAC.
Ahí tienes explicado el proceso entero Estereófilo, que te podemos resumir en:
Capa 1 (según las limitaciones de tu equipo) -> Capa 2 y 3, EVITAR -> Capa 4 (dependerá de gustos y fabricante) -> Capa 5 (deshabilitada si activa la 4)
En los
DAC NOS (no oversampling) que menciona D2Cowones, no suele haber capa 4 y 5 y eso es una involución. Sueen ser DAC antiguos y de prestaciones mucho mas pobres que los actuales y su presunta buena prensa se basa en una idea incorrecta de la respuesta a impulso en el dominio digital.
En mi opinión son aparatos a evitar: mas ruido, peores prestaciones y mayor dificultad para retirar las imágenes de alta frecuencia generadas en la conversión digital a analógica.
Lo demás, referido al oversampling, resamplig, NOS y tal, es "humo": Se van a aplicar en la capa 4 o la 5.
Excluyendo los errores añadidos por protocolos como SPDIF y USB síncrono, o los bugs en los drivers (software), la calidad de la señal analógica obtenida al final, conocido que se ha de evitar en el dominio digital, dependerá en su mayor medida del buen hacer del fabricante (la electrónica, vaya) de la tarjeta de sonido y DAC (el hardware de la capa 5).
Espero haberte ayudado y perdona el tocho ^-^
Un saludo.
Edito, que se me olvidaba:
CitarY una última cuestión: si el DAC sólo alcanza 24bit / 96Khz, ¿serviría de algo resamplear previamente el audio hasta 192Khz con Secret Rabbit Code?
No sirve de nada, es mas, si o configuras con una salida tipo bitperfect (KS/WASPI/ASIO/¿ALSA?) no te va a funcionar.
Es mas, tratar de resamplear 44.1 en tu reproductor a 96Khz que soporte el DAC (visto lo que ocurre en la capa 4 y 5) no servirá de mucho o empeorará el resultado, ya que el DAC y DSP tendrán menos margen en su oversampling. El upsampling en la capa 1 tiene la finalidad que te comenté, la compatibilidad y/o el añadir algún tipo de efecto al sonido (EQ por ejemplo) que puedan beneficiarse de un upsampling.
Y si te fijas en las especificaciones de cualquier DAC moderno, a mayor frecuencia trabajan ligeramente peor (especialmente a 192).
Edito 2: CitarSi uno quiere realmente caldad de sonido con el PC como fuente, la mejor opción sería comprarse algún tipo de producto dedicado. Algo así:
http://www.auriculares.org/foro/index.php/topic,6626.msg77636.html#msg77636
Como ya digo en el link, el aparato ese es un robo en precio: huir.
No, si no decía que los recomendaras.
Sobre DACs Oversampling peores que los R2R, los SDM 1bit de las Realtek sin ir muy lejos... o los aun peores de VIA. Quiero decir que una arquitectura aunque sea decente no te libra de tener que hacer una implementación económica con resultados limitados.
Con DAC modernos me refería a cualquier 5bit-SDM moderno tipo los de Texas Instruments, AKM, ESS, etc. Bastante menos de $10 por chip y a ver que R2R se los acercan.
Sobre lo del Audio-GD ese aparato es un DSP, su salida alimentará a un chip DAC, y dependerá del DAC si sigue lo habitual o es NOS. Así a primera vista, no he visto los PDFs de servido de este DSP, también puede que el DSP indique al DAC la configuración puesta en sus jumper.
Aún así, que puedas deshabilitar capa 4 (DSP off) y la capa 5 (NOS) tienes el mismo problema de los NOS que comentaba. A mí no me gustan y son menos precisos que la gama alta (y barata!!) de los otros, pero eso no quita que haya gente que le suenen bien.
Esto es como los auris Denon vs Grado vs HD-650 o el vinilo. Las limitaciones están ahí, pero a gustos no hay quien puedo y son los que deben mandar.
¿Qué te pasaba en el PC para tener que hacer eso que comentas D2Cowones? :-\