Paso 3: Grabar un audio
En cuanto a tu teléfono Android, el lector cuadrado es simplemente un micrófono. Así que para obtener datos de una tarjeta, tenemos que grabar audio. Consulte otros documentación de Android (como este tutorial: http://eurodev.blogspot.com/2009/09/raw-audio-manipulation-in-android.html) para obtener instrucciones detalladas, o el uso RhombusLib (ver enlaces al final).Aquí está algo de código java para iniciar la grabación de audio en una aplicación Android:
AudioRecord audioRecord = nuevo AudioRecord (MediaRecorder.AudioSource.MIC,
frecuencia, channelConfiguration,
audioEncoding, bufferSize);
audioRecord.startRecording();
Durante la grabación, debemos continuamente leer datos de la grabadora y lo coloca en un búfer.
Crear un DataOutputStream para escribir los datos de audio
ByteArrayOutputStream os = new ByteArrayOutputStream();
BufferedOutputStream bos = nuevo BufferedOutputStream(os);
DataOutputStream dos = new DataOutputStream(bos);
bufferVal corta;
corto [] buffer = nuevo corto [bufferSize];
{while(Recording)}
bufferReadResult = audioRecord.read (buffer, 0, bufferSize);
para (int i = 0; i < bufferReadResult; i ++) {}
bufferVal = buffer [i];
dos.writeShort(buffer[i]);
}
}
dos.Close();
Byte [] audioBytes = os.toByteArray();
El código anterior es extraído y simplificado de RhombusLib. Después de la grabación, tendrás una matriz de bytes que representan las muestras del micrófono, listos para ser analizados.