// // AudioRecorderAppDelegate.h // AudioRecorder // // Copyright TrailsintheSand.com 2008. All rights reserved. // #import #import #import #define NUM_BUFFERS 3 #define SECONDS_TO_RECORD 10 typedef struct { AudioStreamBasicDescription dataFormat; AudioQueueRef queue; AudioQueueBufferRef buffers[NUM_BUFFERS]; AudioFileID audioFile; SInt64 currentPacket; bool recording; } RecordState; typedef struct { AudioStreamBasicDescription dataFormat; AudioQueueRef queue; AudioQueueBufferRef buffers[NUM_BUFFERS]; AudioFileID audioFile; SInt64 currentPacket; bool playing; } PlayState; @interface AudioRecorderAppDelegate : NSObject { UIWindow *window; UILabel* labelStatus; UIButton* buttonRecord; UIButton* buttonPlay; RecordState recordState; PlayState playState; CFURLRef fileURL; } @property (nonatomic, retain) UIWindow *window; - (BOOL)getFilename:(char*)buffer maxLenth:(int)maxBufferLength; - (void)setupAudioFormat:(AudioStreamBasicDescription*)format; - (void)recordPressed:(id)sender; - (void)playPressed:(id)sender; - (void)startRecording; - (void)stopRecording; - (void)startPlayback; - (void)stopPlayback; @end