SIP: Fix incoming re-invite
[lcr.git] / genwave.c
index b397d3c..fe74658 100644 (file)
--- 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,9 +100,9 @@ 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);
@@ -126,19 +126,18 @@ void write_law(FILE *fp, char *name, char law)
                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 <alaw file> <wav file>\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