提交 480d1ac2 authored 作者: Michael Jerris's avatar Michael Jerris

fix some size_t\int warnings.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@245 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 ae8a088c
...@@ -70,7 +70,7 @@ SWITCH_DECLARE(switch_status) switch_socket_create_pollfd(switch_pollfd_t *poll, ...@@ -70,7 +70,7 @@ SWITCH_DECLARE(switch_status) switch_socket_create_pollfd(switch_pollfd_t *poll,
SWITCH_DECLARE(int) switch_socket_waitfor(switch_pollfd_t *poll, int ms); SWITCH_DECLARE(int) switch_socket_waitfor(switch_pollfd_t *poll, int ms);
SWITCH_DECLARE(void) switch_swap_linear(int16_t *buf, int len); SWITCH_DECLARE(void) switch_swap_linear(int16_t *buf, int len);
SWITCH_DECLARE(char *) switch_cut_path(char *in); SWITCH_DECLARE(char *) switch_cut_path(char *in);
SWITCH_DECLARE(int) switch_float_to_short(float *f, short *s, int len); SWITCH_DECLARE(size_t) switch_float_to_short(float *f, short *s, size_t len);
SWITCH_DECLARE(int) switch_char_to_float(char *c, float *f, int len); SWITCH_DECLARE(int) switch_char_to_float(char *c, float *f, int len);
SWITCH_DECLARE(int) switch_float_to_char(float *f, char *c, int len); SWITCH_DECLARE(int) switch_float_to_char(float *f, char *c, int len);
SWITCH_DECLARE(int) switch_short_to_float(short *s, float *f, int len); SWITCH_DECLARE(int) switch_short_to_float(short *s, float *f, int len);
......
...@@ -30,73 +30,73 @@ ...@@ -30,73 +30,73 @@
* *
*/ */
#include <switch_utils.h> #include <switch_utils.h>
#define NORMFACT (float)0x8000 #define NORMFACT (float)0x8000
#define MAXSAMPLE (float)0x7FFF #define MAXSAMPLE (float)0x7FFF
#define MAXSAMPLEC (char)0x7F #define MAXSAMPLEC (char)0x7F
SWITCH_DECLARE(int) switch_float_to_short(float *f, short *s, int len) SWITCH_DECLARE(size_t) switch_float_to_short(float *f, short *s, size_t len)
{ {
int i; size_t i;
float ft; float ft;
for(i=0;i<len;i++) { for(i=0;i<len;i++) {
ft = f[i] * NORMFACT; ft = f[i] * NORMFACT;
if(ft >= 0) { if(ft >= 0) {
s[i] = (short)(ft+0.5); s[i] = (short)(ft+0.5);
} else { } else {
s[i] = (short)(ft-0.5); s[i] = (short)(ft-0.5);
} }
if (s[i] > (short)MAXSAMPLE) s[i] = (short)MAXSAMPLE; if (s[i] > (short)MAXSAMPLE) s[i] = (short)MAXSAMPLE;
if (s[i] < (short)-MAXSAMPLE) s[i] = (short)-MAXSAMPLE; if (s[i] < (short)-MAXSAMPLE) s[i] = (short)-MAXSAMPLE;
} }
return len; return len;
} }
SWITCH_DECLARE(int) switch_char_to_float(char *c, float *f, int len) SWITCH_DECLARE(int) switch_char_to_float(char *c, float *f, int len)
{ {
int i; int i;
if (len % 2) { if (len % 2) {
return(-1); return(-1);
} }
for(i=1;i<len;i+=2) { for(i=1;i<len;i+=2) {
f[(int)(i/2)] = (float)(((c[i])*0x100) + c[i-1]); f[(int)(i/2)] = (float)(((c[i])*0x100) + c[i-1]);
f[(int)(i/2)] /= NORMFACT; f[(int)(i/2)] /= NORMFACT;
if (f[(int)(i/2)] > MAXSAMPLE) f[(int)(i/2)] = MAXSAMPLE; if (f[(int)(i/2)] > MAXSAMPLE) f[(int)(i/2)] = MAXSAMPLE;
if (f[(int)(i/2)] < -MAXSAMPLE) f[(int)(i/2)] = -MAXSAMPLE; if (f[(int)(i/2)] < -MAXSAMPLE) f[(int)(i/2)] = -MAXSAMPLE;
} }
return len/2; return len/2;
} }
SWITCH_DECLARE(int) switch_float_to_char(float *f, char *c, int len) SWITCH_DECLARE(int) switch_float_to_char(float *f, char *c, int len)
{ {
int i; int i;
float ft; float ft;
long l; long l;
for(i=0;i<len;i++) { for(i=0;i<len;i++) {
ft = f[i] * NORMFACT; ft = f[i] * NORMFACT;
if (ft >= 0) { if (ft >= 0) {
l = (long)(ft+0.5); l = (long)(ft+0.5);
} else { } else {
l = (long)(ft-0.5); l = (long)(ft-0.5);
} }
c[i*2] = (unsigned char)((l)&0xff); c[i*2] = (unsigned char)((l)&0xff);
c[i*2+1] = (unsigned char)(((l)>>8)&0xff); c[i*2+1] = (unsigned char)(((l)>>8)&0xff);
} }
return len*2; return len*2;
} }
SWITCH_DECLARE(int) switch_short_to_float(short *s, float *f, int len) SWITCH_DECLARE(int) switch_short_to_float(short *s, float *f, int len)
{ {
int i; int i;
for(i=0;i<len;i++) { for(i=0;i<len;i++) {
f[i] = (float)(s[i]) / NORMFACT; f[i] = (float)(s[i]) / NORMFACT;
//f[i] = (float) s[i]; //f[i] = (float) s[i];
} }
return len; return len;
} }
SWITCH_DECLARE(char *) switch_cut_path(char *in) SWITCH_DECLARE(char *) switch_cut_path(char *in)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论