Gst::MessageBuffering Class Reference

A buffering message. More...

`#include <gstreamermm/message.h>`

Inheritance diagram for Gst::MessageBuffering:
[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
Message& | operator= (const Message&)=delete
Gst::Structure | get_structure () const
| Access the structure of the message. More...
Glib::RefPtr< Gst::Message > | create_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::Message > | copy () 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::Object > | get_source ()
| Get the object that posted the message. More...
Glib::RefPtr< const Gst::Object > | get_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
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::MessageBuffering > | create (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)
Related Functions inherited from Gst::Message
Glib::RefPtr< Gst::Message > | wrap (GstMessage* 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 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

  src | The object originating the message.
  percent | The 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

  mode | Location for the buffering mode.
  avg_in | Location for the average input rate.
  avg_out | Location for the average output rate.
  buffering_left | Location 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

  mode | A buffering mode.
  avg_in | The average input rate.
  avg_out | The average output rate.
  buffering_left | Amount of buffering time left in milliseconds.

Since 0.10.20.