MillicastSDK 2.0.0
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
millicast::RtsRemoteVideoTrack Class Referenceabstract

#include <track.h>

Inheritance diagram for millicast::RtsRemoteVideoTrack:
Inheritance graph
[legend]
Collaboration diagram for millicast::RtsRemoteVideoTrack:
Collaboration graph
[legend]

Classes

struct  Layer
 

Public Member Functions

 RtsRemoteVideoTrack ()=default
 
 MC_DISABLE_COPY_AND_ASSIGN (RtsRemoteVideoTrack)
 
virtual millicast::Promise< void > enable_frame_metadata (bool enabled)=0
 
virtual Promise< void > enable (const std::shared_ptr< VideoRenderer > &renderer, const Layer &layer={}, bool promote=false)=0
 
- Public Member Functions inherited from millicast::RtsRemoteTrack
 RtsRemoteTrack ()=default
 
 MC_DISABLE_COPY_AND_ASSIGN (RtsRemoteTrack)
 
virtual EventConnectionPtr add_event_handler (EventHandler< Active > &&handler)=0
 
virtual EventConnectionPtr add_event_handler (EventHandler< Inactive > &&handler)=0
 
virtual EventConnectionPtr add_event_handler (EventHandler< Layers > &&handler)=0
 
virtual EventConnectionPtr add_event_handler (EventHandler< MidUpdated > &&handler)=0
 
virtual EventConnectionPtr add_event_handler (EventHandler< FrameMetadata > &&handler)=0
 
virtual const std::optional< std::string > & source_id () const =0
 
virtual Kind kind () const =0
 
virtual bool is_active () const =0
 
virtual std::optional< std::string > get_current_mid () const =0
 
virtual Promise< void > disable ()=0
 
virtual RtsRemoteVideoTrackas_video ()=0
 
virtual RtsRemoteAudioTrackas_audio ()=0
 

Additional Inherited Members

- Public Types inherited from millicast::RtsRemoteTrack
using MidUpdated = WebrtcRemoteTrack::MidUpdated
 
using Kind = WebrtcRemoteTrack::Kind
 

Detailed Description

The RTS logical track's video interface.

Constructor & Destructor Documentation

◆ RtsRemoteVideoTrack()

millicast::RtsRemoteVideoTrack::RtsRemoteVideoTrack ( )
default

Member Function Documentation

◆ enable()

virtual Promise< void > millicast::RtsRemoteVideoTrack::enable ( const std::shared_ptr< VideoRenderer > &  renderer,
const Layer layer = {},
bool  promote = false 
)
pure virtual

Enable and project this RTS track onto its default webrtc track.

If the track is already projected onto the default webrtc track, the old renderer will be reset to the new one, and layer info and priority will be updated according to the new arguemnts.

The RTS track gets unprojected from the default webrtc track when it goes inactive.

Parameters
rendererthe renderer to set for this video track.
layerlayer information. If the default value is passed, the service will allocate layers automatically depending on bandwidth estimation and the priority
promoteset this track to be the main video track. The main video track has highest priority for bandwidth assignment when SVC layers are managed by the service.
Returns
asynchronous status.

◆ enable_frame_metadata()

virtual millicast::Promise< void > millicast::RtsRemoteVideoTrack::enable_frame_metadata ( bool  enabled)
pure virtual

Enable the reception of frame metadata. Invoke this method so that you can start receiving FrameMetadata events.

Parameters
enabledtrue to enable frame metadata, otherwise false to disable it.
Remarks
make sure to add your event handler through RtsRemoteTrack::add_event_handler

◆ MC_DISABLE_COPY_AND_ASSIGN()

millicast::RtsRemoteVideoTrack::MC_DISABLE_COPY_AND_ASSIGN ( RtsRemoteVideoTrack  )

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