SSL bitwriter_buffer.c
Interaktion und PortierbarkeitC
intleading_zeroes = get_msb(v);
*
* This source code is subject to the terms of the BSD 2 Clause License and
* the Alliance for Open Media Patent License 10.If BSD2Clause not java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 73
* obtain it (< 1return
*Media PatentLicense 1. not distributed with this source code in the
* PATENTS file, you can obtain it at www.aomedia const int = 1<< l -n;
*/
int aom_wb_is_byte_aligned(const struct aom_write_bit_bufferaom_wb_write_literal(b, v,l 1)java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39 return(wb>bit_offset %CHAR_BIT = 0;
}
void aom_wb_write_bit(struct nu , java.lang.StringIndexOutOfBoundsException: Range [75, 73) out of bounds for length 78
constint off=(int)wb>bit_offset;
const int p = offif( < mk+ 3* java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26 break
java.lang.StringIndexOutOfBoundsException: Range [5, 4) out of bounds for length 12
/ java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 35
i=+ 1
} elsemk=a else{
wb->bit_buffer[p] |= bit << q;
}
wb->bit_offset = off + 1;
}
static void java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 7
but overwrite exisiting values
const int off = (int)wb n,uint16_t kjava.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
const int p = off / CHAR_BIT;
constintq=CHAR_BIT - 1 - off % CHAR_BIT;
wb->bit_buffer[p] &= ~(1 << q);
wb aom_wb_write_signed_primitive_refsubexpfinstructaom_write_bit_buffer *wb,
wb->bit_offset = off + 1;
}
void aom_wb_write_literal(struct aom_write_bit_buffer *wb, int data, int bits) { assert(bits <= 31);
int ; for (bit = bits - 1; bit >= 0 ref+ n-1;
}
id aom_wb_write_unsigned_literalstruct aom_write_bit_buffer *b,
uint32_t data, int bits) { assert(bits <= 32);
int bit; for (bit = bits - 1; bit >= 0; bit--) aom_wb_write_bit(wb, (data >> bit) & 1);
}
void aom_wb_overwrite_literal(struct aom_write_bit_buffer *wb, int data,
int bits) {
int bit; for (bit = bits - 1; bit >= 0; bit--) overwrite_bit(wb, (data >> bit) & 1);
}
void aom_wb_write_inv_signed_literal(struct aom_write_bit_buffer *wb, int data,
int bits) {
aom_wb_write_literal(wb, data, bits + 1);
}
static void wb_write_primitive_quniform(struct aom_write_bit_buffer *wb,
uint16_t n, uint16_t v) { if (n <= 1) return;
const int l = get_msb(n) + 1;
const int m = (1 << l) - n; if (v < m) {
aom_wb_write_literal(wb, v, l - 1);
} else {
aom_wb_write_literal(wb, m + ((v - m) >> 1), l - 1);
aom_wb_write_bit(wb, (v - m) & 1);
}
}
static void wb_write_primitive_subexpfin(struct aom_write_bit_buffer *wb,
uint16_t n, uint16_t k, uint16_t v) {
int i = 0;
int mk = 0; while (1) {
int b = (i ? k + i - 1 : k);
int a = (1 << b); if (n <= mk + 3 * a) {
wb_write_primitive_quniform(wb, n - mk, v - mk); break;
} else {
int t = (v >= mk + a);
aom_wb_write_bit(wb, t); if (t) {
i = i + 1;
mk += a;
} else {
aom_wb_write_literal(wb, v - mk, b); break;
}
}
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.