5#ifndef zego_api_extrnal_video_render_h
6#define zego_api_extrnal_video_render_h
13 namespace EXTERNAL_RENDER
56 const char* pszStreamID,
57 int width,
int height,
int strides[4],
66 virtual void SetFlipMode(
const char* pszStreamID,
int mode) = 0;
73 virtual void SetRotation(
const char* pszStreamID,
int rotation) = 0;
78#if defined(TARGET_OS_IPHONE) || TARGET_OS_OSX
83 class IZegoVideoRenderCVPixelBufferCallback
91 virtual void OnVideoRenderCallback(
void* cv_pixel_buffer,
const char* pszStreamID) = 0;
99 virtual void SetFlipMode(
const char* pszStreamID,
int mode) = 0;
106 virtual void SetRotation(
const char* pszStreamID,
int rotation) = 0;
108 virtual ~IZegoVideoRenderCVPixelBufferCallback() {}
129 bool b_keyframe,
double reference_time_ms) = 0;
150#if defined(TARGET_OS_IPHONE) || TARGET_OS_OSX
159 ZEGOAVKIT_API void SetVideoRenderCVPixelBufferCallback(IZegoVideoRenderCVPixelBufferCallback* callback);
Definition: zego-api-external-video-render.h:116
virtual ~IZegoVideoDecodeCallback()
Definition: zego-api-external-video-render.h:131
virtual void OnVideoDecodeCallback(const unsigned char *data, int length, const char *pszStreamID, const AVE::VideoCodecConfig &codec_config, bool b_keyframe, double reference_time_ms)=0
Definition: zego-api-external-video-render.h:43
virtual ~IZegoVideoRenderCallback()
Definition: zego-api-external-video-render.h:75
virtual void SetFlipMode(const char *pszStreamID, int mode)=0
virtual void SetRotation(const char *pszStreamID, int rotation)=0
virtual void OnVideoRenderCallback(unsigned char **pData, int *dataLen, const char *pszStreamID, int width, int height, int strides[4], AVE::VideoPixelFormat pixel_format)=0
VideoPixelFormat
Definition: video_format.h:7
PublishChannelIndex
Definition: zego-api-defines.h:976
@ PUBLISH_CHN_MAIN
Definition: zego-api-defines.h:977
ZEGOAVKIT_API void SetVideoDecodeCallback(IZegoVideoDecodeCallback *callback)
ZEGOAVKIT_API const char * kZegoVideoDataThirdPublishingStream
ZEGOAVKIT_API const char * kZegoVideoDataMainPublishingStream
ZEGOAVKIT_API bool EnableVideoPreview(bool bEnable, AV::PublishChannelIndex nPublishChannel=AV::PUBLISH_CHN_MAIN)
VideoRenderType
Definition: zego-api-external-video-render.h:22
@ VIDEO_RENDER_TYPE_RGB
Definition: zego-api-external-video-render.h:26
@ VIDEO_RENDER_TYPE_NONE
Definition: zego-api-external-video-render.h:24
@ VIDEO_RENDER_TYPE_ANY
Definition: zego-api-external-video-render.h:30
@ VIDEO_RENDER_TYPE_EXTERNAL_SURFACE_TEXTURE
Definition: zego-api-external-video-render.h:36
@ VIDEO_RENDER_TYPE_YUV
Definition: zego-api-external-video-render.h:28
@ VIDEO_RENDER_TYPE_EXTERNAL_INTERNAL_RGB
Definition: zego-api-external-video-render.h:32
@ VIDEO_RENDER_TYPE_EXTERNAL_INTERNAL_YUV
Definition: zego-api-external-video-render.h:34
ZEGOAVKIT_API void SetVideoRenderCallback(IZegoVideoRenderCallback *callback)
ZEGOAVKIT_API const char * kZegoVideoDataFourthPublishingStream
ZEGOAVKIT_API const char * kZegoVideoDataAuxPublishingStream
ZEGOAVKIT_API void SetVideoRenderType(VideoRenderType type)
ZEGOAVKIT_API bool EnableVideoRender(bool bEnable, const char *pszStreamID)
Definition: AVDefines.h:17
Definition: video_capture.h:247
#define ZEGOAVKIT_API
Definition: zego-api-defines.h:59