# Detecter automatiquement la fin de la voix



## devservlet (19 Novembre 2010)

Bonjour,
Je dois intégrer l'enregistrement vocal dans mon appli iphone, pour l'instant l'enregistrement s'effectue bien, sauf que le client veut que la fin de la voix se fasse automatiquement, et non par clic sur un bouton de stop. Quelq'un a til déjà eu à implémenter cette fonctionnalité?
Merci bien.


----------



## tatouille (21 Novembre 2010)

mais qu'es ce que la fin d'enrigestrement? j'arrete de parler pendant une seconde 3 4 5 6 7 8, parce que je reflechie?


----------



## devservlet (22 Novembre 2010)

tatouille a dit:


> mais qu'es ce que la fin d'enrigestrement? j'arrete de parler pendant une seconde 3 4 5 6 7 8, parce que je reflechie?


Je commence à parler et je m'arrête, dès que tu marques un temps d'arret, c'est pris comme fin de phrase.


----------



## ntx (22 Novembre 2010)

devservlet a dit:


> Je commence à parler et je m'arrête, dès que tu marques un temps d'arret, c'est pris comme fin de phrase.


Oui mais comment définis-tu un temps d'arrête. Marquer un point entre deux phrases est-il un temps d'arrêt ?


----------



## mtcubix (22 Novembre 2010)

Je pense que ce qu'il appelle la fin de la phrase, c'est le "blanc" dans une piste sonore, un laps de temps où il n'y a pas de bruit voici une exemple

Il faudra donc définir une amplitude du signal en dessous de laquelle, on considère qu'il n'y a rien


----------



## ntx (22 Novembre 2010)

mtcubix a dit:


> Je pense que ce qu'il appelle la fin de la phrase, c'est le "blanc" dans une piste sonore, un laps de temps où il n'y a pas de bruit voici une exemple
> 
> Il faudra donc définir une amplitude du signal en dessous de laquelle, on considère qu'il n'y a rien


Bref, il faut des specs précises, et pas "le client veut" :rateau:


----------



## mtcubix (22 Novembre 2010)

ntx a dit:


> Bref, il faut des specs précises, et pas "le client veut" :rateau:



t'as bien raison , c'est pas gagné d'avance, car, la fin de la voix, avec une définition aussi vague, peut mener direct à la voie sans issue 

c'est pas pour rien qu'avec les anciens talkie walkie les gens marquaient clairement le moment de fin d'appel
- je te reçois 5/5 charlie tango , à toi ! 
- 5/5 charlie bravo , à toi 
etc ....


----------



## devservlet (23 Novembre 2010)

mtcubix a dit:


> Je pense que ce qu'il appelle la fin de la phrase, c'est le "blanc" dans une piste sonore, un laps de temps où il n'y a pas de bruit voici une exemple
> 
> Il faudra donc définir une amplitude du signal en dessous de laquelle, on considère qu'il n'y a rien


C'est ca même que je veux detecter, t'as un bout de code qui teste les amplitudes?
Moi j'utilise AudioQueueObject... et pleines d'autres classes, c'est du code repris ici ,dans lequel j'avoue que je capte pas grand chose. Quelq'un a til déjà utilisé le code dans le lien pour l'engregistrement? Si oui comment détecter la fin?


----------



## mtcubix (23 Novembre 2010)

Pour utiliser une classe en Obj-C, il faut disposer de sa définition complète et sa description, je pense que tu peux trouver ça chez Dev-apple.

Dans la prtie de code que tu montres, je vois l'amplitude du signal dans peakLevels, 
il manque une donnée temporelle pour définir le "blanc" comme étant une période de temps pendant laquelle l'amplitude reste inférieure à une certaine valeur, (à toi de la déterminer )


----------



## ntx (23 Novembre 2010)

Et si tu comptes utiliser des librairies externes dans un produit diffusé en dehors de chez toi, commercial ou non, de manière réelle ou "virtuelle", il faut s'assurer que tu n'enfreins pas les licences d'utilisation.


----------



## tatouille (24 Novembre 2010)

mtcubix a dit:


> Pour utiliser une classe en Obj-C, il faut disposer de sa définition complète et sa description, je pense que tu peux trouver ça chez Dev-apple.
> 
> Dans la prtie de code que tu montres, je vois l'amplitude du signal dans peakLevels,
> il manque une donnée temporelle pour définir le "blanc" comme étant une période de temps pendant laquelle l'amplitude reste inférieure à une certaine valeur, (à toi de la déterminer )



le white noise flat n'existe pas sur une entrée analogue il suffit qu'un chien aboie derriere, le mic de l'iphone est super sensible (je suis dev audio) une simple feuille qui tombe a coté tu auras du signal, ce que veut faire le newb est assez simple juste sur le callback de l'input mais il n'en reste pas moins que ca ne marchera pas period, de plus ce genre d'automatisme est couvert par la guideline dans la partie: disqualifiante, un peu normal, a une action BEGIN doit correspondre une ACTION END (FROM un humain)


----------

