summaryrefslogtreecommitdiff
path: root/pjmedia/src/pjmedia/g711.c
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-11-30 01:35:00 +0000
committerBenny Prijono <bennylp@teluu.com>2006-11-30 01:35:00 +0000
commit634423cd1e3f12d6cc70c8e6564d40e986eb0312 (patch)
tree02911836861d548916367a6e1b572bc005383d32 /pjmedia/src/pjmedia/g711.c
parenta35cd16ec8ea8289b0c8a975ee858d39461a9cd9 (diff)
Implement task #26: integrate table based Alaw/Ulaw/linear conversion into pjmedia (thanks Toni Rutar for the original contribution)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@838 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia/src/pjmedia/g711.c')
-rw-r--r--pjmedia/src/pjmedia/g711.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/pjmedia/src/pjmedia/g711.c b/pjmedia/src/pjmedia/g711.c
index a28051a0..cf8a2a33 100644
--- a/pjmedia/src/pjmedia/g711.c
+++ b/pjmedia/src/pjmedia/g711.c
@@ -20,6 +20,7 @@
* notice in the second half of this file.
*/
#include <pjmedia/codec.h>
+#include <pjmedia/alaw_ulaw.h>
#include <pjmedia/endpoint.h>
#include <pjmedia/errno.h>
#include <pjmedia/port.h>
@@ -42,12 +43,6 @@
PJ_DECL(pj_status_t) g711_init_factory (pjmedia_codec_factory *factory,
pj_pool_t *pool);
-/* Algorithm prototypes. */
-unsigned char linear2alaw(int pcm_val);
-int alaw2linear(unsigned char a_val);
-unsigned char linear2ulaw(int pcm_val);
-int ulaw2linear(unsigned char u_val);
-
/* Prototypes for G711 factory */
static pj_status_t g711_test_alloc( pjmedia_codec_factory *factory,
const pjmedia_codec_info *id );
@@ -477,14 +472,14 @@ static pj_status_t g711_encode(pjmedia_codec *codec,
pj_uint8_t *dst = output->buf;
for (i=0; i!=input->size/2; ++i, ++dst) {
- *dst = linear2alaw(samples[i]);
+ *dst = pjmedia_linear2alaw(samples[i]);
}
} else if (priv->pt == PJMEDIA_RTP_PT_PCMU) {
unsigned i;
pj_uint8_t *dst = output->buf;
for (i=0; i!=input->size/2; ++i, ++dst) {
- *dst = linear2ulaw(samples[i]);
+ *dst = pjmedia_linear2ulaw(samples[i]);
}
} else {
@@ -519,7 +514,7 @@ static pj_status_t g711_decode(pjmedia_codec *codec,
pj_uint16_t *dst = output->buf;
for (i=0; i!=input->size; ++i) {
- *dst++ = (pj_uint16_t) alaw2linear(*src++);
+ *dst++ = (pj_uint16_t) pjmedia_alaw2linear(*src++);
}
} else if (priv->pt == PJMEDIA_RTP_PT_PCMU) {
unsigned i;
@@ -527,7 +522,7 @@ static pj_status_t g711_decode(pjmedia_codec *codec,
pj_uint16_t *dst = output->buf;
for (i=0; i!=input->size; ++i) {
- *dst++ = (pj_uint16_t) ulaw2linear(*src++);
+ *dst++ = (pj_uint16_t) pjmedia_ulaw2linear(*src++);
}
} else {