Agora C++ API Reference for All Platforms
Classes | Public Types | Public Member Functions | List of all members
agora::rtc::IVideoListener Class Referenceabstract

Classes

struct  AutFeedbackData
 
struct  AutStreamData
 
struct  LocalVideoStat
 
struct  LocalVideoStreamStat
 
struct  PacketInfo
 
struct  RemoteVideoStat
 

Public Types

enum  VideoFrameType {
  KEY_FRAME = 0, DELTA_FRAME = 1, B_FRAME = 2, PISE_FRAME = 3,
  SCALABLE_DELTA_FRAME = 4
}
 
enum  VideoCodecType { VIDEO_CODEC_VP8 = 1, VIDEO_CODEC_H264 = 2, VIDEO_CODEC_EVP = 3, VIDEO_CODEC_E264 = 4 }
 
enum  VideoFeedbackPacketType {
  VIDEO_FEEDBACK_INTRA_REQUEST = 1, VIDEO_FEEDBACK_DISABLE_INTRA_FEC = 2, VIDEO_FEEDBACK_INTRA_REQUEST_QUICK = 3, VIDEO_FEEDBACK_DECODE_FB = 4,
  VIDEO_FEEDBACK_BANDWIDTH_ESTIMATION = 5, VIDEO_FEEDBACK_REQUEST_MULTISTREAM = 6, VIDEO_FEEDBACK_AUT = 7
}
 

Public Member Functions

virtual ~IVideoListener ()
 
virtual int sendVideoPacket (const PacketInfo &info)=0
 
virtual int sendVideoRtcpPacket (unsigned int uid, const void *packet, unsigned short packetLen, bool isToVos)=0
 
virtual int sendVideoRtcpFeedbackPacket (const VideoFeedbackPacketType type, unsigned int toUid, const void *packet, int packetSize)=0
 
virtual void onRemoteFirstFrameDrawed (int viewIndex, unsigned int uid, int width, int height)=0
 
virtual void onLocalFirstFrameDrawed (int width, int height)=0
 
virtual void onRemoteFirstFrameDecoded (unsigned int uid, int width, int height)=0
 
virtual void onRemoteVideoInterrupted (unsigned int uid, unsigned int elapse_time)=0
 
virtual void onVideoStat (const LocalVideoStat &localStat, RemoteVideoStat *remoteStat, int remoteCount)=0
 
virtual void onVideoProfile (unsigned int width, unsigned int height, unsigned int fps, unsigned int bitrate)=0
 
virtual void switchVideoStream (unsigned int uid, VideoStreamType stream)=0
 
virtual void onBandWidthLevelChanged (int level)=0
 
virtual void onCameraFocusAreaChanged (int x, int y, int width, int height)=0
 
virtual void onCameraExposureAreaChanged (int x, int y, int width, int height)=0
 
virtual void onVideoViewSizeChanged (int userID, int newWidth, int newHeight)
 
virtual void onVideoFrameFrozen (unsigned int uid, bool frozen)=0
 
virtual void onAppSetVideoStartBitRate (int value)=0
 
virtual int onEncodeVideoSEI (char **info, int *len)=0
 
virtual void onVideoSizeChanged (unsigned int uid, int newWidth, int newHeight, int newRotation)
 
virtual void onSendVideoPaced (bool status)=0
 
virtual void onBWELevel (int level)=0
 
virtual void onVideoRexferStatus (bool status, int target_bitrate)=0
 
virtual void onStartCaptureSuccess ()=0
 
virtual int onSendSEI (char **info, int *len, long long timeStampMs, int streamType, bool isDualStream)=0
 
virtual int onReceiveSEI (char *info, int len, unsigned int uid, long long timeStampMs)=0
 
virtual void OnVideoStreamBitrateRangeChanged (VideoStreamType type, uint32_t max_kbps, uint32_t min_kbps)=0
 

Member Enumeration Documentation

◆ VideoFrameType

Enumerator
KEY_FRAME 
DELTA_FRAME 
B_FRAME 
PISE_FRAME 
SCALABLE_DELTA_FRAME 

◆ VideoCodecType

Enumerator
VIDEO_CODEC_VP8 
VIDEO_CODEC_H264 
VIDEO_CODEC_EVP 
VIDEO_CODEC_E264 

◆ VideoFeedbackPacketType

Enumerator
VIDEO_FEEDBACK_INTRA_REQUEST 
VIDEO_FEEDBACK_DISABLE_INTRA_FEC 
VIDEO_FEEDBACK_INTRA_REQUEST_QUICK 
VIDEO_FEEDBACK_DECODE_FB 
VIDEO_FEEDBACK_BANDWIDTH_ESTIMATION 
VIDEO_FEEDBACK_REQUEST_MULTISTREAM 
VIDEO_FEEDBACK_AUT 

Constructor & Destructor Documentation

◆ ~IVideoListener()

