GstSample

GstSample — A media sample

Synopsis

#include <gst/gst.h>

                    GstSample;
GstBuffer *         gst_sample_get_buffer               (GstSample *sample);
GstCaps *           gst_sample_get_caps                 (GstSample *sample);
const GstStructure * gst_sample_get_info                (GstSample *sample);
GstSegment *        gst_sample_get_segment              (GstSample *sample);
GstSample *         gst_sample_new                      (GstBuffer *buffer,
                                                         GstCaps *caps,
                                                         const GstSegment *segment,
                                                         GstStructure *info);
GstSample *         gst_sample_ref                      (GstSample *sample);
void                gst_sample_unref                    (GstSample *sample);

Description

A GstSample is a small object containing data, a type, timing and extra arbitrary information.

Last reviewed on 2012-03-29 (0.11.3)

Details

GstSample

typedef struct _GstSample GstSample;

The opaque structure of a GstSample. A sample contains a typed memory block and the associated timing information. It is mainly used to exchange buffers with an application.


gst_sample_get_buffer ()

GstBuffer *         gst_sample_get_buffer               (GstSample *sample);

Get the buffer associated with sample

sample :

a GstSample

Returns :

the buffer of sample or NULL when there is no buffer. The buffer remains valid as long as sample is valid. If you need to hold on to it for longer than that, take a ref to the buffer with gst_buffer_ref(). [transfer none]

gst_sample_get_caps ()

GstCaps *           gst_sample_get_caps                 (GstSample *sample);

Get the caps associated with sample

sample :

a GstSample

Returns :

the caps of sample or NULL when there is no caps. The caps remain valid as long as sample is valid. If you need to hold on to the caps for longer than that, take a ref to the caps with gst_caps_ref(). [transfer none]

gst_sample_get_info ()

const GstStructure * gst_sample_get_info                (GstSample *sample);

Get extra information associated with sample.

sample :

a GstSample

Returns :

the extra info of sample. The info remains valid as long as sample is valid. [transfer none]

gst_sample_get_segment ()

GstSegment *        gst_sample_get_segment              (GstSample *sample);

Get the segment associated with sample

sample :

a GstSample

Returns :

the segment of sample. The segment remains valid as long as sample is valid. [transfer none]

gst_sample_new ()

GstSample *         gst_sample_new                      (GstBuffer *buffer,
                                                         GstCaps *caps,
                                                         const GstSegment *segment,
                                                         GstStructure *info);

Create a new GstSample with the provided details.

Free-function: gst_sample_unref

buffer :

a GstBuffer, or NULL. [transfer none][allow-none]

caps :

a GstCaps, or NULL. [transfer none][allow-none]

segment :

a GstSegment, or NULL. [transfer none][allow-none]

info :

a GstStructure, or NULL. [transfer full][allow-none]

Returns :

the new GstSample. gst_sample_unref() after usage. [transfer full]

gst_sample_ref ()

GstSample *         gst_sample_ref                      (GstSample *sample);

Increases the refcount of the given sample by one.

sample :

a GstSample

Returns :

sample. [transfer full]

gst_sample_unref ()

void                gst_sample_unref                    (GstSample *sample);

Decreases the refcount of the sample. If the refcount reaches 0, the sample will be freed.

sample :

a GstSample. [transfer full]

See Also

GstBuffer, GstCaps, GstSegment