Je souhaite être capable de lire un clip audio dans une application iPhone OS. J'ai vu des informations à la fois sur NSSound ainsi que AVFoundation comme étant des moyens pour obtenir des clips audio lus sur un iPhone OS, mais je ne suis toujours pas clair sur le sujet et pourrait utiliser de l'aide. Pas besoin de l'épeler étape par étape dans le code réel, mais si quelqu'un pouvait me donner un indice quant à la direction générale (c'est-à-dire les classes sur lesquelles je devrais me concentrer) dans laquelle je devrais commencer à bouger je remplirai dans les blancs moi-même. Alors, quelle est la manière SIMPLEST de jouer un clip sonore dans une application iPhone?Quelle est la manière SIMPLEST de lire un clip audio dans une application iPhone?
Répondre
Apple a un article sur ce sujet, voir: this link
AVAudioPlayer est le moyen le plus simple de jouer des sons de toute longueur, en boucle ou non, mais il nécessite l'iPhone OS 2.2 ou supérieur. Un exemple simple:
NSString *soundFilePath =
[[NSBundle mainBundle] pathForResource: @"sound"
ofType: @"wav"];
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];
AVAudioPlayer *newPlayer =
[[AVAudioPlayer alloc] initWithContentsOfURL: fileURL
error: nil];
[fileURL release];
[newPlayer play];
[newPlayer release];
Il jouera pratiquement tous les formats de fichiers (aiff, wav, mp3, aac) Gardez à l'esprit que vous ne pouvez lire un fichier mp3/aac à la fois.
est ici la façon la plus simple que je connaisse:
Convertir votre fichier audio à café (utilisation afconvert outil de ligne de commande) et ajouter à votre projet.
Format pour les stands cafs Core Audio (je pense ...)
Rechercher des SoundEffect.h .m dans le code exemple d'Apple. Je crois que Metronome et BubbleLevel l'ont.
- Copier votre projet
écrire du code comme ci-dessous:
SoundEffect *SimpleSound = [[SoundEffect alloc] initWithContentsOfFile:[mainBundle pathForResource:@"soundfile" ofType:@"caf"]]; [SimpleSound play]; [SimpleSound release];
Étude SoundEffect.m pour avoir une idée de manipulation simple son.
Juste implémenté cela, fonctionne très bien! Il suffit d'utiliser Audacity pour convertir wav -> wav pour obtenir afconvert travail, pas d'autres problèmes. – JOM
Vous ne savez pas à propos de iOS 2.2 et ci-dessous, mais il est parfaitement possible de lire plusieurs fichiers MP3 à la fois en utilisant plusieurs instances de AVAudioPlayer. – Jonny
libérant le joueur immédiatement après avoir essayé de jouer peut causer des problèmes. – Rizon