FreeCalypso > hg > gsm-codec-lib
view libtwamr/prm2bits.c @ 561:cf62fe9fac3a
gsmhr-cod2hex: read native endian by default
Let's change gsmhr-* utilities to read *.cod and *.dec files
in the local machine's native byte order by default, and support
both -b and -l override options. This approach is the only sane
one when we write *.cod and *.dec files in the local endian.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 12 Feb 2025 00:04:33 +0000 (2 months ago) |
parents | ffd48f0a2ab5 |
children |
line wrap: on
line source
/* * A cleaner reimplementation of AMR Prm2bits() function. */ #include "typedef.h" #include "namespace.h" #include "bitno.h" #include "prm2bits.h" void Prm2bits(enum Mode mode, const Word16 prm[], Word16 bits[]) { const Word16 *t = bitno[mode]; unsigned nparam = prmno[mode]; unsigned n, p, mask; Word16 *b = bits; for (n = 0; n < nparam; n++) { p = prm[n]; mask = 1 << (*t++ - 1); for (; mask; mask >>= 1) { if (p & mask) *b++ = 1; else *b++ = 0; } } }