diff options
author | David Schleef <ds@schleef.org> | 2010-12-30 18:20:47 -0800 |
---|---|---|
committer | David Schleef <ds@schleef.org> | 2010-12-30 18:39:21 -0800 |
commit | 57095d302d0daaf344aa6da261f638746cf62c1f (patch) | |
tree | 3c0a37bd1e82784c644f34afb9c144fe9a626876 | |
parent | 5fed7a264c4c796c8e8e7ecc4e2ae893ecae111d (diff) |
dtmf: build fixes for MSVC
Use gint16 and G_PI.
-rw-r--r-- | gst/dtmf/gstdtmfdetect.c | 2 | ||||
-rw-r--r-- | gst/dtmf/tone_detect.c | 12 | ||||
-rw-r--r-- | gst/dtmf/tone_detect.h | 6 |
3 files changed, 11 insertions, 9 deletions
diff --git a/gst/dtmf/gstdtmfdetect.c b/gst/dtmf/gstdtmfdetect.c index 6fa17b5e4..0bb924264 100644 --- a/gst/dtmf/gstdtmfdetect.c +++ b/gst/dtmf/gstdtmfdetect.c @@ -172,13 +172,13 @@ gst_dtmf_detect_transform_ip (GstBaseTransform * trans, GstBuffer * buf) if (GST_BUFFER_IS_DISCONT (buf)) zap_dtmf_detect_init (&self->dtmf_state); if (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)) return GST_FLOW_OK; - zap_dtmf_detect (&self->dtmf_state, (int16_t *) GST_BUFFER_DATA (buf), + zap_dtmf_detect (&self->dtmf_state, (gint16 *) GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf) / 2, FALSE); dtmf_count = zap_dtmf_get (&self->dtmf_state, dtmfbuf, MAX_DTMF_DIGITS); if (dtmf_count) GST_DEBUG_OBJECT (self, "Got %d DTMF events: %s", dtmf_count, dtmfbuf); diff --git a/gst/dtmf/tone_detect.c b/gst/dtmf/tone_detect.c index d8f1df16e..8c1b5ad95 100644 --- a/gst/dtmf/tone_detect.c +++ b/gst/dtmf/tone_detect.c @@ -196,39 +196,39 @@ zap_dtmf_detect_init (dtmf_detect_state_t * s) int i; float theta; s->hit1 = s->hit2 = 0; for (i = 0; i < 4; i++) { - theta = 2.0 * M_PI * (dtmf_row[i] / SAMPLE_RATE); + theta = 2.0 * G_PI * (dtmf_row[i] / SAMPLE_RATE); dtmf_detect_row[i].fac = 2.0 * cos (theta); - theta = 2.0 * M_PI * (dtmf_col[i] / SAMPLE_RATE); + theta = 2.0 * G_PI * (dtmf_col[i] / SAMPLE_RATE); dtmf_detect_col[i].fac = 2.0 * cos (theta); - theta = 2.0 * M_PI * (dtmf_row[i] * 2.0 / SAMPLE_RATE); + theta = 2.0 * G_PI * (dtmf_row[i] * 2.0 / SAMPLE_RATE); dtmf_detect_row_2nd[i].fac = 2.0 * cos (theta); - theta = 2.0 * M_PI * (dtmf_col[i] * 2.0 / SAMPLE_RATE); + theta = 2.0 * G_PI * (dtmf_col[i] * 2.0 / SAMPLE_RATE); dtmf_detect_col_2nd[i].fac = 2.0 * cos (theta); goertzel_init (&s->row_out[i], &dtmf_detect_row[i]); goertzel_init (&s->col_out[i], &dtmf_detect_col[i]); goertzel_init (&s->row_out2nd[i], &dtmf_detect_row_2nd[i]); goertzel_init (&s->col_out2nd[i], &dtmf_detect_col_2nd[i]); s->energy = 0.0; } /* Same for the fax dector */ - theta = 2.0 * M_PI * (fax_freq / SAMPLE_RATE); + theta = 2.0 * G_PI * (fax_freq / SAMPLE_RATE); fax_detect.fac = 2.0 * cos (theta); goertzel_init (&s->fax_tone, &fax_detect); /* Same for the fax dector 2nd harmonic */ - theta = 2.0 * M_PI * (fax_freq * 2.0 / SAMPLE_RATE); + theta = 2.0 * G_PI * (fax_freq * 2.0 / SAMPLE_RATE); fax_detect_2nd.fac = 2.0 * cos (theta); goertzel_init (&s->fax_tone2nd, &fax_detect_2nd); s->current_sample = 0; s->detected_digits = 0; s->lost_digits = 0; diff --git a/gst/dtmf/tone_detect.h b/gst/dtmf/tone_detect.h index 909c5ef60..ce6dddd2c 100644 --- a/gst/dtmf/tone_detect.h +++ b/gst/dtmf/tone_detect.h @@ -32,12 +32,14 @@ #ifndef __TONE_DETECT_H__ #define __TONE_DETECT_H__ #include "_stdint.h" +#include <glib.h> + typedef struct { float v2; float v3; float fac; } goertzel_state_t; @@ -72,19 +74,19 @@ typedef struct typedef struct { float fac; } tone_detection_descriptor_t; void zap_goertzel_update(goertzel_state_t *s, - int16_t x[], + gint16 x[], int samples); float zap_goertzel_result (goertzel_state_t *s); void zap_dtmf_detect_init (dtmf_detect_state_t *s); int zap_dtmf_detect (dtmf_detect_state_t *s, - int16_t amp[], + gint16 amp[], int samples, int isradio); int zap_dtmf_get (dtmf_detect_state_t *s, char *buf, int max); |