Phonegap Media API - Grabar y reproducir audio - Android

Espero grabar algo de audio y luego tener la capacidad de reproducirlo. Es importante para mí poderpersonalizar la interfaz de grabación.

En el siguiente ejemplo, después de grabar, obtengo una duración de -1 y no se reproduce audio.

Paso 1. AdicionalComplemento de medios

cordova plugin add org.apache.cordova.media

Paso 2. Mi código

Tenga en cuenta que src es "amr" según lo solicitado por los documentos.

Los dispositivos Android graban audio en formato Adaptive Multi-Rate. El archivo especificado debe terminar con una extensión .amr.

Sin embargo, "myrecording.amr" no existe en la estructura de mi archivo, ya que espero que se cree.

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>

Salida desde arriba

No se reproduce audio cuando hago clic en reproducir.

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

Cualquier ayuda sería muy apreciada. Avísame si puedo responder alguna pregunta.

Respuestas a la pregunta(2)

Su respuesta a la pregunta