Cómo evitar la limitación de datos con la transmisión de códec de audio

0

Estoy muestreando un flujo de audio entrante a 8Ksps. Tengo un códec que toma ~ 1.6ms para codificar un paquete de datos (80 muestras) en un paquete codificado (5 muestras). A este ritmo, obtengo 8000 * 1.662e-3 ~ = 13 muestras en cada ciclo de codificación. Pero necesito 80 muestras en cada ciclo. ¿Cómo mantengo el flujo continuo? Mi única suposición es reducir la velocidad de bits del flujo de codificación saliente, pero no estoy seguro de cómo calcular esto en general, de modo que los búferes del lado entrante no se llenen y los búferes del lado receptor no se queden privados de hambre. Y además, ¿no reduce la velocidad de bits el punto de codificación en primer lugar?

Esto parece ser un principio básico de la transmisión, pero no puedo encontrar información sobre los métodos. Gracias por cualquier ayuda!

    
pregunta ballaw

1 respuesta

1

El propósito de la codificación es reducir la velocidad de bits requerida de la secuencia de datos codificada. Por lo que parece, su codificador lo está reduciendo en un factor de 16, por lo que su flujo de datos de salida debería ser de 500 sps o 512 sps (dependiendo de si "K" significa 1000 o 1024). Si alimenta eso a un decodificador coincidente, debe convertir esa secuencia en una secuencia de datos de 8Ksps que luego puede emitirse como audio.

Para evitar que el receptor se muera de hambre o se exceda, por ejemplo. está operando a 8,000.1sps mientras que el remitente está operando a 7,999sps, puede ser conveniente que el CODEC de reproducción incluya un búfer, mida la velocidad entrante y ajuste su velocidad ligeramente según la velocidad entrante y la cantidad de datos en el búfer .

    
respondido por el supercat

Lea otras preguntas en las etiquetas