IOS无法播放音频数据

IOS无法播放音频数据,ios,objective-c,Ios,Objective C,我正在从服务器接收缓冲区数据 len = [inputStream read:buffer maxLength:sizeof(buffer)]; //Getting data from server if (len > 0) { NSData *audioData = [[NSData alloc]initWithBytes:buffer length:len]; if (nil != audioData) {

我正在从服务器接收缓冲区数据

    len = [inputStream read:buffer maxLength:sizeof(buffer)]; //Getting data from server
    if (len > 0) {
            NSData *audioData = [[NSData alloc]initWithBytes:buffer length:len];
                if (nil != audioData) {


        [[mainSounds alloc]initSounds:audioData];

        }
}
现在我的主音

-(id)initSounds : (NSData *)  audioData{

    NSError *error;
    testAudioPlayer=[[AVAudioPlayer alloc] initWithData:audioData error:&error];
     NSLog(@"Player played %d and error %@",[testAudioPlayer play],[error userInfo]);

    return self;

}
我还播放了一个静态音频文件,它工作正常,声音播放正常。 给NSLog->玩家玩1

但当我尝试我的服务器数据时,它显示播放器播放了0,并出现错误{}

我在NSLog中检查来自服务器的NSData

AUDIO DATA <6f06af08 b209cd09 0a0aed0a 000c870c 6f0c5b0c dc0cc70d 820ec00e cc0e270f f20fd710 5d117b1c 6136013f aa28c112 050d070b 291b1235 812faf14 8e0a050b 18080a>
音频数据

他们在我的NSData中是否有任何问题..

请尝试以下代码

NSString *urlString = [[NSString alloc] initWithData: audioData encoding:NSUTF8StringEncoding];
NSURL *url = [[NSURL alloc] initWithString:urlString];

NSData *finalDATA = [NSData dataWithContentsOfURL:url];
[[mainSounds alloc]initSounds: finalDATA];
在您的
initSounds
方法中

NSError *error;
testAudioPlayer =[[AVAudioPlayer alloc] initWithData:finalDATA error:&error];
[testAudioPlayer play];

这就是我在尝试上述代码后得到的结果。“NSInvalidArgumentException”,原因:“***-[NSURL initWithString:relativeToURL:::nil字符串参数”首先检查您的
音频数据是否为零?@shujatAli-尝试NSData*数据=[NSData data data WITHBYTESNOPY:缓冲区长度:len freeWhenDone:YES];