0

アプリケーションにオーディオ録音を実装しましたが、オーディオ録音ファイルをドキュメント ディレクトリに保存し、オーディオを再生するために他のクラスで同じファイルを取得する方法を知る必要があります。

これがソースコードです。

-(void)startPushed
{
        NSMutableDictionary *rs = [[NSMutableDictionary alloc] init];
        [rs setValue:[NSNumber numberWithInt:kAudioFormatAppleIMA4] forKey:AVFormatIDKey];
        [rs setValue:[NSNumber numberWithFloat:44100.0] forKey:AVSampleRateKey];
        [rs setValue:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];
        recordedTmpFile = [NSURL fileURLWithPath:[NSTemporaryDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"%.0f.%@", [NSDate timeIntervalSinceReferenceDate] * 1000.0, @"caf"]]];

        recorder = [[AVAudioRecorder alloc] initWithURL:recordedTmpFile settings:rs error:&error];
        [recorder setDelegate:self];
        [recorder prepareToRecord];
        [recorder record];


        NSArray *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
        NSString *docDir = [docPath objectAtIndex:0];
        NSString *fullPath = [docDir stringByAppendingPathComponent:[NSString stringWithFormat:@"%@", recordedTmpFile]];
        NSLog(@"%@", fullPath);
}

 -(void)playbackPushed
    {
    AVAudioPlayer *avPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:recordedTmpFile error:&error];
        NSLog(@"Play Path:%@", recordedTmpFile);
        [avPlayer prepareToPlay];
        [avPlayer play];
    }

ドキュメントディレクトリにある音声ファイル(.caf形式)の読み書きの方法と、他のクラスで再生する音声の情報を教えてください。

前もって感謝します

4

1 に答える 1

0

このコードで iOS のドキュメント ディレクトリにアクセスします

-(NSURL *)documentDirectory{
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];

}

NSFileManager を使用して、ファイルをパスにコピーします。

于 2012-05-11T08:06:46.230 に答える