2010-07-30 2 views
3

J'ai déjà un «enregistrement vocal de démarrage» lorsque le volume atteint un niveau spécial Mais il a un inconvénient: quand il commence à enregistrer, il a déjà manqué une demi-seconde ou plus parlant une phrase, il manquerait le premier mot.Démarrage de l'iPhone Enregistrement audio par la voix

Toutes les idées (mieux avec exemple).

Disons que je commence à première écoute et obtenir le peakpower, en moyenne, passe-bas

[recorder updateMeters]; ALPHA = 0.05; 
peakPowerForChannel = pow(10, (0.05 * [recorder peakPowerForChannel:0])); 
averagePowerForChannel = pow(10, (0.05 * [recorder averagePowerForChannel:0])); 
lowPassResults = ALPHA * peakPowerForChannel + (1.0 - ALPHA) * lowPassResults; 
averagePassResults = ALPHA * averagePowerForChannel + (1.0 - ALPHA) * averagePassResults; 

que je regarde si c'est assez fort pour enregistrement

if (peakPowerForChannel > 0.08f)) -> start recording 

et si son inférieure à une valeur qu'il arrête

(peakPowerForChannel < 0.01f) -> stop record, start listening again 

pour l'instant je trouve mieux écoute la peakpower plutôt à la moyenne. mais ce n'est toujours pas bien. J'ai aussi pensé à avoir une sorte d'enregistrement de tempory tout le temps et quand le pic est assez haut je pourrais commencer à partir de maintenant-2 secondes. Quelque chose comme ça, mais ici je ne sais pas comment réaliser. Donc, toutes les suggestions pratiques sont les bienvenues.

merci chris

+0

salut @ christian muller J'ai le même problème. Si vous avez trouvé une solution pouvez-vous partager avec moi ..... [email protected] – Johnykutty

Répondre

0

Comme vous avez dit, enregistrer en permanence un court 1/2s morceau, ce qui augmente indéfiniment lorsque le niveau de puissance est atteinte et l'enregistrement commence indéfinie. Lorsque l'enregistrement s'arrête, il doit inclure l'ouverture de 1/2s manquante.

+0

théoriquement je sais, mais comment réaliser? En ce moment j'ai juste \t enregistreur = [[AVAudioRecorder alloc] initWithURL: paramètres RecordUrlPfad: erreur de paramètres: & erreur]; alors où et comment devrais-je tamponner et comment extraire plus tard comme un fichier audio :) toute source sera utile –

Questions connexes