Tag: avaudiorecorder

iPhone应用程序:在MP3中录制audio

我正在开发一个iPhone应用程序,它以.wav格式loggingaudio。 这里是代码 NSMutableDictionary* recordSetting = [[NSMutableDictionary alloc]init]; [recordSetting setValue :[NSNumber numberWithInt:kAudioFormatLinearPCM] forKey:AVFormatIDKey]; [recordSetting setValue:[NSNumber numberWithFloat:11025.0] forKey:AVSampleRateKey]; [recordSetting setValue:[NSNumber numberWithInt: 1] forKey:AVNumberOfChannelsKey]; [recordSetting setValue:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey]; NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [path objectAtIndex:0]; NSString *myDBnew = [documentsDirectory stringByAppendingPathComponent:@"test.wav"]; recordedTmpFile = [NSURL fileURLWithPath:myDBnew]; NSLog(@"Using File called: %@",recordedTmpFile); recorder = [[ AVAudioRecorder alloc] initWithURL:recordedTmpFile […]

如何从iOS中的AudioQueueRef浮点数据获取数组?

我正在将audio传入iPhone,并将其传递给(C ++)分析algorithm。 当然,还有很多选项:path中的AudioQueue教程以及启动的东西。 audiocallback,但是,给了一个AudioQueueRef ,我发现苹果的文档在这方面的东西很薄。 内置的方法来写入文件,但没有什么地方你实际上在数据包内部查看数据。 我需要数据。 我不想写任何文件,这是所有的教程 – 甚至苹果的便利I / O对象 – 似乎都瞄准了。 苹果的AVAudioRecorder (令人生气的)会给你关卡和写入数据,但实际上并没有给你访问它。 除非我错过了一些东西… 这个怎么做? 在下面的代码中有inBuffer->mAudioData这是非常接近,但我不能find什么格式这个'数据'是在或如何访问它的信息。 AudioQueuecallback: void AudioInputCallback(void *inUserData, AudioQueueRef inAQ, AudioQueueBufferRef inBuffer, const AudioTimeStamp *inStartTime, UInt32 inNumberPacketDescriptions, const AudioStreamPacketDescription *inPacketDescs) { static int count = 0; RecordState* recordState = (RecordState*)inUserData; AudioQueueEnqueueBuffer(recordState->queue, inBuffer, 0, NULL); ++count; printf("Got buffer %d\n", count); } […]

非主要捆绑文件作为警报声音

我希望我错了,但我不认为这是可能的。 在“本地和推送通知编程指南”中的“准备自定义警报声音”下,它说“声音文件必须位于客户端应用程序的主包中”。 如果您不能写入主包,那么如何获得用户生成的录音(使用AVAudioRecorder)作为警报声? 一方面它似乎是不可能的,但另一方面,我认为有应用程序在那里做(我会寻找那些)。

AVAudioRecorder / AVAudioPlayer – 追加logging到文件

有什么方法可以录制到audio文件的末尾? 我们不能只是暂停logging而不是停止logging,因为用户需要能够稍后回到应用程序,并添加更多的audio到他们的logging。 目前,audio以NSDataforms存储在CoreData中。 NSData的AppendData不起作用,因为生成的audio文件仍然报告它只与原始数据一样长。 另一种可能性是将原始的audio文件和新的audio文件一起,并将它们连接成一个audio文件,如果有什么办法的话。