gstreamermm  1.10.0
Public Member Functions | Static Public Member Functions | List of all members
Gst::MessageBuffering Class Reference

A buffering message. More...

#include <gstreamermm/message.h>

Inheritance diagram for Gst::MessageBuffering:
Inheritance graph
[legend]

Public Member Functions

int parse_buffering () const
 Extracts and returns the buffering percent from the Gst::MessageBuffering. More...
 
void set_stats (BufferingMode mode, int avg_in, int avg_out, gint64 buffering_left)
 Configures the buffering stats values in message. More...
 
void parse_stats (BufferingMode& mode, int& avg_in, int& avg_out, gint64& buffering_left) const
 Extracts the buffering stats values from message. More...
 
BufferingMode parse_stats_buffering_mode () const
 Extracts and returns the buffering mode from message. More...
 
int parse_stats_avg_in () const
 Extracts and returns the average input rate from message. More...
 
int parse_stats_avg_out () const
 Extracts and returns the average output rate from message. More...
 
gint64 parse_stats_buffering_left () const
 Extracts and returns the buffering time in milliseconds remaining from message. More...
 
- Public Member Functions inherited from Gst::Message
void reference () const
 Increment the reference count for this object. More...
 
void unreference () const
 Decrement the reference count for this object. More...
 
GstMessage* gobj ()
 Provides access to the underlying C instance. More...
 
const GstMessage* gobj () const
 Provides access to the underlying C instance. More...
 
GstMessage* 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...
 
 Message ()=delete
 
 Message (const Message&)=delete
 
Messageoperator= (const Message&)=delete
 
Gst::Structure get_structure () const
 Access the structure of the message. More...
 
Glib::RefPtr< Gst::Messagecreate_writable ()
 Checks if a message is writable. More...
 
guint32 get_seqnum () const
 Retrieve the sequence number of a message. More...
 
void set_seqnum (guint32 seqnum)
 Set the sequence number of a message. More...
 
Glib::RefPtr< Gst::Messagecopy () const
 Creates a copy of the message. More...
 
MessageType get_message_type () const
 Get the GstMessageType of message. More...
 
Gst::ClockTime get_timestamp () const
 Get the timestamp of message. More...
 
Glib::RefPtr< Gst::Objectget_source ()
 Get the object that posted the message. More...
 
Glib::RefPtr< const Gst::Objectget_source () const
 
bool has_name (const Glib::ustring& name) const
 Checks if message has the given name. 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
 
MiniObjectoperator= (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< MiniObjectcreate_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...
 
QuarkDataget_qdata (GQuark quark) const
 This function gets back user data pointers stored via set_qdata(). More...
 
QuarkDatasteal_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::MessageBufferingcreate (const Glib::RefPtr< Gst::Object >& src, int percent)
 Create a new buffering message. More...
 

Additional Inherited Members

- Public Types inherited from Gst::MiniObject
typedef sigc::slot< void > SlotFinalizer
 
- Protected Member Functions inherited from Gst::Message
void operator delete (void*, std::size_t)
 
- Protected Member Functions inherited from Gst::MiniObject
void operator delete (void*, std::size_t)
 

Detailed Description

A buffering message.

See create() for more details.

Member Function Documentation

◆ create()

static Glib::RefPtr<Gst::MessageBuffering> Gst::MessageBuffering::create ( const Glib::RefPtr< Gst::Object >&  src,
int  percent 
)
static

Create a new buffering message.

This message can be posted by an element that needs to buffer data before it can continue processing. percent should be a value between 0 and 100. A value of 100 means that the buffering completed.

When percent is < 100 the application should PAUSE a PLAYING pipeline. When percent is 100, the application can set the pipeline (back) to PLAYING. The application must be prepared to receive BUFFERING messages in the PREROLLING state and may only set the pipeline to PLAYING after receiving a message with percent set to 100, which can happen after the pipeline completed prerolling.

MT safe.

Parameters
srcThe object originating the message.
percentThe buffering percent.
Returns
The new buffering message.

◆ parse_buffering()

int Gst::MessageBuffering::parse_buffering ( ) const

Extracts and returns the buffering percent from the Gst::MessageBuffering.

Returns
The percent as an integer.

◆ parse_stats()

void Gst::MessageBuffering::parse_stats ( BufferingMode mode,
int &  avg_in,
int &  avg_out,
gint64 &  buffering_left 
) const

Extracts the buffering stats values from message.

Parameters
modeLocation for the buffering mode.
avg_inLocation for the average input rate.
avg_outLocation for the average output rate.
buffering_leftLocation for the amount of buffering time left.

Since 0.10.20.

◆ parse_stats_avg_in()

int Gst::MessageBuffering::parse_stats_avg_in ( ) const

Extracts and returns the average input rate from message.

Returns
The average input rate.

◆ parse_stats_avg_out()

int Gst::MessageBuffering::parse_stats_avg_out ( ) const

Extracts and returns the average output rate from message.

Returns
The average output rate.

◆ parse_stats_buffering_left()

gint64 Gst::MessageBuffering::parse_stats_buffering_left ( ) const

Extracts and returns the buffering time in milliseconds remaining from message.

Returns
The buffering time remaining.

◆ parse_stats_buffering_mode()

BufferingMode Gst::MessageBuffering::parse_stats_buffering_mode ( ) const

Extracts and returns the buffering mode from message.

Returns
The buffering mode.

◆ set_stats()

void Gst::MessageBuffering::set_stats ( BufferingMode  mode,
int  avg_in,
int  avg_out,
gint64  buffering_left 
)

Configures the buffering stats values in message.

Parameters
modeA buffering mode.
avg_inThe average input rate.
avg_outThe average output rate.
buffering_leftAmount of buffering time left in milliseconds.

Since 0.10.20.