CoreSDK  v1.0.0.b1304
Public Member Functions | List of all members
r5::core::IClient Class Referenceabstract

Main interface for object that handle Red5Pro server connection This interface can be used to configure parameters of publishing or subscribing, adding sources/renderers/transforms, customizing logger and settings callback handler. More...

#include <red5pro.h>

Public Member Functions

virtual std::vector< IMediaStreamPtr > AddStreams (IDemuxingSourcePtr src)=0
 Method to add media source that can provide multiple media streams for publisher Note: can not be used with method for subscriber on same object. More...
 
virtual IMediaStreamPtr AddStream (ISingleSourcePtr src)=0
 Method to add media source for publisher Note: can not be used with method for subscriber on same object. More...
 
virtual IMediaStreamPtr AddStream (ISingleRendererPtr rdr)=0
 Method to add media source for subscriber Note: can not be used with method for publisher on same object Note: each renderer can be used only for one stream. If no suitable renderer provided SDK will put note into log, but will continue preocessing. More...
 
virtual int SetCallbackHandler (ICallbackHandlerPtr handler)=0
 Set the Callback Handler object. More...
 
virtual int SetLogger (std::shared_ptr< ILogger >)=0
 Set the custom Logger object for the client. More...
 
virtual int Connect ()=0
 Start connection with Red5Pro server. More...
 
virtual int Disconnect ()=0
 Disconnect from Red5Pro server. More...
 
virtual bool IsRunning ()=0
 Check if connection is running. More...
 
virtual int SendMetadata (const Metadata &metadata)=0
 Method to send metadata message using client connection. More...
 
virtual uint64_t GetBytesSent (DataType type)=0
 Get number of bytes sent by client. More...
 
virtual uint64_t GetBytesReceived (DataType type)=0
 Get number of bytes received by client. More...
 

Detailed Description

Main interface for object that handle Red5Pro server connection This interface can be used to configure parameters of publishing or subscribing, adding sources/renderers/transforms, customizing logger and settings callback handler.

Member Function Documentation

◆ AddStream() [1/2]

virtual IMediaStreamPtr r5::core::IClient::AddStream ( ISingleSourcePtr  src)
pure virtual

Method to add media source for publisher Note: can not be used with method for subscriber on same object.

Parameters
srcobject that implement ISingleSource
Returns
pointer to new media stream on success, nullptr on fail

◆ AddStream() [2/2]

virtual IMediaStreamPtr r5::core::IClient::AddStream ( ISingleRendererPtr  rdr)
pure virtual

Method to add media source for subscriber Note: can not be used with method for publisher on same object Note: each renderer can be used only for one stream. If no suitable renderer provided SDK will put note into log, but will continue preocessing.

Parameters
rdrobject that can handle one of media streams
Returns
pointer to new media stream on success, nullptr on fail

◆ AddStreams()

virtual std::vector<IMediaStreamPtr> r5::core::IClient::AddStreams ( IDemuxingSourcePtr  src)
pure virtual

Method to add media source that can provide multiple media streams for publisher Note: can not be used with method for subscriber on same object.

Parameters
srcobject that implement IDemuxingSourcePtr
Returns
vetor of pointers to new media streams on success, empty vector on fail

◆ Connect()

virtual int r5::core::IClient::Connect ( )
pure virtual

Start connection with Red5Pro server.

Returns
0 on success, negative on fail

◆ Disconnect()

virtual int r5::core::IClient::Disconnect ( )
pure virtual

Disconnect from Red5Pro server.

Returns
0 on success, negative on fail

◆ GetBytesReceived()

virtual uint64_t r5::core::IClient::GetBytesReceived ( DataType  type)
pure virtual

Get number of bytes received by client.

Parameters
typespecify data type
Returns
uint64_t number of bytes for data with requested type

◆ GetBytesSent()

virtual uint64_t r5::core::IClient::GetBytesSent ( DataType  type)
pure virtual

Get number of bytes sent by client.

Parameters
typespecify data type
Returns
uint64_t number of bytes for data with requested type

◆ IsRunning()

virtual bool r5::core::IClient::IsRunning ( )
pure virtual

Check if connection is running.

Returns
true if client connected to server
false if client not connected to server

◆ SendMetadata()

virtual int r5::core::IClient::SendMetadata ( const Metadata metadata)
pure virtual

Method to send metadata message using client connection.

Parameters
metadatastructure with metadata information to send by client
Returns
0 on success, negative on fail

◆ SetCallbackHandler()

virtual int r5::core::IClient::SetCallbackHandler ( ICallbackHandlerPtr  handler)
pure virtual

Set the Callback Handler object.

Returns
0 on success, negative on fail

◆ SetLogger()

virtual int r5::core::IClient::SetLogger ( std::shared_ptr< ILogger )
pure virtual

Set the custom Logger object for the client.

Returns
0 on success, negative on fail

The documentation for this class was generated from the following file: