Android: valor recomendado de bufferSizeInBytes en AudioRecord

Estoy utilizando la clase AudioRecord que el constructor es:

AudioRecord( int audioSource, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes) 

En todos (o en la mayoría) de los tutoriales y ejemplos que encuentro en Internet es recomendable establecer bufferSizeInBytes como sigue:

 bufferSizeInBytes= getMinBufferSize ( int sampleRateInHz, int channelConfig, int audioFormat) 

¿Podría alguien decirme la razón?

Necesito hacer la correlación entre los valores que estoy grabando y un patrón. Este patrón es más largo que MinBufferSize. Por lo tanto, debería simplemente aumentar bufferSizeInBytes al valor que prefiero, o es que va a empeorar el rendimiento de AudioRecord.

¿Podría alguien decirme la razón?

Porque lo que devuelve getMinBufferSize para una configuración dada es el tamaño de búfer más pequeño que se le permitirá especificar al crear AudioRecord .

¿Por qué desea el tamaño de memoria intermedia más pequeño posible? Para obtener la menor latencia posible.
Imagine que está haciendo algo como un medidor SPL; No querrás que haya un retraso de un segundo antes de que tu interfaz de usuario reaccione a un cambio en la presión del sonido.

El tamaño del búfer no determina la cantidad de datos que puede solicitar de read() . Está bien solicitar más datos que el tamaño del AudioRecord's ; read() simplemente no volverá hasta que se hayan leído todos los datos que ha solicitado.

  • Grabar con AudioRecord en Android acelera el audio?
  • Errores al grabar sonido en Android
  • Obtener ultrasonido de android usando frecuencia
  • Escritura de datos grabados PCM en un archivo .wav (java android)
  • Codificador AAC de Android MediaCodec
  • Entrada y salida de audio inmediatas Android
  • AudioRecord registra sonido intermitente en Android L Vista previa del desarrollador
  • Mala calidad de sonido al grabar / reproducir sonidos - SDK de Android
  • Android AudioRecord leer siempre devuelve -3 (ERROR_INVALID_OPERATION)
  • AudioRecord de Android vs MediaRecorder para la grabación de audio
  • La inicialización de Android AudioRecord falla cada vez
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.