Phonegap Media API - Gravar e reproduzir áudio - Android

Espero gravar um pouco de áudio e depois poder reproduzi-lo. É importante para mim poderpersonalizar a interface de registro.

No exemplo abaixo, após a gravação, recebo uma duração de -1 e nenhum áudio é reproduzido.

Passo 1. AdicionadoPlug-in de mídia

cordova plugin add org.apache.cordova.media

Passo 2. My Code

Nota src é "amr" conforme solicitado nos documentos.

Os dispositivos Android gravam áudio no formato Adaptive Multi-Rate. O arquivo especificado deve terminar com uma extensão .amr.

No entanto, "myrecording.amr" não existe na minha estrutura de arquivos, pois espero que seja criado.

Javascript

var data = {
  rec: ""
};
$scope.record = function(){
    console.log('record');
    var src = "myrecording.amr";
    data.rec = new Media(src,
    function() {
      console.log("recordAudio():Audio Success");
    },

    function(err) {
      console.log("recordAudio():Audio Error: "+ err.code);
    });

    data.rec.startRecord();
}

$scope.stopRecording = function(){
    console.log('stop');
    data.rec.stopRecord();
}

$scope.playRecording = function(){
    console.log('play');
    data.rec.play();
}

$scope.logDuration = function(){
    console.log(data.rec.getDuration());
}

HTML

<button ng-click="record()">Record</button>
<button ng-click="stopRecording()">Stop Record</button>
<button ng-click="playRecording()">Play Record</button>
<button ng-click="logDuration()">Log Duration</button>

Saída de cima

Nenhum áudio é reproduzido quando clico em reproduzir.

0     999846   log      record
1     001845   log      stop
2     002000   log      recordAudio():Audio Success
3     004657   log      play
4     008989   log      -1

Qualquer ajuda seria muito apreciada. Deixe-me saber se posso responder a alguma pergunta.

questionAnswers(2)

yourAnswerToTheQuestion