9
votes

Comment jouez-vous programmatiquement un MP3 sur un iPhone?

J'aimerais inclure un MP3 avec mon application et la jouer à la demande. Malheureusement, je ne sais pas comment commencer. Je continue à lire des fichiers .Caf, mais je ne suis pas sûr de ce que ce sont ceux-ci.

Je cherche un pas à pas, si possible.


0 commentaires

4 Réponses :


1
votes

2 commentaires

Le lien # 1 triche - Je n'ai pas besoin d'une interface, juste un son. Link # 2 Jouer sur le Mac, non iPhone.


Salut Angryhacker: Oui, je pensais que le premier lien n'était pas ce que vous alliez - mais je l'ai inclus au cas où vous cherchez cela. En ce qui concerne le deuxième lien, il existe un lien vers un projet "Audiostreamer" sur là, qui inclut la source à la fois sur l'iPhone et la version Mac.




2
votes

Utilisez Afconvert dans le terminal pour convertir votre mp3 en un .caf. Man Afconvert vous en dira plus.

ALORS P>

NSString *soundFilePath = [[NSBundle mainBundle] pathForResource: name ofType: @"caf"];

NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];

AVAudioPlayer *player = [super initWithContentsOfURL: fileURL error: nil];
[fileURL release];
[player play];


4 commentaires

Super. Où dans le projet, je dépose le fichier .Caf? Dans le dossier Ressources?


Oui. Le dossier de ressources est bon. Vous pourriez avoir des sous-dossiers si vous aviez des multiples .Cafs et que vous vouliez les garder dans leur propre dossier.


Une autre chose à savoir est si vous souhaitez jouer le son sans délai, vous pouvez appeler [Player PréparetoPlay] pour le précharger. Toutefois, appeler [Player Stop] peut le décharger, forcer-jouer pour le recharger. -pause, arrête la lecture et ne décharge pas. (Vous pouvez définir manuellement le joueur pour jouer à partir du début après la pause)


Ce codage ne fonctionnera pas pour moi. J'ai donné à cela dans la vue ViewDidLoad.



16
votes

Voici ce que je fais pour jouer MP3 dans XCode 4.2:

1) Import avfoundation.framework code> cadre dans votre projet P>

2) Ajouter: #importez "avfoundation / avaudioplayer.h" code> dans votre projet visualcontroller.h code> Fichier: p> xxx pré>

3) faites glisser-déposer votre mp3 fichier yoursoundfile.mp3 code> dans l'explorateur de votre projet racine p>

4) Modifier - (vide) ViewDiDload code> Dans ViewController.m Code>: P>

- (void)viewDidLoad{
    [super viewDidLoad];
    NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                                         pathForResource:@"yoursoundfile"
                                         ofType:@"mp3"]];
    AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc]
                                  initWithContentsOfURL:url
                                  error:nil];
    [audioPlayer play];
}


0 commentaires