www.pudn.com > ica_C.rar > wav_io.h


#include 

#ifndef MATRIX
#define MATRIX 1
#include "matrix.h"
#endif

typedef struct w_fmt {
  unsigned long FS;
  unsigned long length;
  char    *filename;      /* file name */
  short   *data;
} wavfmt;

#define fopen_r(fp,fn)if((fp=fopen(fn,"r"))==NULL){fprintf(stderr," --- Can't fopen(r)%s\n",fn);exit(1);}
#define fopen_w(fp,fn)if((fp=fopen(fn,"w"))==NULL){fprintf(stderr," --- Can't fopen(w)%s\n",fn);exit(1);}

#define WAVE_FORMAT_PCM         (0x0001) 
#define MAX         32768

extern int Read_matrix(int n, int m, char *fname, matrix x);
extern int Write_matrix(int n, int m, matrix x, char *fname);
extern unsigned long read_wav(char *fname,  wavfmt *readwav);
extern void write_wav(char *fname, wavfmt *writewav);
extern FILE *write_wav_head(char *fname, wavfmt *writewav);
extern int WaveData_2_DoubleMat(wavfmt fmt, matrix x);
extern int DoubleMat_2_WaveData(unsigned long n, matrix x, wavfmt *fmt);