Wednesday, June 16, 2010

get_header

Digital Signal Processing Library

Voice Lab


get_header



int get_header(FILE *in_file_ptr, int *data_length, int *header_length)
{
char header[2];

/* go to beginning of file */
fseek(in_file_ptr,0,0);

/* read 1 character from beginning of file */
fread(header, sizeof(char), 1, in_file_ptr);

/* Test which character is at the beginning of the file */
switch(header[0]) {
case 'R':
sample_rate = check_wav(in_file_ptr, data_length, header_length);
break;
case 'F':
sample_rate = check_nsp(in_file_ptr, data_length, header_length);
break;
default:
/* unknown file header */
fseek(in_file_ptr,0,SEEK_SET);
sample_rate = -1;
(*header_length) = ftell(in_file_ptr);
break;
}
return(sample_rate);
}

No comments:

Post a Comment