pub struct Reader<'a>(/* private fields */);
Implementations§
Source§impl<'a> Reader<'a>
impl<'a> Reader<'a>
pub fn new(data: &'a [u8]) -> Self
Sourcepub fn read_bit(&mut self) -> Result<bool>
pub fn read_bit(&mut self) -> Result<bool>
Read a single bit from the spec. Implements f(1) to return a bool for convenience.
Sourcepub fn read_bits(&mut self, num_bits: u8) -> Result<u32>
pub fn read_bits(&mut self, num_bits: u8) -> Result<u32>
Implements f(n): Unsigned n-bit number appearing directly in the bitstream. The bits are read from high to low order. See 4.10.2
Sourcepub fn read_uvlc(&mut self) -> Result<u32>
pub fn read_uvlc(&mut self) -> Result<u32>
Implements uvlc(): Variable length unsigned n-bit number appearing directly in the bitstream. See 4.10.3
Sourcepub fn read_le(&mut self, num_bits: u8) -> Result<u32>
pub fn read_le(&mut self, num_bits: u8) -> Result<u32>
Implements le(n): Unsigned little-endian n-byte number appearing directly in the bitstream. See 4.10.4
Sourcepub fn read_leb128(&mut self) -> Result<u32>
pub fn read_leb128(&mut self) -> Result<u32>
Implements leb128(): Unsigned integer represented by a variable number of little-endian bytes. See 4.10.5
Sourcepub fn read_su(&mut self, num_bits: u8) -> Result<i32>
pub fn read_su(&mut self, num_bits: u8) -> Result<i32>
Implements su(n): Signed integer converted from an n bits unsigned integer in the bitstream. (The unsigned integer corresponds to the bottom n bits of the signed integer.). See 4.10.6
Sourcepub fn read_ns(&mut self, num_bits: u8) -> Result<u32>
pub fn read_ns(&mut self, num_bits: u8) -> Result<u32>
Implements ns(n): Unsigned encoded integer with maximum number of values n (i.e. output in range 0..n-1). See 4.10.7
Sourcepub fn read_delta_q(&mut self) -> Result<i32>
pub fn read_delta_q(&mut self) -> Result<i32>
Implements 5.9.13: Delta quantizer syntax.
pub fn more_data_in_bitstream(&self) -> bool
Sourcepub fn current_annexb_obu_length(
&mut self,
annexb_state: &mut AnnexBState,
) -> Result<Option<usize>>
pub fn current_annexb_obu_length( &mut self, annexb_state: &mut AnnexBState, ) -> Result<Option<usize>>
Get the length of the current OBU in AnnexB format.
pub fn position(&self) -> u64
Sourcepub fn read_trailing_bits(&mut self, num_bits: u64) -> Result<()>
pub fn read_trailing_bits(&mut self, num_bits: u64) -> Result<()>
Implements 5.3.4.
Sourcepub fn decode_unsigned_subexp_with_ref(
&mut self,
mx: i32,
r: i32,
) -> Result<u32>
pub fn decode_unsigned_subexp_with_ref( &mut self, mx: i32, r: i32, ) -> Result<u32>
Implements 5.9.27.
Sourcepub fn decode_signed_subexp_with_ref(
&mut self,
low: i32,
high: i32,
r: i32,
) -> Result<i32>
pub fn decode_signed_subexp_with_ref( &mut self, low: i32, high: i32, r: i32, ) -> Result<i32>
Implements 5.9.26.
Sourcepub fn byte_alignment(&mut self) -> Result<()>
pub fn byte_alignment(&mut self) -> Result<()>
Implements 5.3.5 Byte alignment syntax