| Top | Home | Up | Prev | Next |
GstBitReader
GstBitReader — Reads any number of bits from a memory buffer
Functions
Types and Values
Includes
#include <gst/base/gstbitreader.h>
Description
GstBitReader provides a bit reader that can read any number of bits from a memory buffer. It provides functions for reading any number of bits into 8, 16, 32 and 64 bit variables.
Functions
GST_BIT_READER_INIT()
#define GST_BIT_READER_INIT(data, size) {data, size, 0, 0}
A GstBitReader must be initialized with this macro, before it can be
used. This macro can used be to initialize a variable, but it cannot
be assigned to a variable. In that case you have to use
gst_bit_reader_init().
Parameters
gst_bit_reader_new ()
GstBitReader * gst_bit_reader_new (const guint8 *data,guint size);
Create a new GstBitReader instance, which will read from data
.
Free-function: gst_bit_reader_free
[skip]
Parameters
gst_bit_reader_free ()
void
gst_bit_reader_free (GstBitReader *reader);
Frees a GstBitReader instance, which was previously allocated by
gst_bit_reader_new().
Parameters
gst_bit_reader_init ()
void gst_bit_reader_init (GstBitReader *reader,const guint8 *data,guint size);
Initializes a GstBitReader instance to read from data
. This function
can be called on already initialized instances.
Parameters
reader
a GstBitReader instance
data
data from which the bit reader should read.
[in][array length=size]size
Size of data
in bytes
gst_bit_reader_get_pos ()
guint
gst_bit_reader_get_pos (const GstBitReader *reader);
Returns the current position of a GstBitReader instance in bits.
Parameters
reader
a GstBitReader instance
Returns
The current position of reader
in bits.
gst_bit_reader_get_remaining ()
guint
gst_bit_reader_get_remaining (const GstBitReader *reader);
Returns the remaining number of bits of a GstBitReader instance.
Parameters
reader
a GstBitReader instance
Returns
The remaining number of bits of reader
instance.
gst_bit_reader_set_pos ()
gboolean gst_bit_reader_set_pos (GstBitReader *reader,guint pos);
Sets the new position of a GstBitReader instance to pos
in bits.
Parameters
gst_bit_reader_get_size ()
guint
gst_bit_reader_get_size (const GstBitReader *reader);
Returns the total number of bits of a GstBitReader instance.
Parameters
reader
a GstBitReader instance
Returns
The total number of bits of reader
instance.
gst_bit_reader_skip ()
gboolean gst_bit_reader_skip (GstBitReader *reader,guint nbits);
Skips nbits
bits of the GstBitReader instance.
Parameters
gst_bit_reader_skip_to_byte ()
gboolean
gst_bit_reader_skip_to_byte (GstBitReader *reader);
Skips until the next byte.
Parameters
reader
a GstBitReader instance
gst_bit_reader_get_bits_uint16 ()
gboolean gst_bit_reader_get_bits_uint16 (GstBitReader *reader,guint16 *val,guint nbits);
Read nbits
bits into val
and update the current position.
Parameters
gst_bit_reader_get_bits_uint32 ()
gboolean gst_bit_reader_get_bits_uint32 (GstBitReader *reader,guint32 *val,guint nbits);
Read nbits
bits into val
and update the current position.
Parameters
gst_bit_reader_get_bits_uint64 ()
gboolean gst_bit_reader_get_bits_uint64 (GstBitReader *reader,guint64 *val,guint nbits);
Read nbits
bits into val
and update the current position.
Parameters
gst_bit_reader_get_bits_uint8 ()
gboolean gst_bit_reader_get_bits_uint8 (GstBitReader *reader,guint8 *val,guint nbits);
Read nbits
bits into val
and update the current position.
Parameters
gst_bit_reader_peek_bits_uint16 ()
gboolean gst_bit_reader_peek_bits_uint16 (const GstBitReader *reader,guint16 *val,guint nbits);
Read nbits
bits into val
but keep the current position.
Parameters
gst_bit_reader_peek_bits_uint32 ()
gboolean gst_bit_reader_peek_bits_uint32 (const GstBitReader *reader,guint32 *val,guint nbits);
Read nbits
bits into val
but keep the current position.
Parameters
gst_bit_reader_peek_bits_uint64 ()
gboolean gst_bit_reader_peek_bits_uint64 (const GstBitReader *reader,guint64 *val,guint nbits);
Read nbits
bits into val
but keep the current position.
Parameters
gst_bit_reader_peek_bits_uint8 ()
gboolean gst_bit_reader_peek_bits_uint8 (const GstBitReader *reader,guint8 *val,guint nbits);
Read nbits
bits into val
but keep the current position.
Parameters
gst_bit_reader_skip_unchecked ()
void gst_bit_reader_skip_unchecked (GstBitReader *reader,guint nbits);
Skips nbits
bits of the GstBitReader instance without checking if there
are enough bits available in the bit reader.
Parameters
gst_bit_reader_skip_to_byte_unchecked ()
void
gst_bit_reader_skip_to_byte_unchecked (GstBitReader *reader);
Skips until the next byte without checking if there are enough bits available in the bit reader.
Parameters
reader
a GstBitReader instance
gst_bit_reader_get_bits_uint16_unchecked ()
guint16 gst_bit_reader_get_bits_uint16_unchecked (GstBitReader *reader,guint nbits);
Read nbits
bits into val
and update the current position without
checking if there are enough bits available in the bit reader.
Parameters
Returns
unsigned 16 bit integer with the bits.
gst_bit_reader_get_bits_uint32_unchecked ()
guint32 gst_bit_reader_get_bits_uint32_unchecked (GstBitReader *reader,guint nbits);
Read nbits
bits into val
and update the current position without
checking if there are enough bits available in the bit reader.
Parameters
Returns
unsigned 32 bit integer with the bits.
gst_bit_reader_get_bits_uint64_unchecked ()
guint64 gst_bit_reader_get_bits_uint64_unchecked (GstBitReader *reader,guint nbits);
Read nbits
bits into val
and update the current position without
checking if there are enough bits available in the bit reader.
Parameters
Returns
unsigned 64 bit integer with the bits.
gst_bit_reader_get_bits_uint8_unchecked ()
guint8 gst_bit_reader_get_bits_uint8_unchecked (GstBitReader *reader,guint nbits);
Read nbits
bits into val
and update the current position without
checking if there are enough bits available in the bit reader.
Parameters
Returns
unsigned 8 bit integer with the bits.
gst_bit_reader_peek_bits_uint16_unchecked ()
guint16 gst_bit_reader_peek_bits_uint16_unchecked (const GstBitReader *reader,guint nbits);
Read nbits
bits into val
but keep the current position without
checking if there are enough bits available in the bit reader
Parameters
Returns
unsigned 16 bit integer with the bits.
gst_bit_reader_peek_bits_uint32_unchecked ()
guint32 gst_bit_reader_peek_bits_uint32_unchecked (const GstBitReader *reader,guint nbits);
Read nbits
bits into val
but keep the current position without
checking if there are enough bits available in the bit reader
Parameters
Returns
unsigned 32 bit integer with the bits.
gst_bit_reader_peek_bits_uint64_unchecked ()
guint64 gst_bit_reader_peek_bits_uint64_unchecked (const GstBitReader *reader,guint nbits);
Read nbits
bits into val
but keep the current position without
checking if there are enough bits available in the bit reader
Parameters
Returns
unsigned 64 bit integer with the bits.
gst_bit_reader_peek_bits_uint8_unchecked ()
guint8 gst_bit_reader_peek_bits_uint8_unchecked (const GstBitReader *reader,guint nbits);
Read nbits
bits into val
but keep the current position without
checking if there are enough bits available in the bit reader
Parameters
Returns
unsigned 8 bit integer with the bits.
Types and Values
GstBitReader
typedef struct {
const guint8 *data;
guint size;
guint byte; /* Byte position */
guint bit; /* Bit position in the current byte */
} GstBitReader;
A bit reader instance.
Generated by GTK-Doc V1.27