# gstav1bitwriter

## Functions

### gst_av1_bit_writer_frame_header_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_frame_header_obu (GstAV1FrameHeaderOBU * frame_hdr,
                                         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` –

the bit stream generated by the frame header

`size` –

the size in bytes of the input and output

Returns (GstAV1BitWriterResult) –

a GstAV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_frame_header_obu_with_offsets

    GstAV1BitWriterResult
    gst_av1_bit_writer_frame_header_obu_with_offsets (GstAV1FrameHeaderOBU * frame_hdr,
                                                      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` –

return the qindex fields offset in bits.

`segmentation_offset` –

return the segmentation fields offset in bits.

`lf_offset` –

return the loopfilter fields offset in bits.

`cdef_offset` –

return the cdef fields offset in bits.

`cdef_size` –

return the cdef fields size in bits.

`data` –

the bit stream generated by the frame header

`size` –

the size in bytes of the input and output

Returns (GstAV1BitWriterResult) –

a GstAV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_metadata_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_metadata_obu (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` –

the bit stream generated by the meta data

`size` –

the size in bytes of the input and output

Returns (GstAV1BitWriterResult) –

a GstAV1BitWriterResult

Since : 1.22

### gst_av1_bit_writer_sequence_header_obu

    GstAV1BitWriterResult
    gst_av1_bit_writer_sequence_header_obu (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` –

the bit stream generated by the sequence header

`size` –

the size in bytes of the input and output

Returns (GstAV1BitWriterResult) –

a GstAV1BitWriterResult

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` –

the bit stream generated

`size` –

the size in bytes of the input and output

Returns (GstAV1BitWriterResult) –

a GstAV1BitWriterResult

Since : 1.22

## Aliases

### GstAV1BitWriterResult

    typedef enum GstAV1BitWriterResult GstAV1BitWriterResult

The result of writing AV1 data into bit stream.

Since : 1.24

The results of the search are