Gst::EventSeek Class Reference

A seek event. More...

#include <event.h>

Inheritance diagram for Gst::EventSeek:

Gst::Event Gst::MiniObject

List of all members.

Public Member Functions

 EventSeek (GstEvent* event)
void parse (double& rate, Format& format, SeekFlags& flags, SeekType& start_type, gint64& start, SeekType& stop_type, gint64& stop)
 Parses a seek event and stores the results in the given result locations.

Static Public Member Functions

static Glib::RefPtr<Gst::Eventcreate (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.


Detailed Description

A seek event.

See create() for more details.


Constructor& Destructor Documentation

Gst::EventSeek::EventSeek ( GstEvent *  event  )  [explicit]


Member Function Documentation

static Glib::RefPtr<Gst::Event> 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 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 if updated, it must be different from -1 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.

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

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.


The documentation for this class was generated from the following file:

Generated on Thu Jan 15 09:33:12 2009 for gstreamermm by  doxygen 1.5.7.1