Phonegap API Médias - Enregistrer et lire de l'Audio - Android
Je suis l'espoir d'enregistrer de l'audio et ensuite avoir la possibilité de le lire. Il est important pour moi d'être en mesure de personnaliser le dossier de l'interface.
Dans l'exemple ci-dessous après l'enregistrement-je obtenir une durée de -1 et aucun son n'est joué.
L'étape 1.
Ajouté Media Plugin
cordova plugin add org.apache.cordova.media
L'étape 2. Mon Code
Note src est "amr" comme l'a demandé de docs.
Les appareils Android enregistrer de l'audio dans Adaptive Multi-rate format. L'
fichier spécifié doit se terminer par un .amr extension.
Cependant, "myrecording.amr" n'existe pas dans mon fichier de structure que je suis en espérant qu'il sera créé.
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>
De Sortie À Partir De Ci-Dessus
Aucun son n'est joué, quand je clique sur jouer.
0 999846 log record
1 001845 log stop
2 002000 log recordAudio():Audio Success
3 004657 log play
4 008989 log -1
Toute aide serait grandement appréciée. Laissez-moi savoir si je peux répondre à toutes les questions.
OriginalL'auteur Daniel Rasmuson | 2014-10-23
Vous devez vous connecter pour publier un commentaire.
Voici mes étapes à suivre pour que cela fonctionne.
1. Exécutez ces commandes
2. Créer
RecordTest/www/myrecording.wav
3. Coller le code ci-dessous dans
RecordTest/www/index.html
4. Exécuter
ionic emulate ios
Ci-dessus devrait fonctionner.
Remarque: l'extension des changements en fonction de la plate-forme que vous êtes en développement pour
Salut, j'ai une question. Vous avez ajouté l'ios ici et pas Android. C'est donc sur ios enregistrement?
Ca a fonctionné pour android?
Je ne pense pas qu'il fonctionne sous android. Seulement .amr format est pris en charge lors de l'enregistrement.
OriginalL'auteur Daniel Rasmuson
Je suis en train de travailler avec quelque chose de similaire avec ionicframworkf et phonegap plugins.. je de constituer un Dossier d'Usine:
startRecord, stopRecord, playRecord et Sauvegarder l'enregistrement sur le serveur... C'est mon usine fichier:
Mon projet est sur GitHub si vous voulez vérifier comment je mettre en œuvre cette usine:
https://github.com/cmarrero01/famvoice
Vous aurez besoin de caisse de la direction du développement.
J'espère que c'est ussesful pour vous. 🙂
PH: j'ai remarqué cette question sur codementor demande, mais je ne suis pas un bon anglais. 🙂
Votre accueil :). Vérifier mon projet sur githup, je suis sûr qu'il va usedfull pour vous. :).
Vous ne savez pas si l'opération est jusqu'à ce jour. Je ne vois que deux s'engage à l'intérieur de lui. "070c0dc Init apps, init serveur, la structure des dossiers. 0c3de11 Initiale s'engager." Toutefois, le fichier affiché ci-dessus est utile, je vais voir si je peux obtenir que le travail.
Salut Daniel, vous avez besoin de regarder le "développement" de la branche, je ne suis pas avoir assez de temps pour faire une version encore. Mais les actions d'enregistrement est de travailler sur cette branche. Cloner le repo, et de faire un git checkout de développement pour changer de direction.
Je ne sais pas pourquoi cela ne se produire pour moi. Je le vois maintenant. Je vous remercie. Je vais essayer ce soir.
OriginalL'auteur cmarrero01