2014-04-23 7 views
1

J'utilise theamazingaudioengine pour enregistrer, jouer et ajouter des effets comme la réverbération pour une application iOS. Je peux enregistrer, lire l'audio enregistré avec l'effet de réverbération. Mais je suis incapable de sauvegarder le fichier audio avec l'effet de réverbération de la galerie. Quelqu'un peut-il m'aider s'il vous plaît avec ceci.Comment enregistrer un enregistrement audio avec effet de réverbération

Je sauvegarde l'audio enregistré comme ceci.

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; 

NSArray *documentsFolders = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *path = [[documentsFolders objectAtIndex:0] stringByAppendingPathComponent:@"Recording.aiff"]; 

[library writeVideoAtPathToSavedPhotosAlbum:[NSURL URLWithString:path] completionBlock:^(NSURL *assetURL, NSError *error){ 

    /*notify of completion*/ 

    NSLog(@"AssetURL: %@",assetURL); 
    NSLog(@"Error: %@",error); 

    if (!error) { 
     //video saved 

     [[self appDelegate] showAlertWithTitle:@"Audio Saved" message:@""]; 

    } 
    else{ 

     [[self appDelegate] showAlertWithTitle:@"Error" message:error.domain]; 

    } 

}]; 

Merci d'avance!

+0

pouvez-vous partager le code pour montrer comment vous enregistrez actuellement le fichier mais sans l'effet? – Woodstock

+0

J'ai partagé cela dans la question elle-même. J'ai édité ma question pour partager cela. – Karun

+0

Vérifiez ma réponse, c'est comme ça que vous devriez sauvegarder l'audio édité. – Woodstock

Répondre

-1

La classe AEAudioFileWriter vous permet d'écrire facilement dans n'importe quel format de fichier audio pris en charge par le système. Pour l'utiliser, instanciez-le en utilisant initWithAudioDescription:, en passant le format audio que vous souhaitez utiliser. Ensuite, commencez l'opération en appelant beginWritingToFileAtPath:fileType:error:, en passant le chemin d'accès au fichier que vous souhaitez enregistrer et le type de fichier à utiliser. Les types de fichiers courants incluent kAudioFileAIFFType, kAudioFileWAVEType, kAudioFileM4AType (codage audio AAC) et kAudioFileCAFType.

Une fois l'opération d'écriture démarrée, vous utilisez les fonctions C AEAudioFileWriterAddAudio et AEAudioFileWriterAddAudioSynchronously pour écrire de l'audio dans le fichier. Notez que vous ne devez utiliser que AEAudioFileWriterAddAudio lors de l'écriture audio à partir du thread Core Audio, car cela se fait de manière asynchrone d'une manière qui ne tient pas le fil.

Lorsque vous avez terminé, appelez finishWriting pour fermer le fichier.

More information...

+0

Salut John! Merci beaucoup pour la réponse rapide. Pourriez-vous s'il vous plaît partager le code si vous avez sur AEAudioFileWriter. Je l'ai traversé mais je n'ai pas pu trouver de code d'exemple. – Karun

+0

Pourquoi le vote à la baisse? – Woodstock

+0

@Woodstock pouvez-vous s'il vous plaît partager l'exemple de code pour AEAudioFileWriter. Je ne sais pas comment utiliser AEAudioFileWriterAddAudio et AEAudioFileWriterAddAudioSynchronously méthode – Thangavel