# GstAV1BitWriter

## Functions

### gst_av1_bit_writer_frame_header_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_frame_header_obu (const GstAV1FrameHeaderOBU * frame_hdr,
                                         const GstAV1SequenceHeaderOBU * seq_hdr,
                                         guint8 temporal_id,
                                         guint8 spatial_id,
                                         gboolean size_field,
                                         guint8 * data,
                                         guint * size)

Generating the according AV1 bit stream OBU by providing the frame header.

Parameters:

`frame_hdr` –

the frame header of GstAV1FrameHeaderOBU to write

`seq_hdr` –

the sequence header of GstAV1SequenceHeaderOBU to refer

`temporal_id` –

specifies the temporal level of the data contained in the OBU.

`spatial_id` –

specifies the spatial level of the data contained in the OBU.

`size_field` –

whether the OBU header contains the OBU size.

`data` ( [out]) –

the bit stream generated by the frame header

`size` ( [inout]) –

the size in bytes of the input and output

Returns –

a GstAV1BitWriterResult

Since : 1.22

### GstCodecParsers.prototype.av1_bit_writer_frame_header_obu

    function GstCodecParsers.prototype.av1_bit_writer_frame_header_obu(frame_hdr: GstCodecParsers.AV1FrameHeaderOBU, seq_hdr: GstCodecParsers.AV1SequenceHeaderOBU, temporal_id: Number, spatial_id: Number, size_field: Number, size: Number): {
        // javascript wrapper for 'gst_av1_bit_writer_frame_header_obu'
    }

Generating the according AV1 bit stream OBU by providing the frame header.

Parameters:

`frame_hdr` (GstCodecParsers.AV1FrameHeaderOBU) –

the frame header of GstCodecParsers.AV1FrameHeaderOBU to write

`seq_hdr` (GstCodecParsers.AV1SequenceHeaderOBU) –

the sequence header of GstCodecParsers.AV1SequenceHeaderOBU to refer

`temporal_id` (Number) –

specifies the temporal level of the data contained in the OBU.

`spatial_id` (Number) –

specifies the spatial level of the data contained in the OBU.

`size_field` (Number) –

whether the OBU header contains the OBU size.

