Sonido y tiempo.
Publicado: 11 Ago 2022 12:08
Hola.
Cuando analizamos señales, solemos encontrarnos con parámetros que se desvían ligeramente de los valoras nominales esperados, y no siempre podemos descubrir la fuente de ese desvío.
Uno de los componentes que afecta a estos errores es la tarjeta de sonido que usamos para maestrear la señal.
Estas tarjetas, aunque buenas, no son la mejor opción si queremos hacer medidas de precisión. Esto se debe a que los fabricantes hacen mención de los bits, margen dinámico, distorsión armónica etc y se olvidan discretamente del reloj de muestreo.
La velocidad de muestreo tiene unos parámetros principales que son la exactitud, la precisión y la estabilidad.
Un reloj de muestreo es exacto cuando su velocidad real coincide con la nominal. Incluso en tarjetas profesionales es normal que se permita un error de 50 o 100 ppm.
La precisión afecta a la dispersión de las medidas producida por el jitter y otros efectos a corto plazo. No suele ser un problema para nosotros.
Esto hace que la velocidad de muestreo de una tarjeta pueda ser precisa y sin embargo no ser exacta.
La estabilidad no suele ser un problema excepto que se lleven a cabo medidas de horas o incluso de días. En estos casos, es necesario tenerla en cuenta y elegir una tarjeta estable para evitar los errores consiguientes.
El parámetro que más nos afecta es la exactitud, ya que en las medidas tomamos como valor de muestreo el nominal de la tarjeta, y dado que el valor real puede haber sido mayor o menos, estamos introduciendo un error en las medidas que es culpa nuestra. Y ya es complicada la materia como para introducir errores propios.
Dependiendo del hardware usado por el fabricante, los errores pueden variar en función de la velocidad de muestreo y de los canales, por lo que en este caso es necesario calcular el error para cada una de las que usemos.
Los que hayáis digitalizado videos con aquellas capturadoras veteranas, recordareis cuan a menudo se desincronizaba el audio debido a estos errores.
Desgraciadamente, salvo que nos gastemos miles de euros en tarjetas de gama muy alta, no dispondremos de la posibilidad de calibrar o sincronizar el reloj de muestreo, por lo que nuestra única opción es medir el error y corregirlo de forma artesanal.
Se recomienda usar una fuente de referencia con una exactitud mejor que 1x10 -9. Este parámetro se consigue fácilmente si usamos la referencia de tiempo de un GPS, sea la de 1 pps o alguna de las frecuencias disponibles como la de 1 Khz si el equipo lo permite.
A efectos prácticos, hemos realizado algunas pruebas para demostrar estos errores.
La primera prueba consiste en grabar el sonido de un reloj despertador (segundos) y medir su duración real. En este caso ignoramos si el error medido corresponde al reloj o a la tarjeta de sonido, aunque lo mas normal es que ambos componentes colaboren.
En el raster (izquierda)de esta señal observamos un error de -28 us cada s.
Esto corresponde a un error de -28 ppm, lo que esta muy bien pero no es el valor exacto.
En este caso, el factor de corrección es de 0,999972
Una vez aplicada la corrección, dejamos el error en -4 ppm (derecha), lo que esta muy bien para nuestros análisis.
En este caso no sabemos que parte de error corresponde al reloj y parte a la tarjeta. Incluso es posible que si sus errores son contrarios, se complementen para anularse entre ellos.
Para un error de reloj de 50 ppm ( desviación máxima en tarjetas profesionales de calidad), el error real en una velocidad de muestreo de 44100 es de 2,205 Hz, por lo que la velocidad real de muestreo seria de 44102,205
En este caso, vamos a generar una señal de 1000 Hz y aplicar el error, para medirla usando la FFT.
Medida de la señal original usando la FFT con 1 Mpuntos (izquierda).
Medida de la señal con el error de 2,205 pps (derecha).
Ahora calculamos el factor de corrección ( 1000/999,950= 1,000050 ) con lo que obtenemos que el error es de 50 ppm, justo el que habíamos aplicado.
Para usar la FFT es necesario usar una portadora pura y muy estable, como puede ser la señal de 1000 Hz del GPS. También hay que usar una FFT muy grande. En este caso, para poder calcular con un millón de puntos, se uso software propietario. Se obtienen buenos resultados con FFT menores, siempre que se use un buen estimador de frecuencia detectada.
En ambos casos, podemos medir el error de nuestro digitalizador y corregirlo, si procede, para dejarlo en errores menores de 5 ppm, lo que ya es para nota.
EDITADO 18/18/2022
A la vista de las medidas con la tarjeta USB externa, el error de las medidas anteriores se puede atribuir casi en su totalidad a la tarjeta de sonido interna del PC, estando el reloj bueno en un error no mayor de 2s por mes.
Saludos.
Angazu.
Cuando analizamos señales, solemos encontrarnos con parámetros que se desvían ligeramente de los valoras nominales esperados, y no siempre podemos descubrir la fuente de ese desvío.
Uno de los componentes que afecta a estos errores es la tarjeta de sonido que usamos para maestrear la señal.
Estas tarjetas, aunque buenas, no son la mejor opción si queremos hacer medidas de precisión. Esto se debe a que los fabricantes hacen mención de los bits, margen dinámico, distorsión armónica etc y se olvidan discretamente del reloj de muestreo.
La velocidad de muestreo tiene unos parámetros principales que son la exactitud, la precisión y la estabilidad.
Un reloj de muestreo es exacto cuando su velocidad real coincide con la nominal. Incluso en tarjetas profesionales es normal que se permita un error de 50 o 100 ppm.
La precisión afecta a la dispersión de las medidas producida por el jitter y otros efectos a corto plazo. No suele ser un problema para nosotros.
Esto hace que la velocidad de muestreo de una tarjeta pueda ser precisa y sin embargo no ser exacta.
La estabilidad no suele ser un problema excepto que se lleven a cabo medidas de horas o incluso de días. En estos casos, es necesario tenerla en cuenta y elegir una tarjeta estable para evitar los errores consiguientes.
El parámetro que más nos afecta es la exactitud, ya que en las medidas tomamos como valor de muestreo el nominal de la tarjeta, y dado que el valor real puede haber sido mayor o menos, estamos introduciendo un error en las medidas que es culpa nuestra. Y ya es complicada la materia como para introducir errores propios.
Dependiendo del hardware usado por el fabricante, los errores pueden variar en función de la velocidad de muestreo y de los canales, por lo que en este caso es necesario calcular el error para cada una de las que usemos.
Los que hayáis digitalizado videos con aquellas capturadoras veteranas, recordareis cuan a menudo se desincronizaba el audio debido a estos errores.
Desgraciadamente, salvo que nos gastemos miles de euros en tarjetas de gama muy alta, no dispondremos de la posibilidad de calibrar o sincronizar el reloj de muestreo, por lo que nuestra única opción es medir el error y corregirlo de forma artesanal.
Se recomienda usar una fuente de referencia con una exactitud mejor que 1x10 -9. Este parámetro se consigue fácilmente si usamos la referencia de tiempo de un GPS, sea la de 1 pps o alguna de las frecuencias disponibles como la de 1 Khz si el equipo lo permite.
A efectos prácticos, hemos realizado algunas pruebas para demostrar estos errores.
La primera prueba consiste en grabar el sonido de un reloj despertador (segundos) y medir su duración real. En este caso ignoramos si el error medido corresponde al reloj o a la tarjeta de sonido, aunque lo mas normal es que ambos componentes colaboren.
En el raster (izquierda)de esta señal observamos un error de -28 us cada s.
Esto corresponde a un error de -28 ppm, lo que esta muy bien pero no es el valor exacto.
En este caso, el factor de corrección es de 0,999972
Una vez aplicada la corrección, dejamos el error en -4 ppm (derecha), lo que esta muy bien para nuestros análisis.
En este caso no sabemos que parte de error corresponde al reloj y parte a la tarjeta. Incluso es posible que si sus errores son contrarios, se complementen para anularse entre ellos.
Para un error de reloj de 50 ppm ( desviación máxima en tarjetas profesionales de calidad), el error real en una velocidad de muestreo de 44100 es de 2,205 Hz, por lo que la velocidad real de muestreo seria de 44102,205
En este caso, vamos a generar una señal de 1000 Hz y aplicar el error, para medirla usando la FFT.
Medida de la señal original usando la FFT con 1 Mpuntos (izquierda).
Medida de la señal con el error de 2,205 pps (derecha).
Ahora calculamos el factor de corrección ( 1000/999,950= 1,000050 ) con lo que obtenemos que el error es de 50 ppm, justo el que habíamos aplicado.
Para usar la FFT es necesario usar una portadora pura y muy estable, como puede ser la señal de 1000 Hz del GPS. También hay que usar una FFT muy grande. En este caso, para poder calcular con un millón de puntos, se uso software propietario. Se obtienen buenos resultados con FFT menores, siempre que se use un buen estimador de frecuencia detectada.
En ambos casos, podemos medir el error de nuestro digitalizador y corregirlo, si procede, para dejarlo en errores menores de 5 ppm, lo que ya es para nota.
EDITADO 18/18/2022
A la vista de las medidas con la tarjeta USB externa, el error de las medidas anteriores se puede atribuir casi en su totalidad a la tarjeta de sonido interna del PC, estando el reloj bueno en un error no mayor de 2s por mes.
Saludos.
Angazu.