Agora C++ API Reference for All Platforms

Public Member Functions | List of all members
agora::rtc::IVideoTrackObserver Class Reference

Inherits enable_shared_from_this< IVideoTrackObserver >.

## Public Member Functions
virtual | ~IVideoTrackObserver ()=default
virtual void | onLocalVideoStateChanged (int id, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_REASON reason, int timestamp_ms)
virtual void | onRemoteVideoStateChanged (uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int timestamp_ms)
virtual void | onFirstVideoFrameRendered (int id, uid_t uid, int width, int height, int timestamp_ms)
virtual void | onFirstVideoFrameDecoded (std::string cid, uid_t uid, uint32_t ssrc, int width, int height, int timestamp_ms)
virtual void | onFirstVideoKeyFrameReceived (uid_t uid, uint64_t timestamp, const webrtc::FirstVideoFrameStreamInfo &streamInfo)
virtual void | onSourceVideoSizeChanged (uid_t uid, int width, int height, int rotation, int timestamp_ms)
virtual void | onSendSideDelay (int id, int send_delay)
virtual void | onRecvSideDelay (uid_t uid, int recv_delay)
virtual void | onRecvSideFps (uid_t uid, int fps)
virtual void | onEncoderConfigurationChanged (const std::unordered_map< int, VideoConfigurationEx > &config)
virtual void | onSvcLayerUpdated (SvcAABandwidthReportInfo info, int supported_max_layers, AdaptiveScenarioType scenario_type, int channel_size, const std::map< VideoStreamCreator::StreamIndex, int > &be_subscribed_streams, const std::vector< int > &svc_layer_bitrate, SvcAASourceType source, const std::vector< SvcAAStrategyResult > &svc_aa_strategy_result_vec)
virtual void | onVideoPipelineDataFormatChanged (int format)
virtual void | onCameraFacingChanged (int facing)
virtual void | onViewSizeChanged (uid_t uid, view_t view, int width, int height)
virtual void | OnSetRexferParams (bool fec_rexfer, float rexfer_alpha, int max_rexfer_times)
virtual void | OnRexferStatusUpdated (bool status, int32_t target_bitrate)
virtual void | OnNotifyDepartedFrame (uid_t uid, int picture_id)
virtual void | onCameraInfoListChanged (CameraInfoList cameraInfoList)
virtual void | onCameraCharacteristicProfileChanged (agora::rtc::CameraCharacteristicProfile profile)
virtual void | OnEncoderStatusUpdate (webrtc::VideoCodecType codec_type, webrtc::HW_ENCODER_ACCELERATING_STATUS hw_accelerate_status)
virtual void | OnVideoStatusUpdated (int status)
virtual void | onVideoAvailabilityIndicatorEvent (VideoAvailabilityIndicator indicator)
virtual void | onVideoHWCodecSpecEvent (agora::rtc::VideoHWCodecSpec codecSpec)
virtual void | onVideoSizeChanged (int id, uid_t uid, int width, int height, int rotation)
virtual void | onYuvConvertStats (const YuvConvertStats &stats)
virtual void | onLocalAddVideoFilter (int track_id, std::string filter_name, bool enabled)
virtual void | onLocalFilterStatusChanged (int track_id, std::string filter_name, bool enabled)
virtual void | onRemoteAddVideoFilter (std::string cid, uid_t uid, uint32_t ssrc, std::string filter_name, bool enabled)
virtual void | onRemoteFilterStatusChanged (std::string cid, uid_t uid, uint32_t ssrc, std::string filter_name, bool enabled, bool isDisableMe=false)
virtual void | onVideoContentChanged (uid_t uid, agora::VideoContentType newType, agora::VideoContentSubType newSubtype)
virtual void | OnRequestKeyFrame (uid_t uid, VIDEO_STREAM_TYPE type)
virtual void | OnFirstDecodableFrameReceived (uint8_t stream_id)
virtual void | OnVideoEncodeStrategyUpdated (VideoEncodeStrategyInfo strategy)
virtual void | OnVideoCodingModuleInfosUpdated (webrtc::VideoCodingModuleInfos info)
virtual void | onVideoRenderMirrorChanged (bool mirror)

## Constructor & Destructor Documentation

## ◆ ~IVideoTrackObserver()

virtual agora::rtc::IVideoTrackObserver::~IVideoTrackObserver | ( |  | ) |
| virtual default

## Member Function Documentation

## ◆ onLocalVideoStateChanged()

virtual void agora::rtc::IVideoTrackObserver::onLocalVideoStateChanged | ( | int | id,
|  | LOCAL_VIDEO_STREAM_STATE | state,
|  | LOCAL_VIDEO_STREAM_REASON | reason,
|  | int | timestamp_ms
| ) |  |
| inline virtual

