Я пытаюсь читать и понимать аудио в Android. В поисках я наткнулся на эту статью. Здесь он написал код для записи аудио в формате wav. Но есть одна вещь, которую я не совсем понимаю, и это первый цикл его код:
public class ExtAudioRecorder
{
private final static int[] sampleRates = {44100, 22050, 11025, 8000};
public static ExtAudioRecorder getInstanse(Boolean recordingCompressed)
{
ExtAudioRecorder result = null;
if(recordingCompressed)
{
result = new ExtAudioRecorder( false,
AudioSource.MIC,
sampleRates[3],
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT);
}
else
{
int i=0;
do
{
result = new ExtAudioRecorder( true,
AudioSource.MIC,
sampleRates[i],
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT);
} while((++i<sampleRates.length) & !(result.getState() == ExtAudioRecorder.State.INITIALIZING));
}
return result;
Он дает базовую информацию об этом, но я не понимаю этого полностью. Связано ли это как-то с производительностью различных типов Android-устройств? В любом случае, надеюсь, что кто-то может скрасить это для меня :)