5 size_t byte_pos = bs->
bit_pos / 8;
6 if (byte_pos > bs->
size)
11 if (byte_pos + 1 < bs->
size && bs->
data[byte_pos + 1] == 0x00) {
28 for (
int i = 0; i < n; i++) {
29 size_t byte_pos = bs->
bit_pos / 8;
30 int bit_offset = 7 - (bs->
bit_pos % 8);
32 if (byte_pos >= bs->
size)
36 val = (val << 1) | ((
byte >> bit_offset) & 1);
44 uint8_t b = (bs->
data[byte_pos] >> bit_in_byte) & 1;
uint8_t read_bit(bitstream_t *bs)
uint32_t read_bits(bitstream_t *bs, int n)
uint8_t read_byte(bitstream_t *bs)