¿El rendimiento de los datos de entrada del micrófono móvil a través del conector de audio?

1

¿Alguien sabe cuántos datos podrían transferirse a través del conector de audio para que la aplicación los procese en bytes?

Me pregunto cuántos botones diferentes podrían mapearse y procesarse usando la entrada de micrófono. (Muchos auriculares con micrófonos utilizan 3 botones: subir / bajar volumen y el botón de llamada)

Todo el procesamiento debe realizarse en tiempo real.

Gracias

    
pregunta Vytautas Butkus

2 respuestas

0

Los 3 botones de auriculares a los que hizo referencia no transmiten información digitalmente, sino que se están señalizando electrónicamente mediante el cambio de resistencia, como se explica aquí: ¿Cómo funcionan los auriculares de control de volumen?

En el caso de los botones de los auriculares, puede decir que la información sobre los botones pulsados se está pasando "fuera de banda"; no ocupa los canales de entrada o salida de audio (excepto, quizás, por un momento, un botón). está deprimido).

La respuesta de " cagrigurleyuk " anterior es incorrecta, además de estar incompleta. Sí, el Theannem de Shannon-Hartley coloca el límite superior de la tasa de bits que puede transferirse sin pérdidas dentro de un ancho de banda determinado, en una SNR determinada.

El ruido de cuantización para un canal digitalizado se modela como una SNR de \ $ 2 ^ Q \ $ (donde Q es la cantidad de bits de resolución), en cuyo caso \ $ B \ cdot \ log_2 \ left (1 + SNR \ derecha) \ cong B \ cdot Q \ \ $, por lo que para los números mencionados anteriormente (ancho de banda de 20 kHz y 12 bits), el límite superior teórico sería 240 kbps (no 500 kbps).

En realidad, en realidad tiene un poco más de ancho de banda (hasta 24 kHz, para una frecuencia de muestreo de 48 kHz), y menos ruido de cuantización (ya que la resolución máxima suele ser de 16 bits), pero es necesario tener más en cuenta fuentes de ruido en la línea que reducen la SNR total (la peor fuente de ruido es probablemente el amplificador).

Finalmente, el número que se origina en Teorema de Shannon-Hartley es, de nuevo, solo una teoría límite superior.

La tasa de bits real que puede alcanzar es una función de los esquemas de modulación y codificación que utiliza, que a su vez son una función de la eficiencia del programa y la potencia de procesamiento disponible (debido a las limitaciones en tiempo real). El poder de procesamiento y la eficiencia del programa nos son desconocidos, por lo que no podemos responder completamente esta pregunta. También se desconocen las capacidades de sus botones o transmisores.

Puedo darte algunos consejos, sin embargo:

  1. Con un diseño adecuado del protocolo de comunicación, es probable que los botones no tengan que enviar datos mientras no se están presionando, por lo que, en realidad, está teóricamente limitado por la cantidad de botones pulsados a la vez , en lugar de la cantidad de botones totales. Por ejemplo, su teclado promedio tiene cientos de teclas, pero solo usa una tasa de transferencia de alrededor de 12kbps.
  2. La eficiencia espectral (una cifra de cuántos bps de rendimiento puede agrupar por Hz de ancho de banda) de varios métodos de modulación digital (o codificación) se enumeran en una tabla en la página 17 de este archivo PDF , para su referencia. Cuanto mayor sea la eficiencia espectral, más complejo será el algoritmo, lo que, en consecuencia, requeriría una mayor capacidad de procesamiento para el rendimiento en tiempo real.
respondido por el Sagie
1

Hay dos factores para determinar la capacidad de información teórica máxima de cualquier canal de comunicaciones, ancho de banda y relación señal / ruido. El Theannem de Shannon-Hartley coloca el límite superior de la tasa de bits para que un canal ruidoso sea:

$$ Velocidad de bits = B * log_2 (1 + SNR) $$

Si asumimos que tiene un ancho de banda perfecto de 20 kHz en el canal de audio para el teléfono inteligente, y 12 bits de resolución, el máximo teórico será de alrededor de ~ 500 Kbps.

Debe tenerse en cuenta que para lograr un valor cercano, esto requerirá cálculos bastante complejos en la demodulación y eso puede muy bien ser el cuello de botella de su sistema.

    
respondido por el deadude

Lea otras preguntas en las etiquetas