Superclass of all handlers of play events. More...
#include <rtmp.h>
Public Member Functions | |
virtual bool | handle (bool is_start, IStream *stream, neuraylib::IVideo_data **out)=0 |
Called on a play or stop event. More... | |
Public Member Functions inherited from mi::base::IInterface | |
virtual Uint32 | retain () const =0 |
Increments the reference count. More... | |
virtual Uint32 | release () const =0 |
Decrements the reference count. More... | |
virtual const IInterface * | get_interface (const Uuid &interface_id) const =0 |
Acquires a const interface from another. More... | |
template<class T> | |
const T * | get_interface () const |
Acquires a const interface from another. More... | |
virtual IInterface * | get_interface (const Uuid &interface_id)=0 |
Acquires a mutable interface from another. More... | |
template<class T> | |
T * | get_interface () |
Acquires a mutable interface from another. More... | |
virtual Uuid | get_iid () const =0 |
Returns the interface ID of the most derived interface. More... | |
Additional Inherited Members | |
Public Types inherited from mi::base::Interface_declare< 0x59798950, ... > | |
typedef Interface_declare< id1, ... > | Self |
Own type. More... | |
typedef Uuid_t< id1, ... > | IID |
Declares the interface ID (IID) of this interface. More... | |
Public Types inherited from mi::base::IInterface | |
typedef Uuid_t<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0> | IID |
Declares the interface ID (IID) of this interface. More... | |
Static Public Member Functions inherited from mi::base::Interface_declare< 0x59798950, ... > | |
static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface and of its ancestors. More... | |
Static Public Member Functions inherited from mi::base::IInterface | |
static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface. More... | |
Superclass of all handlers of play events.
A subclass gets registered via mi::rtmp::IStream::register_play_event_handler() and will be called in the case of a play event which can be a play or stop event.
|
pure virtual |
Called on a play or stop event.
Play/stop events are similar to pause/resume events but are more expensive
The event handler allows to filter play or stop events. If it returns true
the render loop for the corresponding stream is affected as follows. If is_start
is true
the render event handler will be called as often as indicated by the maximum render rate for this stream. If is_start
is false
the render event handler will not be called anymore. If the play event handler returns false
nothing changes.
Play/stop events are similar to pause/resume events but are more expensive w.r.t. the internal state of the RTMP server.
stream
parameter is only valid during the call of the handle() method and cannot be stored (even if proper reference counting is used).is_start | true indicates a play event, false indicates a stop event. | |
stream | The stream on which to start or stop playing. | |
[out] | out | Potential initialization/close video frame data can be returned here. |
true
if the event should be honored, or false
if should be ignored.