## ◆ onRemoteVideoStateChanged()

virtual void agora::rtc::IVideoTrackObserver::onRemoteVideoStateChanged | ( | uid_t | uid,
|  | REMOTE_VIDEO_STATE | state,
|  | REMOTE_VIDEO_STATE_REASON | reason,
|  | int | timestamp_ms
| ) |  |
| inline virtual

## ◆ onFirstVideoFrameRendered()

virtual void agora::rtc::IVideoTrackObserver::onFirstVideoFrameRendered | ( | int | id,
|  | uid_t | uid,
|  | int | width,
|  | int | height,
|  | int | timestamp_ms
| ) |  |
| inline virtual

## ◆ onFirstVideoFrameDecoded()

virtual void agora::rtc::IVideoTrackObserver::onFirstVideoFrameDecoded | ( | std::string | cid,
|  | uid_t | uid,
|  | uint32_t | ssrc,
|  | int | width,
|  | int | height,
|  | int | timestamp_ms
| ) |  |
| inline virtual

## ◆ onFirstVideoKeyFrameReceived()

virtual void agora::rtc::IVideoTrackObserver::onFirstVideoKeyFrameReceived | ( | uid_t | uid,
|  | uint64_t | timestamp,
|  | const webrtc::FirstVideoFrameStreamInfo & | streamInfo
| ) |  |
| inline virtual

## ◆ onSourceVideoSizeChanged()

virtual void agora::rtc::IVideoTrackObserver::onSourceVideoSizeChanged | ( | uid_t | uid,
|  | int | width,
|  | int | height,
|  | int | rotation,
|  | int | timestamp_ms
| ) |  |
| inline virtual

## ◆ onSendSideDelay()

virtual void agora::rtc::IVideoTrackObserver::onSendSideDelay | ( | int | id,
|  | int | send_delay
| ) |  |
| inline virtual

## ◆ onRecvSideDelay()

virtual void agora::rtc::IVideoTrackObserver::onRecvSideDelay | ( | uid_t | uid,
|  | int | recv_delay
| ) |  |
| inline virtual

## ◆ onRecvSideFps()

virtual void agora::rtc::IVideoTrackObserver::onRecvSideFps | ( | uid_t | uid,
|  | int | fps
| ) |  |
| inline virtual

## ◆ onEncoderConfigurationChanged()

virtual void agora::rtc::IVideoTrackObserver::onEncoderConfigurationChanged | ( | const std::unordered_map< int, VideoConfigurationEx > & | config | ) |
| inline virtual

## ◆ onSvcLayerUpdated()

virtual void agora::rtc::IVideoTrackObserver::onSvcLayerUpdated | ( | SvcAABandwidthReportInfo | info,
|  | int | supported_max_layers,
|  | AdaptiveScenarioType | scenario_type,
|  | int | channel_size,
|  | const std::map< VideoStreamCreator::StreamIndex, int > & | be_subscribed_streams,
|  | const std::vector< int > & | svc_layer_bitrate,
|  | SvcAASourceType | source,
|  | const std::vector< SvcAAStrategyResult > & | svc_aa_strategy_result_vec
| ) |  |
| inline virtual

## ◆ onVideoPipelineDataFormatChanged()

virtual void agora::rtc::IVideoTrackObserver::onVideoPipelineDataFormatChanged | ( | int | format | ) |
| inline virtual

## ◆ onCameraFacingChanged()

virtual void agora::rtc::IVideoTrackObserver::onCameraFacingChanged | ( | int | facing | ) |
| inline virtual

## ◆ onViewSizeChanged()

virtual void agora::rtc::IVideoTrackObserver::onViewSizeChanged | ( | uid_t | uid,
|  | view_t | view,
|  | int | width,
|  | int | height
| ) |  |
| inline virtual

## ◆ OnSetRexferParams()

virtual void agora::rtc::IVideoTrackObserver::OnSetRexferParams | ( | bool | fec_rexfer,
|  | float | rexfer_alpha,
|  | int | max_rexfer_times
| ) |  |
| inline virtual

## ◆ OnRexferStatusUpdated()

virtual void agora::rtc::IVideoTrackObserver::OnRexferStatusUpdated | ( | bool | status,
|  | int32_t | target_bitrate
| ) |  |
| inline virtual

## ◆ OnNotifyDepartedFrame()

virtual void agora::rtc::IVideoTrackObserver::OnNotifyDepartedFrame | ( | uid_t | uid,
|  | int | picture_id
| ) |  |
| inline virtual

## ◆ onCameraInfoListChanged()

virtual void agora::rtc::IVideoTrackObserver::onCameraInfoListChanged | ( | CameraInfoList | cameraInfoList | ) |
| inline virtual

## ◆ onCameraCharacteristicProfileChanged()

virtual void agora::rtc::IVideoTrackObserver::onCameraCharacteristicProfileChanged | ( | agora::rtc::CameraCharacteristicProfile | profile | ) |
| inline virtual

## ◆ OnEncoderStatusUpdate()

virtual void agora::rtc::IVideoTrackObserver::OnEncoderStatusUpdate | ( | webrtc::VideoCodecType | codec_type,
|  | webrtc::HW_ENCODER_ACCELERATING_STATUS | hw_accelerate_status
| ) |  |
| inline virtual

## ◆ OnVideoStatusUpdated()

virtual void agora::rtc::IVideoTrackObserver::OnVideoStatusUpdated | ( | int | status | ) |
| inline virtual

## ◆ onVideoAvailabilityIndicatorEvent()

virtual void agora::rtc::IVideoTrackObserver::onVideoAvailabilityIndicatorEvent | ( | VideoAvailabilityIndicator | indicator | ) |
| inline virtual

## ◆ onVideoHWCodecSpecEvent()

virtual void agora::rtc::IVideoTrackObserver::onVideoHWCodecSpecEvent | ( | agora::rtc::VideoHWCodecSpec | codecSpec | ) |
| inline virtual

## ◆ onVideoSizeChanged()

virtual void agora::rtc::IVideoTrackObserver::onVideoSizeChanged | ( | int | id,
|  | uid_t | uid,
|  | int | width,
|  | int | height,
|  | int | rotation
| ) |  |
| inline virtual

## ◆ onYuvConvertStats()

virtual void agora::rtc::IVideoTrackObserver::onYuvConvertStats | ( | const YuvConvertStats & | stats | ) |
| inline virtual

## ◆ onLocalAddVideoFilter()

virtual void agora::rtc::IVideoTrackObserver::onLocalAddVideoFilter | ( | int | track_id,
|  | std::string | filter_name,
|  | bool | enabled
| ) |  |
| inline virtual

## ◆ onLocalFilterStatusChanged()

virtual void agora::rtc::IVideoTrackObserver::onLocalFilterStatusChanged | ( | int | track_id,
|  | std::string | filter_name,
|  | bool | enabled
| ) |  |
| inline virtual

## ◆ onRemoteAddVideoFilter()

virtual void agora::rtc::IVideoTrackObserver::onRemoteAddVideoFilter | ( | std::string | cid,
|  | uid_t | uid,
|  | uint32_t | ssrc,
|  | std::string | filter_name,
|  | bool | enabled
| ) |  |
| inline virtual

## ◆ onRemoteFilterStatusChanged()

virtual void agora::rtc::IVideoTrackObserver::onRemoteFilterStatusChanged | ( | std::string | cid,
|  | uid_t | uid,
|  | uint32_t | ssrc,
|  | std::string | filter_name,
|  | bool | enabled,
|  | bool | isDisableMe = `false`
| ) |  |
| inline virtual

## ◆ onVideoContentChanged()

virtual void agora::rtc::IVideoTrackObserver::onVideoContentChanged | ( | uid_t | uid,
|  | agora::VideoContentType | newType,
|  | agora::VideoContentSubType | newSubtype
| ) |  |
| inline virtual

## ◆ OnRequestKeyFrame()

virtual void agora::rtc::IVideoTrackObserver::OnRequestKeyFrame | ( | uid_t | uid,
|  | VIDEO_STREAM_TYPE | type
| ) |  |
| inline virtual

## ◆ OnFirstDecodableFrameReceived()

virtual void agora::rtc::IVideoTrackObserver::OnFirstDecodableFrameReceived | ( | uint8_t | stream_id | ) |
| inline virtual

## ◆ OnVideoEncodeStrategyUpdated()

virtual void agora::rtc::IVideoTrackObserver::OnVideoEncodeStrategyUpdated | ( | VideoEncodeStrategyInfo | strategy | ) |
| inline virtual

## ◆ OnVideoCodingModuleInfosUpdated()

virtual void agora::rtc::IVideoTrackObserver::OnVideoCodingModuleInfosUpdated | ( | webrtc::VideoCodingModuleInfos | info | ) |
| inline virtual

## ◆ onVideoRenderMirrorChanged()

virtual void agora::rtc::IVideoTrackObserver::onVideoRenderMirrorChanged | ( | bool | mirror | ) |
| inline virtual