[RESOLU]Lag sur premier son
Bonjour,
lorsque je joue un son pour la première fois dans mon appli cela provoque assez souvent un lag de l'app genre d'une demi seconde.
Et cela pour différents types de fichiers son.
Je fais cela comme indiqué dans la doc Apple :
J'initialise mes deux fichiers dans le viewDidLoad et apres je les joue dans une méthode comme ceci :
Quelqu'un connait il une solution ? Merci
lorsque je joue un son pour la première fois dans mon appli cela provoque assez souvent un lag de l'app genre d'une demi seconde.
Et cela pour différents types de fichiers son.
Je fais cela comme indiqué dans la doc Apple :
//initializing the sounds<br /> // Get the main bundle for the app<br /> CFBundleRef mainBundle;<br /> mainBundle = CFBundleGetMainBundle ();<br /> <br /> // Get the URL to the sound file to play<br /> soundFileURLRefLoose = CFBundleCopyResourceURL (<br /> mainBundle,<br /> CFSTR ("Loose"),<br /> CFSTR ("caf"),<br /> NULL<br /> );<br /> <br /> // Create a system sound object representing the sound file<br /> AudioServicesCreateSystemSoundID (<br /> soundFileURLRefLoose,<br /> &soundFileLoose<br /> );<br /> <br /> // Get the URL to the sound file to play<br /> soundFileURLRefBonus = CFBundleCopyResourceURL (<br /> mainBundle,<br /> CFSTR ("Bonus"),<br /> CFSTR ("caf"),<br /> NULL<br /> );<br /> <br /> // Create a system sound object representing the sound file<br /> AudioServicesCreateSystemSoundID (<br /> soundFileURLRefBonus,<br /> &soundFileBonus<br /> );<br /> <br /><br />
J'initialise mes deux fichiers dans le viewDidLoad et apres je les joue dans une méthode comme ceci :
//play the sound<br /> AudioServicesPlaySystemSound (soundFileBonus);
Quelqu'un connait il une solution ? Merci
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
=> Jouer un fichier son ?
(je sais pas trop ce que tu utilises comme API...) mais il y a le framework AV qui fait la même chose.
et il y a une méthode prepareToPlay ou un truc du genre.
https://developer.apple.com/iphone/library/codinghowtos/AudioAndVideo/index.html#PLAYBACK-PLAY_SHORT_SOUNDS_AND_ALERTS
je vais voir si c'est mieux avec l'autre
Il faut donc regarder si le son est déjà joué avec la propriété "playing" et en jouer un nouveau.
Voila je met cela en résolu.