GstBaseParse

GstBaseParse

Functions

Properties

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstElement
                ╰── GstBaseParse

Includes

#include <gst/base/gstbaseparse.h>

Description

Functions

gst_base_parse_merge_tags ()

void
gst_base_parse_merge_tags (GstBaseParse *parse,
                           GstTagList *tags,
                           GstTagMergeMode mode);

gst_base_parse_set_duration ()

void
gst_base_parse_set_duration (GstBaseParse *parse,
                             GstFormat fmt,
                             gint64 duration,
                             gint interval);

gst_base_parse_set_average_bitrate ()

void
gst_base_parse_set_average_bitrate (GstBaseParse *parse,
                                    guint bitrate);

gst_base_parse_set_min_frame_size ()

void
gst_base_parse_set_min_frame_size (GstBaseParse *parse,
                                   guint min_size);

gst_base_parse_set_passthrough ()

void
gst_base_parse_set_passthrough (GstBaseParse *parse,
                                gboolean passthrough);

gst_base_parse_set_syncable ()

void
gst_base_parse_set_syncable (GstBaseParse *parse,
                             gboolean syncable);

gst_base_parse_set_has_timing_info ()

void
gst_base_parse_set_has_timing_info (GstBaseParse *parse,
                                    gboolean has_timing);

gst_base_parse_set_frame_rate ()

void
gst_base_parse_set_frame_rate (GstBaseParse *parse,
                               guint fps_num,
                               guint fps_den,
                               guint lead_in,
                               guint lead_out);

gst_base_parse_set_latency ()

void
gst_base_parse_set_latency (GstBaseParse *parse,
                            GstClockTime min_latency,
                            GstClockTime max_latency);

gst_base_parse_set_infer_ts ()

void
gst_base_parse_set_infer_ts (GstBaseParse *parse,
                             gboolean infer_ts);

gst_base_parse_set_pts_interpolation ()

void
gst_base_parse_set_pts_interpolation (GstBaseParse *parse,
                                      gboolean pts_interpolate);

gst_base_parse_set_ts_at_offset ()

void
gst_base_parse_set_ts_at_offset (GstBaseParse *parse,
                                 gsize offset);

gst_base_parse_convert_default ()

gboolean
gst_base_parse_convert_default (GstBaseParse *parse,
                                GstFormat src_format,
                                gint64 src_value,
                                GstFormat dest_format,
                                gint64 *dest_value);

gst_base_parse_add_index_entry ()

gboolean
gst_base_parse_add_index_entry (GstBaseParse *parse,
                                guint64 offset,
                                GstClockTime ts,
                                gboolean key,
                                gboolean force);

gst_base_parse_frame_new ()

GstBaseParseFrame *
gst_base_parse_frame_new (GstBuffer *buffer,
                          GstBaseParseFrameFlags flags,
                          gint overhead);

gst_base_parse_frame_init ()

void
gst_base_parse_frame_init (GstBaseParseFrame *frame);

gst_base_parse_frame_free ()

void
gst_base_parse_frame_free (GstBaseParseFrame *frame);

gst_base_parse_push_frame ()

GstFlowReturn
gst_base_parse_push_frame (GstBaseParse *parse,
                           GstBaseParseFrame *frame);

gst_base_parse_finish_frame ()

GstFlowReturn
gst_base_parse_finish_frame (GstBaseParse *parse,
                             GstBaseParseFrame *frame,
                             gint size);

GST_BASE_PARSE_DRAINING()

#define GST_BASE_PARSE_DRAINING(parse)  (!!(GST_BASE_PARSE_CAST(parse)->flags & GST_BASE_PARSE_FLAG_DRAINING))

GST_BASE_PARSE_LOST_SYNC()

#define GST_BASE_PARSE_LOST_SYNC(parse) (!!(GST_BASE_PARSE_CAST(parse)->flags & GST_BASE_PARSE_FLAG_LOST_SYNC))

GST_BASE_PARSE_SINK_PAD()

#define GST_BASE_PARSE_SINK_PAD(obj)    (GST_BASE_PARSE_CAST (obj)->sinkpad)

GST_BASE_PARSE_SRC_PAD()

#define GST_BASE_PARSE_SRC_PAD(obj)    (GST_BASE_PARSE_CAST (obj)->srcpad)

Types and Values

struct GstBaseParse

struct GstBaseParse {
  GstElement     element;
};

struct GstBaseParseClass

struct GstBaseParseClass {
  GstElementClass parent_class;

  /* virtual methods for subclasses */

  gboolean      (*start)              (GstBaseParse * parse);

  gboolean      (*stop)               (GstBaseParse * parse);

  gboolean      (*set_sink_caps)      (GstBaseParse * parse,
                                       GstCaps      * caps);

  GstFlowReturn (*handle_frame)       (GstBaseParse      * parse,
                                       GstBaseParseFrame * frame,
                                       gint              * skipsize);

  GstFlowReturn (*pre_push_frame)     (GstBaseParse      * parse,
                                       GstBaseParseFrame * frame);

  gboolean      (*convert)            (GstBaseParse * parse,
                                       GstFormat      src_format,
                                       gint64         src_value,
                                       GstFormat      dest_format,
                                       gint64       * dest_value);

  gboolean      (*sink_event)         (GstBaseParse * parse,
                                       GstEvent     * event);

  gboolean      (*src_event)          (GstBaseParse * parse,
                                       GstEvent     * event);

  GstCaps *     (*get_sink_caps)      (GstBaseParse * parse,
                                       GstCaps      * filter);

  GstFlowReturn (*detect)             (GstBaseParse * parse,
                                       GstBuffer    * buffer);

  gboolean      (*sink_query)         (GstBaseParse * parse,
                                       GstQuery     * query);

  gboolean      (*src_query)          (GstBaseParse * parse,
                                       GstQuery     * query);
};

GstBaseParseFrame

typedef struct {
  GstBuffer * buffer;
  GstBuffer * out_buffer;
  guint       flags;
  guint64     offset;
  gint        overhead;
} GstBaseParseFrame;

enum GstBaseParseFrameFlags

Members

GST_BASE_PARSE_FRAME_FLAG_NONE

   

GST_BASE_PARSE_FRAME_FLAG_NEW_FRAME

   

GST_BASE_PARSE_FRAME_FLAG_NO_FRAME

   

GST_BASE_PARSE_FRAME_FLAG_CLIP

   

GST_BASE_PARSE_FRAME_FLAG_DROP

   

GST_BASE_PARSE_FRAME_FLAG_QUEUE

   

GST_BASE_PARSE_FLAG_DRAINING

#define GST_BASE_PARSE_FLAG_DRAINING  (1 << 1)

GST_BASE_PARSE_FLAG_LOST_SYNC

#define GST_BASE_PARSE_FLAG_LOST_SYNC (1 << 0)

GST_BASE_PARSE_FLOW_DROPPED

#define GST_BASE_PARSE_FLOW_DROPPED     GST_FLOW_CUSTOM_SUCCESS

Property Details

The “disable-passthrough” property

  “disable-passthrough”      gboolean

Force processing (disables passthrough).

Flags: Read / Write

Default value: FALSE