Gst::EventSeek Class Reference

A seek event. More...

`#include <gstreamermm/event.h>`

Inheritance diagram for Gst::EventSeek:
[legend]

## Public Member Functions

void | parse (double& rate, Format& format, SeekFlags& flags, SeekType& start_type, gint64&start, SeekType& stop_type, gint64& stop) const
| Parses a seek event and stores the results in the given result locations. More...
gint64 | parse_start () const
| Parses the start of a seek event. More...
double | parse_rate () const
| Parses the rate of a seek event. More...
Format | parse_format () const
| Parses the format of a seek event. More...
SeekFlags | parse_flags () const
| Parses the flags of a seek event. More...
SeekType | parse_start_type () const
| Parses the start type of a seek event. More...
SeekType | parse_stop_type () const
| Parses the stop type of a seek event. More...
gint64 | parse_stop () const
| Parses the stop of a seek event. More...
Public Member Functions inherited from Gst::Event
void | reference () const
| Increment the reference count for this object. More...
void | unreference () const
| Decrement the reference count for this object. More...
GstEvent* | gobj ()
| Provides access to the underlying C instance. More...
const GstEvent* | gobj () const
| Provides access to the underlying C instance. More...
GstEvent* | gobj_copy () const
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
| Event ()=delete
| Event (const Event&)=delete
Event& | operator= (const Event&)=delete
Gst::Structure | get_structure () const
| Access the structure of the event. More...
bool | has_name (const Glib::ustring& name) const
| Checks if event has the given name. More...
guint32 | get_seqnum () const
| Retrieve the sequence number of a event. More...
void | set_seqnum (guint32 seqnum)
| Set the sequence number of a event. More...
gint64 | get_running_time_offset () const
| Retrieve the accumulated running time offset of the event. More...
void | set_running_time_offset (gint64 offset)
| Set the running time offset of a event. More...
Glib::RefPtr< Gst::Event > | copy () const
| Copy the event using the event specific copy function. More...
Glib::RefPtr< Gst::Event > | create_writable ()
| Makes a writable event from the given event. More...
bool | is_downstream () const
| Check if an event can travel downstream. More...
bool | is_serialized () const
| Check if an event is serialized with the data stream. More...
bool | is_upstream () const
| Check if an event can travel upstream. More...
EventType | get_event_type () const
| Get the Gst::EventType of the event. More...
Gst::ClockTime | get_timestamp () const
| Get the Gst::ClockTime timestamp of the event. More...
Public Member Functions inherited from Gst::MiniObject
void | reference () const
| Increment the reference count for this object. More...
void | unreference () const
| Decrement the reference count for this object. More...
GstMiniObject* | gobj ()
| Provides access to the underlying C instance. More...
const GstMiniObject* | gobj () const
| Provides access to the underlying C instance. More...
GstMiniObject* | gobj_copy () const
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
| MiniObject ()=delete
| MiniObject (const MiniObject&)=delete
MiniObject& | operator= (const MiniObject&)=delete
| ~MiniObject ()
guint | get_flags () const
void | set_flags (const guint& value)
gint | get_refcount () const
gint | get_lockstate () const
bool | lock (LockFlags flags)
| Lock the mini-object with the specified access mode in flags. More...
void | unlock (LockFlags flags)
| Unlock the mini-object with the specified access mode in flags. More...
bool | is_writable () const
| If mini_object has the LOCKABLE flag set, check if the current EXCLUSIVE lock on object is the only one, this means that changes to the object will not be visible to any other object. More...
Glib::RefPtr< MiniObject > | create_writable ()
| Checks if a mini-object is writable. More...
void | set_qdata (GQuark quark, QuarkData* data)
| This sets an opaque, named pointer on a miniobject. More...
QuarkData* | get_qdata (GQuark quark) const
| This function gets back user data pointers stored via set_qdata(). More...
QuarkData* | steal_qdata (GQuark quark)
| This function gets back user data pointers stored via set_qdata() and removes the data from object without invoking its destroy() function (if any was set). More...
void | add_finalize_notifier (const SlotFinalizer& slot)
| Adds notifier when mini object is finalized. More...
void | remove_finalize_notifier ()
| Remove finalize notifier. More...

## Static Public Member Functions