virtual agora::rtc::IVideoListener::~IVideoListener ( )
inlinevirtual

Member Function Documentation

◆ sendVideoPacket()

virtual int agora::rtc::IVideoListener::sendVideoPacket ( const PacketInfo info)
pure virtual

◆ sendVideoRtcpPacket()

virtual int agora::rtc::IVideoListener::sendVideoRtcpPacket ( unsigned int  uid,
const void *  packet,
unsigned short  packetLen,
bool  isToVos 
)
pure virtual

◆ sendVideoRtcpFeedbackPacket()

virtual int agora::rtc::IVideoListener::sendVideoRtcpFeedbackPacket ( const VideoFeedbackPacketType  type,
unsigned int  toUid,
const void *  packet,
int  packetSize 
)
pure virtual

◆ onRemoteFirstFrameDrawed()

virtual void agora::rtc::IVideoListener::onRemoteFirstFrameDrawed ( int  viewIndex,
unsigned int  uid,
int  width,
int  height 
)
pure virtual

◆ onLocalFirstFrameDrawed()

virtual void agora::rtc::IVideoListener::onLocalFirstFrameDrawed ( int  width,
int  height 
)
pure virtual

◆ onRemoteFirstFrameDecoded()

virtual void agora::rtc::IVideoListener::onRemoteFirstFrameDecoded ( unsigned int  uid,
int  width,
int  height 
)
pure virtual

◆ onRemoteVideoInterrupted()

virtual void agora::rtc::IVideoListener::onRemoteVideoInterrupted ( unsigned int  uid,
unsigned int  elapse_time 
)
pure virtual

◆ onVideoStat()

virtual void agora::rtc::IVideoListener::onVideoStat ( const LocalVideoStat localStat,
RemoteVideoStat remoteStat,
int  remoteCount 
)
pure virtual

◆ onVideoProfile()

virtual void agora::rtc::IVideoListener::onVideoProfile ( unsigned int  width,
unsigned int  height,
unsigned int  fps,
unsigned int  bitrate 
)
pure virtual

◆ switchVideoStream()

virtual void agora::rtc::IVideoListener::switchVideoStream ( unsigned int  uid,
VideoStreamType  stream 
)
pure virtual

◆ onBandWidthLevelChanged()

virtual void agora::rtc::IVideoListener::onBandWidthLevelChanged ( int  level)
pure virtual

◆ onCameraFocusAreaChanged()

virtual void agora::rtc::IVideoListener::onCameraFocusAreaChanged ( int  x,
int  y,
int  width,
int  height 
)
pure virtual

◆ onCameraExposureAreaChanged()

virtual void agora::rtc::IVideoListener::onCameraExposureAreaChanged ( int  x,
int  y,
int  width,
int  height 
)
pure virtual

◆ onVideoViewSizeChanged()

virtual void agora::rtc::IVideoListener::onVideoViewSizeChanged ( int  userID,
int  newWidth,
int  newHeight 
)
inlinevirtual

◆ onVideoFrameFrozen()

virtual void agora::rtc::IVideoListener::onVideoFrameFrozen ( unsigned int  uid,
bool  frozen 
)
pure virtual

◆ onAppSetVideoStartBitRate()

virtual void agora::rtc::IVideoListener::onAppSetVideoStartBitRate ( int  value)
pure virtual

◆ onEncodeVideoSEI()

virtual int agora::rtc::IVideoListener::onEncodeVideoSEI ( char **  info,
int *  len 
)
pure virtual

◆ onVideoSizeChanged()

virtual void agora::rtc::IVideoListener::onVideoSizeChanged ( unsigned int  uid,
int  newWidth,
int  newHeight,
int  newRotation 
)
inlinevirtual

◆ onSendVideoPaced()

virtual void agora::rtc::IVideoListener::onSendVideoPaced ( bool  status)
pure virtual

◆ onBWELevel()

virtual void agora::rtc::IVideoListener::onBWELevel ( int  level)
pure virtual

◆ onVideoRexferStatus()

virtual void agora::rtc::IVideoListener::onVideoRexferStatus ( bool  status,
int  target_bitrate 
)
pure virtual

◆ onStartCaptureSuccess()

virtual void agora::rtc::IVideoListener::onStartCaptureSuccess ( )
pure virtual

◆ onSendSEI()

virtual int agora::rtc::IVideoListener::onSendSEI ( char **  info,
int *  len,
long long  timeStampMs,
int  streamType,
bool  isDualStream 
)
pure virtual

◆ onReceiveSEI()

virtual int agora::rtc::IVideoListener::onReceiveSEI ( char *  info,
int  len,
unsigned int  uid,
long long  timeStampMs 
)
pure virtual

◆ OnVideoStreamBitrateRangeChanged()

virtual void agora::rtc::IVideoListener::OnVideoStreamBitrateRangeChanged ( VideoStreamType  type,
uint32_t  max_kbps,
uint32_t  min_kbps 
)
pure virtual