X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=genwave.c;h=fe74658108829df5de41efe256468e7d8e119d0a;hp=cb622626879d751a3159160dcb9212b2784383d2;hb=5566f74eb29be75da44e29ba72ee6f015249ce61;hpb=d2b113f2c4f11acfaee1b2e0fd2f03744a89f6d4 diff --git a/genwave.c b/genwave.c index cb62262..fe74658 100644 --- a/genwave.c +++ b/genwave.c @@ -9,7 +9,7 @@ /* ulaw -> signed 16-bit */ -static short isdn_audio_ulaw_to_s16[] = +static unsigned short isdn_audio_ulaw_to_s16[] = { 0x8284, 0x8684, 0x8a84, 0x8e84, 0x9284, 0x9684, 0x9a84, 0x9e84, 0xa284, 0xa684, 0xaa84, 0xae84, 0xb284, 0xb684, 0xba84, 0xbe84, @@ -46,7 +46,7 @@ static short isdn_audio_ulaw_to_s16[] = }; /* alaw -> signed 16-bit */ -static short isdn_audio_alaw_to_s16[] = +static unsigned short isdn_audio_alaw_to_s16[] = { 0x13fc, 0xec04, 0x0144, 0xfebc, 0x517c, 0xae84, 0x051c, 0xfae4, 0x0a3c, 0xf5c4, 0x0048, 0xffb8, 0x287c, 0xd784, 0x028c, 0xfd74, @@ -100,13 +100,13 @@ void write_law(FILE *fp, char *name, char law) unsigned int i; short sample; unsigned int size, wsize; + int __attribute__((__unused__)) ret; - if ((lfp=fopen(name,"r"))) - { + if ((lfp=fopen(name,"r"))) { /* get size */ fseek(lfp, 0, SEEK_END); size = ftell(lfp); - printf("samples: %ld\n", size); + printf("samples: %d\n", size); size += size; fseek(lfp, 0, SEEK_SET); @@ -119,26 +119,25 @@ void write_law(FILE *fp, char *name, char law) fprintf(fp, "WAVE"); /* fmt */ - fprintf(fp, "fmt %c%c%c%c", sizeof(fmt), 0, 0, 0); + fprintf(fp, "fmt %c%c%c%c", (unsigned int)sizeof(fmt), 0, 0, 0); fmt.stereo = 1; fmt.channels = 1; fmt.sample_rate = 8000; fmt.data_rate = 16000; fmt.bytes_sample = 2; fmt.bits_sample = 16; - fwrite(&fmt, sizeof(fmt), 1, fp); + ret = fwrite(&fmt, sizeof(fmt), 1, fp); /* data */ fprintf(fp, "data%c%c%c%c", (char)(size&0xff), (char)((size>>8)&0xff), (char)((size>>16)&0xff), (char)(size>>24)); i = 0; - while(i < size) - { - fread(buffer, 1, 1, lfp); + while(i < size) { + ret = fread(buffer, 1, 1, lfp); if (law == 'a') - sample = isdn_audio_alaw_to_s16[*buffer]; + sample = (signed short)isdn_audio_alaw_to_s16[*buffer]; else - sample = isdn_audio_ulaw_to_s16[*buffer]; - fwrite(&sample, 2, 1, fp); + sample = (signed short)isdn_audio_ulaw_to_s16[*buffer]; + ret = fwrite(&sample, 2, 1, fp); i+=2; } @@ -156,8 +155,7 @@ int main(int argc, char *argv[]) { FILE *fp; - if (argc <= 1) - { + if (argc <= 1) { usage: printf("Usage:\n"); printf("%s ulaw2wave \n", argv[0]); @@ -165,29 +163,23 @@ int main(int argc, char *argv[]) return(0); } - if (!strcmp(argv[1], "alaw2wave")) - { + if (!strcmp(argv[1], "alaw2wave")) { if (argc <= 3) goto usage; - if ((fp=fopen(argv[3],"w"))) - { + if ((fp=fopen(argv[3],"w"))) { write_law(fp,argv[2],'a'); fclose(fp); - } else - { + } else { printf("Cannot open wave file %s\n",argv[3]); } } else - if (!strcmp(argv[1], "ulaw2wave")) - { + if (!strcmp(argv[1], "ulaw2wave")) { if (argc <= 3) goto usage; - if ((fp=fopen(argv[3],"w"))) - { + if ((fp=fopen(argv[3],"w"))) { write_law(fp,argv[2],'u'); fclose(fp); - } else - { + } else { printf("Cannot open wave file %s\n",argv[3]); } } else