Objective-c / IOS:反转NSMutabledata中的字节

时间:2011-09-09 16:59:55

标签: iphone objective-c audio nsmutabledata

在我的应用程序中,我将音频文件的字节存储在NSMutableData中,如下所示:

NSMutableData *data = [NSMutableData dataWithBytes:byteData length:len];

我可以稍后使用

播放
player = [[AVAudioPlayer alloc] initWithData:data error:&error];

我的问题是什么代码会反转数据对象中的字节,所以当播放时声音是向后的?

非常感谢任何帮助。

顺便说一句,音频的byteData是使用:

获得的
    NSMutableData *wave =[NSMutableData dataWithContentsOfURL:url];

NSUInteger len = [wave length];
Byte *byteData = (Byte*)malloc(len);
memcpy(byteData, [wave bytes], len);

1 个答案:

答案 0 :(得分:1)

DaveSmith122是对的。您不能只是反转字节数据。我使用CoreAudio和AudioUnits实现了相同的效果。使用ExtFileReader C API将文件读入lPCM缓冲区,然后根据需要反转缓冲区。