GStreamer::Message.3pm

Langue: en

Version: 2010-05-02 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

GStreamer::Message

DESCRIPTION

The various nmessage types are represented as subclasses:
GStreamer::Message::EOS
GStreamer::Message::Error
GStreamer::Message::Warning
GStreamer::Message::Info
GStreamer::Message::Tag
GStreamer::Message::Buffering
GStreamer::Message::StateChanged
GStreamer::Message::StateDirty
GStreamer::Message::StepDone
GStreamer::Message::ClockProvide
GStreamer::Message::ClockLost
GStreamer::Message::NewClock
GStreamer::Message::StructureChange
GStreamer::Message::StreamStatus
GStreamer::Message::Application
GStreamer::Message::Element
GStreamer::Message::SegmentStart
GStreamer::Message::SegmentDone
GStreamer::Message::Duration
GStreamer::Message::Latency [0.10.12]
GStreamer::Message::AsyncStart [0.10.13]
GStreamer::Message::AsyncDone [0.10.13]

To create a new message, you call the constructor of the corresponding class.

To check if a message is of a certain type, use the & operator on the type method:

   if ($message -> type & "error") {
     # ...
   }
 
   elsif ($message -> type & "eos") {
     # ...
   }
 
 

To get to the content of a message, call the corresponding accessor:

   if ($message -> type & "state-changed") {
     my $old_state = $message -> old_state;
     my $new_state = $message -> new_state;
     my $pending = $message -> pending;
 
     # ...
   }
 
   elsif ($message -> type & "segment-done") {
     my $format = $message -> format;
     my $position = $message -> position;
 
     # ...
   }
 
 

METHODS

object = $message->src

structure = $message->get_structure

uint64 = $message->timestamp

messagetype = $message->type

ENUMS AND FLAGS

flags GStreamer::MessageType

*
'unknown' / 'GST_MESSAGE_UNKNOWN'
*
'eos' / 'GST_MESSAGE_EOS'
*
'error' / 'GST_MESSAGE_ERROR'
*
'warning' / 'GST_MESSAGE_WARNING'
*
'info' / 'GST_MESSAGE_INFO'
*
'tag' / 'GST_MESSAGE_TAG'
*
'buffering' / 'GST_MESSAGE_BUFFERING'
*
'state-changed' / 'GST_MESSAGE_STATE_CHANGED'
*
'state-dirty' / 'GST_MESSAGE_STATE_DIRTY'
*
'step-done' / 'GST_MESSAGE_STEP_DONE'
*
'clock-provide' / 'GST_MESSAGE_CLOCK_PROVIDE'
*
'clock-lost' / 'GST_MESSAGE_CLOCK_LOST'
*
'new-clock' / 'GST_MESSAGE_NEW_CLOCK'
*
'structure-change' / 'GST_MESSAGE_STRUCTURE_CHANGE'
*
'stream-status' / 'GST_MESSAGE_STREAM_STATUS'
*
'application' / 'GST_MESSAGE_APPLICATION'
*
'element' / 'GST_MESSAGE_ELEMENT'
*
'segment-start' / 'GST_MESSAGE_SEGMENT_START'
*
'segment-done' / 'GST_MESSAGE_SEGMENT_DONE'
*
'duration' / 'GST_MESSAGE_DURATION'
*
'latency' / 'GST_MESSAGE_LATENCY'
*
'async-start' / 'GST_MESSAGE_ASYNC_START'
*
'async-done' / 'GST_MESSAGE_ASYNC_DONE'
*
'request-state' / 'GST_MESSAGE_REQUEST_STATE'
*
'step-start' / 'GST_MESSAGE_STEP_START'
*
'qos' / 'GST_MESSAGE_QOS'
*
'any' / 'GST_MESSAGE_ANY'

SEE ALSO

GStreamer Copyright (C) 2005-2008 by the gtk2-perl team.

This software is licensed under the LGPL. See GStreamer for a full notice.