is responsible for delivering messages
in a first-in first-out way from a pipeline
Post the message on a-bus. Returns #t if the message could be posted, otherwise #f.
Check if there are pending messages on a-bus that should be handled.
Peek the message on the top of a-bus’ queue. The message will remain on the queue. Returns #f if the bus is empty.
Gets a message from a-bus, or #f if the bus is empty.
Get a message matching any of the given types from a-bus. Will discard all messages on the bus that do not match types. Retruns #f if the bus is empty or there are no messages that match types.
Gets a message from a-bus
, waiting up to the specified timeout
. If timeout
, this method will block until a message was posted on the bus. Returns #f
if the bus is empty after the timeout
Gets a message from a-bus whose type matches one of the message types in types, waiting up to the specified timeout and discarding any messages that do not match the mask provided.
If timeout is 0, this method behaves like pop-filtered. If timeout is clock-time-none, this method will block until a matching message was posted on the bus. Returns #f if no matching message was found on the bus after the timeout expired.
Instructs GStreamer to emit the 'sync-message signal
after running a-bus
’s sync handler. Use connect
to listen for this signal.
Poll a-bus for messages. Will block while waiting for messages to come. Specify a maximum time to poll with timeout. If timeout is negative, this method will block indefinitely.
GStreamer calls this function “pure evil”. Prefer timed-pop-filtered and make-bus-channel.
That event is ready for synchronization
when a new message is emitted from the bus
(in which case the synchronization result
is a message
), when the timeout
has been reached (in which case the synchronization result will be a message or #f
), or when the bus
has flushed and closed down (in which case the synchronization result is another event that is always ready for synchronization).
A message is a small structure representing signals emitted from a pipeline and passed to the application using the bus. Messages have a message-type useful for taking different actions depending on the type.
Returns #t if v is a message emitted from a bus, #f otherwise.
Gets the type of message.
Retrieve the sequence number of message.
Messages have ever-incrementing sequence numbers. Sequence numbers are typically used to indicate that a message corresponds to some other set of messages or events.
Get the object that posted message.
Checks if the type of message
is one of the given type
s. Returns #f
if the message-type
is not one of the given type
is a message?
and has a message-type
indicating that the pipeline that emitted this message should shut down (either a 'eos
message), otherwise #f
A contract matching a list of allowed message types.