static Glib::RefPtr< Gst::EventSeek > | create (double rate, Format format, SeekFlags flags, SeekType start_type, gint64 start, SeekType stop_type, gint64 stop)
| Allocate a new seek event with the given parameters. More...

## Additional Inherited Members

Public Types inherited from Gst::MiniObject
typedef sigc::slot< void > | SlotFinalizer
Protected Member Functions inherited from Gst::Event
void | operator delete (void*, std::size_t)
Protected Member Functions inherited from Gst::MiniObject
void | operator delete (void*, std::size_t)
Related Functions inherited from Gst::Event
Glib::RefPtr< Gst::Event > | wrap (GstEvent* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gst::MiniObject
Glib::RefPtr< Gst::MiniObject > | wrap (GstMiniObject* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Detailed Description

A seek event.

See create() for more details.

## Member Function Documentation

## create()

static Glib::RefPtr<Gst::EventSeek> Gst::EventSeek::create | ( | double | rate,
|  | Format | format,
|  | SeekFlags | flags,
|  | SeekType | start_type,
|  | gint64 | start,
|  | SeekType | stop_type,
|  | gint64 | stop
| ) |  |

static

Allocate a new seek event with the given parameters.

The seek event configures playback of the pipeline between start to stop at the speed given in rate, also called a playback segment. The start and stop values are expressed in format.

A rate of 1.0 means normal playback rate, 2.0 means double speed. Negatives values means backwards playback. A value of 0.0 for the rate is not allowed and should be accomplished instead by PAUSING the pipeline.

A pipeline has a default playback segment configured with a start position of 0, a stop position of -1 and a rate of 1.0. The currently configured playback segment can be queried with Gst::QUERY_SEGMENT.

start_type and stop_type specify how to adjust the currently configured start and stop fields in playback segment. Adjustments can be made relative or absolute to the last configured values. A type of Gst::SEEK_TYPE_NONE means that the position should not be updated.

When the rate is positive and start has been updated, playback will start from the newly configured start position.

For negative rates, playback will start from the newly configured stop position (if any). If the stop position is updated, it must be different from -1 (Gst::CLOCK_TIME_NONE) for negative rates.

It is not possible to seek relative to the current playback position, to do this, PAUSE the pipeline, query the current playback position with Gst::QUERY_POSITION and update the playback segment current position with a Gst::SEEK_TYPE_SET to the desired position.

Parameters

  rate | The new playback rate.
  format | The format of the seek values.
  flags | The optional seek flags.
  start_type | The type and flags for the new start position.
  start | The value of the new start position.
  stop_type | The type and flags for the new stop position.
  stop | The value of the new stop position.

Returns
  A new seek event.

## parse()

void Gst::EventSeek::parse | ( | double & | rate,
|  | Format& | format,
|  | SeekFlags& | flags,
|  | SeekType& | start_type,
|  | gint64 & | start,
|  | SeekType& | stop_type,
|  | gint64 & | stop
| ) |  | const

Parses a seek event and stores the results in the given result locations.

Parameters

  rate | Result location for the rate.
  format | Result location for the stream format.
  flags | Result location for the Gst::SeekFlags.
  start_type | Result location for the Gst::SeekType of the start position.
  start | Result location for the start postion expressed in format.
  stop_type | Result location for the Gst::SeekType of the stop position.
  stop | Result location for the stop postion expressed in format.

## parse_flags()

SeekFlags Gst::EventSeek::parse_flags | ( |  | ) | const

Parses the flags of a seek event.

Returns
  The flags.

## parse_format()

Format Gst::EventSeek::parse_format | ( |  | ) | const

Parses the format of a seek event.

Returns
  The format.

## parse_rate()

double Gst::EventSeek::parse_rate | ( |  | ) | const

Parses the rate of a seek event.

Returns
  The rate.

## parse_start()

gint64 Gst::EventSeek::parse_start | ( |  | ) | const

Parses the start of a seek event.

Returns
  The start.

## parse_start_type()

SeekType Gst::EventSeek::parse_start_type | ( |  | ) | const

Parses the start type of a seek event.

Returns
  The start type.

## parse_stop()

gint64 Gst::EventSeek::parse_stop | ( |  | ) | const

Parses the stop of a seek event.

Returns
  The stop.

## parse_stop_type()

SeekType Gst::EventSeek::parse_stop_type | ( |  | ) | const

Parses the stop type of a seek event.

Returns
  The stop type.