## vorbisparse vorbisparse |

## Types and Values

struct | GstVorbisParse

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstElement
                    ╰── GstVorbisParse
                        ╰── GstVorbisTag

## Description

The vorbisparse element will parse the header packets of the Vorbis stream and put them as the streamheader in the caps. This is used in the multifdsink case where you want to stream live vorbis streams to multiple clients, each client has to receive the streamheaders first before they can consume the vorbis packets.

This element also makes sure that the buffers that it pushes out are properly timestamped and that their offset and offset_end are set. The buffers that vorbisparse outputs have all of the metadata that oggmux expects to receive, which allows you to (for example) remux an ogg/vorbis file.

#### Example pipelines

    1
    gst-launch-1.0 -v filesrc location=sine.ogg ! oggdemux ! vorbisparse ! fakesink

This pipeline shows that the streamheader is set in the caps, and that each buffer has the timestamp, duration, offset, and offset_end set.

    1
    2
    gst-launch-1.0 filesrc location=sine.ogg ! oggdemux ! vorbisparse \
               ! oggmux ! filesink location=sine-remuxed.ogg

This pipeline shows remuxing. sine-remuxed.ogg might not be exactly the same as sine.ogg, but they should produce exactly the same decoded data.

## Synopsis

### Element Information

plugin | vorbis
author | Thomas Vander Stichele <thomas at apestaart dot org>
class | Codec/Parser/Audio

### Element Pads

name | sink
direction | sink
presence | always
details | audio/x-vorbis

name | src
direction | source
presence | always
details | audio/x-vorbis

## Functions

## Types and Values

### struct GstVorbisParse

    struct GstVorbisParse;

Opaque data structure.

## See Also

vorbisdec, oggdemux, theoraparse