FreeCalypso > hg > gsm-codec-lib
view miscutil/bitmanip.c @ 104:7f43089e9a7a
gsm-efr2amr: forgot AMR file header again
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 27 Nov 2022 05:43:26 +0000 |
parents | d86f866489e9 |
children | 41f1ae68d253 |
line wrap: on
line source
/* * This module provides two utility functions that serve as building blocks * for frame bit reordering operations. */ #include <stdint.h> msb_get_bit(buf, bn) uint8_t *buf; { int pos_byte = bn >> 3; int pos_bit = 7 - (bn & 7); return (buf[pos_byte] >> pos_bit) & 1; } msb_set_bit(buf, bn, bit) uint8_t *buf; { int pos_byte = bn >> 3; int pos_bit = 7 - (bn & 7); buf[pos_byte] |= (bit << pos_bit); }