FreeCalypso > hg > gsm-codec-lib
diff efrtest/etsi-pcm-out.c @ 435:9f354d2aea13
efrtest: split etsi-dec.c for code reuse
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 08 May 2024 05:25:47 +0000 |
parents | efrtest/etsi-dec.c@da17c7f02c6c |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/efrtest/etsi-pcm-out.c Wed May 08 05:25:47 2024 +0000 @@ -0,0 +1,44 @@ +/* + * This C module holds some functions that have been split off from + * etsi-dec.c, with the goal of making it easier to build both + * standard-EFR and AMR-EFR versions of the ETSI-format EFR decoder. + */ + +#include <stdio.h> +#include <stdint.h> + +void +write_pcm_be(outf, pcm) + FILE *outf; + int16_t *pcm; +{ + uint8_t bytes[320], *dp; + int16_t samp; + unsigned n; + + dp = bytes; + for (n = 0; n < 160; n++) { + samp = pcm[n]; + *dp++ = (samp >> 8) & 0xFF; + *dp++ = samp & 0xFF; + } + fwrite(bytes, 2, 160, outf); +} + +void +write_pcm_le(outf, pcm) + FILE *outf; + int16_t *pcm; +{ + uint8_t bytes[320], *dp; + int16_t samp; + unsigned n; + + dp = bytes; + for (n = 0; n < 160; n++) { + samp = pcm[n]; + *dp++ = samp & 0xFF; + *dp++ = (samp >> 8) & 0xFF; + } + fwrite(bytes, 2, 160, outf); +}