NSString* parentDir = @"/var/mobile/Documents/AudioRecorder/";
NSArray* dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:parentDir error:nil];
int nrOfFilesUpdated = 0;
int nrOfOrigCAFFiles = 0;
for (NSString* currFile in dirContents)
{
if(![currFile hasSuffix:@".caf"]) continue;
nrOfOrigCAFFiles++;
NSString* fullPathToCurrFile = [NSString stringWithFormat:@"%@%@", parentDir, currFile];
FILE * f = fopen([fullPathToCurrFile UTF8String], "r+");
fseek(f, 21, 1);
char * buffer = (char*) malloc (3);
fread (buffer,1, 3, f);
NSLog(@"%@: %02x%02x%02x", currFile, (unsigned char)buffer[0],(unsigned char)buffer[1],(unsigned char)buffer[2]);
if ((unsigned char)buffer[0]==0xE5 && (unsigned char)buffer[1]==0x88 && (unsigned char)buffer[2]==0x80)
{
rewind (f);
fseek(f, 21, 1);
buffer[0]=0xBF;
buffer[1]=0x40;
buffer[2]=0x00;
fwrite(buffer, 1, 3, f);
nrOfFilesUpdated++;
}
fclose (f);
} // for
label.text = [NSString stringWithFormat:@"%i file updated out of %i", nrOfFilesUpdated, nrOfOrigCAFFiles];