`size` (Number) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`size` (Number ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### GstCodecParsers.av1_bit_writer_frame_header_obu

    def GstCodecParsers.av1_bit_writer_frame_header_obu (frame_hdr, seq_hdr, temporal_id, spatial_id, size_field, size):
        #python wrapper for 'gst_av1_bit_writer_frame_header_obu'

Generating the according AV1 bit stream OBU by providing the frame header.

Parameters:

`frame_hdr` (GstCodecParsers.AV1FrameHeaderOBU) –

the frame header of GstCodecParsers.AV1FrameHeaderOBU to write

`seq_hdr` (GstCodecParsers.AV1SequenceHeaderOBU) –

the sequence header of GstCodecParsers.AV1SequenceHeaderOBU to refer

`temporal_id` (int) –

specifies the temporal level of the data contained in the OBU.

`spatial_id` (int) –

specifies the spatial level of the data contained in the OBU.

`size_field` (bool) –

whether the OBU header contains the OBU size.

`size` (int) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (int ) –

a GstCodecParsers.AV1BitWriterResult

`size` (int ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_frame_header_obu_with_offsets

    GstAV1BitWriterResult
    gst_av1_bit_writer_frame_header_obu_with_offsets (const GstAV1FrameHeaderOBU * frame_hdr,
                                                      const GstAV1SequenceHeaderOBU * seq_hdr,
                                                      guint8 temporal_id,
                                                      guint8 spatial_id,
                                                      gboolean size_field,
                                                      guint size_field_size,
                                                      guint * qindex_offset,
                                                      guint * segmentation_offset,
                                                      guint * lf_offset,
                                                      guint * cdef_offset,
                                                      guint * cdef_size,
                                                      guint8 * data,
                                                      guint * size)

While Generating the according AV1 bit stream OBU by providing the frame header, this function also return bit offsets of qindex, segmentation and cdef, etc. These offsets can help to change the content of these fields later. This function is useful if the encoder may change the content of the frame header after generating it. For example, some HW needs user to provide a frame header before the real encoding job, and it will change the according fields in the frame header during the real encoding job.

Parameters:

`frame_hdr` –

the frame header of GstAV1FrameHeaderOBU to write

`seq_hdr` –

the sequence header of GstAV1SequenceHeaderOBU to refer

`temporal_id` –

specifies the temporal level of the data contained in the OBU.

`spatial_id` –

specifies the spatial level of the data contained in the OBU.

`size_field` –

whether the OBU header contains the OBU size.

`size_field_size` –

> 0 means a fixed OBU header size field.

`qindex_offset` ( [out]) –

return the qindex fields offset in bits.

`segmentation_offset` ( [out]) –

return the segmentation fields offset in bits.

`lf_offset` ( [out]) –

return the loopfilter fields offset in bits.

`cdef_offset` ( [out]) –

return the cdef fields offset in bits.

`cdef_size` ( [out]) –

return the cdef fields size in bits.

`data` ( [out]) –

the bit stream generated by the frame header

`size` ( [inout]) –

the size in bytes of the input and output

Returns –

a GstAV1BitWriterResult

Since : 1.22

### GstCodecParsers.prototype.av1_bit_writer_frame_header_obu_with_offsets

    function GstCodecParsers.prototype.av1_bit_writer_frame_header_obu_with_offsets(frame_hdr: GstCodecParsers.AV1FrameHeaderOBU, seq_hdr: GstCodecParsers.AV1SequenceHeaderOBU, temporal_id: Number, spatial_id: Number, size_field: Number, size_field_size: Number, size: Number): {
        // javascript wrapper for 'gst_av1_bit_writer_frame_header_obu_with_offsets'
    }

While Generating the according AV1 bit stream OBU by providing the frame header, this function also return bit offsets of qindex, segmentation and cdef, etc. These offsets can help to change the content of these fields later. This function is useful if the encoder may change the content of the frame header after generating it. For example, some HW needs user to provide a frame header before the real encoding job, and it will change the according fields in the frame header during the real encoding job.

Parameters:

`frame_hdr` (GstCodecParsers.AV1FrameHeaderOBU) –

the frame header of GstCodecParsers.AV1FrameHeaderOBU to write

`seq_hdr` (GstCodecParsers.AV1SequenceHeaderOBU) –

the sequence header of GstCodecParsers.AV1SequenceHeaderOBU to refer

`temporal_id` (Number) –

specifies the temporal level of the data contained in the OBU.

`spatial_id` (Number) –

specifies the spatial level of the data contained in the OBU.

`size_field` (Number) –

whether the OBU header contains the OBU size.

`size_field_size` (Number) –

> 0 means a fixed OBU header size field.

`size` (Number) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`qindex_offset` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`segmentation_offset` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`lf_offset` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`cdef_offset` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`cdef_size` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`data` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`size` (Number ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### GstCodecParsers.av1_bit_writer_frame_header_obu_with_offsets

    def GstCodecParsers.av1_bit_writer_frame_header_obu_with_offsets (frame_hdr, seq_hdr, temporal_id, spatial_id, size_field, size_field_size, size):
        #python wrapper for 'gst_av1_bit_writer_frame_header_obu_with_offsets'

While Generating the according AV1 bit stream OBU by providing the frame header, this function also return bit offsets of qindex, segmentation and cdef, etc. These offsets can help to change the content of these fields later. This function is useful if the encoder may change the content of the frame header after generating it. For example, some HW needs user to provide a frame header before the real encoding job, and it will change the according fields in the frame header during the real encoding job.

Parameters:

`frame_hdr` (GstCodecParsers.AV1FrameHeaderOBU) –

the frame header of GstCodecParsers.AV1FrameHeaderOBU to write

`seq_hdr` (GstCodecParsers.AV1SequenceHeaderOBU) –

the sequence header of GstCodecParsers.AV1SequenceHeaderOBU to refer

`temporal_id` (int) –

specifies the temporal level of the data contained in the OBU.

`spatial_id` (int) –

specifies the spatial level of the data contained in the OBU.

`size_field` (bool) –

whether the OBU header contains the OBU size.

`size_field_size` (int) –

> 0 means a fixed OBU header size field.

`size` (int) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`qindex_offset` (int ) –

a GstCodecParsers.AV1BitWriterResult

`segmentation_offset` (int ) –

a GstCodecParsers.AV1BitWriterResult

`lf_offset` (int ) –

a GstCodecParsers.AV1BitWriterResult

`cdef_offset` (int ) –

a GstCodecParsers.AV1BitWriterResult

`cdef_size` (int ) –

a GstCodecParsers.AV1BitWriterResult

`data` (int ) –

a GstCodecParsers.AV1BitWriterResult

`size` (int ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_metadata_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_metadata_obu (const GstAV1MetadataOBU * metadata,
                                     guint8 temporal_id,
                                     guint8 spatial_id,
                                     gboolean size_field,
                                     guint8 * data,
                                     guint * size)

Generating the according AV1 bit stream OBU by providing the meta data.

Parameters:

`metadata` –

the meta data of GstAV1MetadataOBU to write

`temporal_id` –

specifies the temporal level of the data contained in the OBU.

`spatial_id` –

specifies the spatial level of the data contained in the OBU.

`size_field` –

whether the header contain size feild

`data` ( [out]) –

the bit stream generated by the meta data

`size` ( [inout]) –

the size in bytes of the input and output

Returns –

a GstAV1BitWriterResult

Since : 1.22

### GstCodecParsers.prototype.av1_bit_writer_metadata_obu

    function GstCodecParsers.prototype.av1_bit_writer_metadata_obu(metadata: GstCodecParsers.AV1MetadataOBU, temporal_id: Number, spatial_id: Number, size_field: Number, size: Number): {
        // javascript wrapper for 'gst_av1_bit_writer_metadata_obu'
    }

Generating the according AV1 bit stream OBU by providing the meta data.

Parameters:

`metadata` (GstCodecParsers.AV1MetadataOBU) –

the meta data of GstCodecParsers.AV1MetadataOBU to write

`temporal_id` (Number) –

specifies the temporal level of the data contained in the OBU.

`spatial_id` (Number) –

specifies the spatial level of the data contained in the OBU.

`size_field` (Number) –

whether the header contain size feild

`size` (Number) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`size` (Number ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### GstCodecParsers.av1_bit_writer_metadata_obu

    def GstCodecParsers.av1_bit_writer_metadata_obu (metadata, temporal_id, spatial_id, size_field, size):
        #python wrapper for 'gst_av1_bit_writer_metadata_obu'

Generating the according AV1 bit stream OBU by providing the meta data.

Parameters:

`metadata` (GstCodecParsers.AV1MetadataOBU) –

the meta data of GstCodecParsers.AV1MetadataOBU to write

`temporal_id` (int) –

specifies the temporal level of the data contained in the OBU.

`spatial_id` (int) –

specifies the spatial level of the data contained in the OBU.

`size_field` (bool) –

whether the header contain size feild

`size` (int) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (int ) –

a GstCodecParsers.AV1BitWriterResult

`size` (int ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_sequence_header_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_sequence_header_obu (const GstAV1SequenceHeaderOBU * seq_hdr,
                                            gboolean size_field,
                                            guint8 * data,
                                            guint * size)

Generating the according AV1 bit stream OBU by providing the sequence header.

Parameters:

`seq_hdr` –

the sequence header of GstAV1SequenceHeaderOBU to write

`size_field` –

whether the header contain size feild

`data` ( [out]) –

the bit stream generated by the sequence header

`size` ( [inout]) –

the size in bytes of the input and output

Returns –

a GstAV1BitWriterResult

Since : 1.22

### GstCodecParsers.prototype.av1_bit_writer_sequence_header_obu

    function GstCodecParsers.prototype.av1_bit_writer_sequence_header_obu(seq_hdr: GstCodecParsers.AV1SequenceHeaderOBU, size_field: Number, size: Number): {
        // javascript wrapper for 'gst_av1_bit_writer_sequence_header_obu'
    }

Generating the according AV1 bit stream OBU by providing the sequence header.

Parameters:

`seq_hdr` (GstCodecParsers.AV1SequenceHeaderOBU) –

the sequence header of GstCodecParsers.AV1SequenceHeaderOBU to write

`size_field` (Number) –

whether the header contain size feild

`size` (Number) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`size` (Number ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### GstCodecParsers.av1_bit_writer_sequence_header_obu

    def GstCodecParsers.av1_bit_writer_sequence_header_obu (seq_hdr, size_field, size):
        #python wrapper for 'gst_av1_bit_writer_sequence_header_obu'

Generating the according AV1 bit stream OBU by providing the sequence header.

Parameters:

`seq_hdr` (GstCodecParsers.AV1SequenceHeaderOBU) –

the sequence header of GstCodecParsers.AV1SequenceHeaderOBU to write

`size_field` (bool) –

whether the header contain size feild

`size` (int) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (int ) –

a GstCodecParsers.AV1BitWriterResult

`size` (int ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_temporal_delimiter_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_temporal_delimiter_obu (gboolean size_field,
                                               guint8 * data,
                                               guint * size)

Generating the according temporal delimiter AV1 bit stream OBU.

Parameters:

`size_field` –

whether the header contain size feild

`data` ( [out]) –

the bit stream generated

`size` ( [inout]) –

the size in bytes of the input and output

Returns –

a GstAV1BitWriterResult

Since : 1.22

### GstCodecParsers.prototype.av1_bit_writer_temporal_delimiter_obu

    function GstCodecParsers.prototype.av1_bit_writer_temporal_delimiter_obu(size_field: Number, size: Number): {
        // javascript wrapper for 'gst_av1_bit_writer_temporal_delimiter_obu'
    }

Generating the according temporal delimiter AV1 bit stream OBU.

Parameters:

`size_field` (Number) –

whether the header contain size feild

`size` (Number) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (Number ) –

a GstCodecParsers.AV1BitWriterResult

`size` (Number ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### GstCodecParsers.av1_bit_writer_temporal_delimiter_obu

    def GstCodecParsers.av1_bit_writer_temporal_delimiter_obu (size_field, size):
        #python wrapper for 'gst_av1_bit_writer_temporal_delimiter_obu'

Generating the according temporal delimiter AV1 bit stream OBU.

Parameters:

`size_field` (bool) –

whether the header contain size feild

`size` (int) –

the size in bytes of the input and output

Returns a tuple made of:

(GstCodecParsers.AV1BitWriterResult ) –

a GstCodecParsers.AV1BitWriterResult

`data` (int ) –

a GstCodecParsers.AV1BitWriterResult

`size` (int ) –

a GstCodecParsers.AV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_write_leb128

    gboolean
    gst_av1_bit_writer_write_leb128 (guint8 * data,
                                     gsize data_size,
                                     guint * len,
                                     guint64 value)

Encodes value as unsigned LEB128 and writes it to data. The caller should provide at least GST_AV1_LEB128_MAX_SIZE bytes.

Parameters:

`data` ( [out][array length=data_size]) –

destination buffer for the encoded value

`data_size` –

size of data in bytes

`len` ( [out]) –

length in bytes written to data

`value` –

value to encode

Returns –

TRUE on success, FALSE if value exceeds GST_AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

Since : 1.30

### GstCodecParsers.prototype.av1_bit_writer_write_leb128

    function GstCodecParsers.prototype.av1_bit_writer_write_leb128(value: Number): {
        // javascript wrapper for 'gst_av1_bit_writer_write_leb128'
    }

Encodes value as unsigned LEB128 and writes it to data. The caller should provide at least GstCodecParsers.AV1_LEB128_MAX_SIZE bytes.

Parameters:

`value` (Number) –

value to encode

Returns a tuple made of:

(Number ) –

true on success, false if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

`data` ([ Number ] ) –

true on success, false if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

`data_size` (Number ) –

true on success, false if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

`len` (Number ) –

true on success, false if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

Since : 1.30

### GstCodecParsers.av1_bit_writer_write_leb128

    def GstCodecParsers.av1_bit_writer_write_leb128 (value):
        #python wrapper for 'gst_av1_bit_writer_write_leb128'

Encodes value as unsigned LEB128 and writes it to data. The caller should provide at least GstCodecParsers.AV1_LEB128_MAX_SIZE bytes.

Parameters:

`value` (int) –

value to encode

Returns a tuple made of:

(bool ) –

True on success, False if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

`data` ([ int ] ) –

True on success, False if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

`data_size` (int ) –

True on success, False if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

`len` (int ) –

True on success, False if value exceeds GstCodecParsers.AV1_LEB128_MAX_VALUE, if data is too small, or if arguments are invalid.

Since : 1.30

## Enumerations

### GstAV1BitWriterResult

The result of writing AV1 data into bit stream.

##### Members

`GST_AV1_BIT_WRITER_OK` (0) –

The writing succeeded

`GST_AV1_BIT_WRITER_INVALID_DATA` (1) –

The input data to write is invalid

`GST_AV1_BIT_WRITER_NO_MORE_SPACE` (2) –

The output does not have enough size

`GST_AV1_BIT_WRITER_ERROR` (3) –

An general error occurred when writing

Since : 1.24

### GstCodecParsers.AV1BitWriterResult

The result of writing AV1 data into bit stream.

##### Members

`GstCodecParsers.AV1BitWriterResult.OK` (0) –

The writing succeeded

`GstCodecParsers.AV1BitWriterResult.INVALID_DATA` (1) –

The input data to write is invalid

`GstCodecParsers.AV1BitWriterResult.NO_MORE_SPACE` (2) –

The output does not have enough size

`GstCodecParsers.AV1BitWriterResult.ERROR` (3) –

An general error occurred when writing

Since : 1.24

### GstCodecParsers.AV1BitWriterResult

The result of writing AV1 data into bit stream.

##### Members

`GstCodecParsers.AV1BitWriterResult.OK` (0) –

The writing succeeded

`GstCodecParsers.AV1BitWriterResult.INVALID_DATA` (1) –

The input data to write is invalid

`GstCodecParsers.AV1BitWriterResult.NO_MORE_SPACE` (2) –

The output does not have enough size

`GstCodecParsers.AV1BitWriterResult.ERROR` (3) –

An general error occurred when writing

Since : 1.24

The results of the search are