Estoy tratando de mezclar SuperpoweredAdvancedAudioPlayers y escribir en un archivo wav. Llamé a recorder->start(path) y recorder->stop() , pero no se escribe nada en el disco. Tengo los permisos de almacenamiento correctos en mi manifiesto. Busqué en Google el código de otras personas y se me ocurrió esto:
Mi proceso:
bool SuperpoweredExample::process(short int *output, unsigned int numberOfSamples) { double masterBpm = players[0]->currentBpm; double msElapsedSinceLastBeat = players[0]->msElapsedSinceLastBeat; uint16_t i; bool silence = true; for (i=rs=0; i<NUMPLAYERS; i++) { if (players[i]->process(stereoBuffer, !silence, numberOfSamples, volume[i] * 0.25, masterBpm, msElapsedSinceLastBeat)) silence = false; } if (!silence) { recorder->process(stereoBuffer, 0, buffersize); } if (!silence) { SuperpoweredFloatToShortInt(stereoBuffer, output, numberOfSamples); } return !silence; }Inicialización:
recorder = new SuperpoweredRecorder(tempPath, samplerate, 1); audioSystem = new SuperpoweredAndroidAudioIO(samplerate, buffersize, false, true, audioProcessing, this, -1, SL_ANDROID_STREAM_MEDIA, buffersize * 2);¿Algunas ideas?
Esto puede suceder en un problema de ruta. Verifique si las rutas que envía son realmente correctas y se pueden escribir.