add .gitignore
This commit is contained in:
BIN
msext/Class/Video/AgoraRtcCryptoLoader.framework/AgoraRtcCryptoLoader
Executable file
BIN
msext/Class/Video/AgoraRtcCryptoLoader.framework/AgoraRtcCryptoLoader
Executable file
Binary file not shown.
@@ -0,0 +1,13 @@
|
||||
//
|
||||
// AgoraRtcCryptoLoader.h
|
||||
// AgoraRtcCryptoLoader
|
||||
//
|
||||
// Created by junhao wang on 1/5/17.
|
||||
// Copyright © 2017 Agora. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface AgoraRtcCryptoLoader : NSObject
|
||||
|
||||
@end
|
||||
BIN
msext/Class/Video/AgoraRtcEngineKit.framework/AgoraRtcEngineKit
Executable file
BIN
msext/Class/Video/AgoraRtcEngineKit.framework/AgoraRtcEngineKit
Executable file
Binary file not shown.
1506
msext/Class/Video/AgoraRtcEngineKit.framework/Headers/AgoraRtcEngineKit.h
Executable file
1506
msext/Class/Video/AgoraRtcEngineKit.framework/Headers/AgoraRtcEngineKit.h
Executable file
File diff suppressed because it is too large
Load Diff
175
msext/Class/Video/AgoraRtcEngineKit.framework/Headers/IAgoraMediaEngine.h
Executable file
175
msext/Class/Video/AgoraRtcEngineKit.framework/Headers/IAgoraMediaEngine.h
Executable file
@@ -0,0 +1,175 @@
|
||||
#ifndef AGORA_MEDIA_ENGINE_H
|
||||
#define AGORA_MEDIA_ENGINE_H
|
||||
#if defined _WIN32 || defined __CYGWIN__
|
||||
typedef __int64 int64_t;
|
||||
typedef unsigned __int64 uint64_t;
|
||||
#else
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
namespace agora
|
||||
{
|
||||
namespace media
|
||||
{
|
||||
|
||||
class IAudioFrameObserver
|
||||
{
|
||||
public:
|
||||
enum AUDIO_FRAME_TYPE {
|
||||
FRAME_TYPE_PCM16 = 0, //PCM 16bit little endian
|
||||
};
|
||||
struct AudioFrame {
|
||||
AUDIO_FRAME_TYPE type;
|
||||
int samples; //number of samples in this frame
|
||||
int bytesPerSample; //number of bytes per sample: 2 for PCM16
|
||||
int channels; //number of channels (data are interleaved if stereo)
|
||||
int samplesPerSec; //sampling rate
|
||||
void* buffer; //data buffer
|
||||
int64_t renderTimeMs;
|
||||
};
|
||||
public:
|
||||
virtual bool onRecordAudioFrame(AudioFrame& audioFrame) = 0;
|
||||
virtual bool onPlaybackAudioFrame(AudioFrame& audioFrame) = 0;
|
||||
virtual bool onMixedAudioFrame(AudioFrame& audioFrame) = 0;
|
||||
virtual bool onPlaybackAudioFrameBeforeMixing(unsigned int uid, AudioFrame& audioFrame) = 0;
|
||||
};
|
||||
|
||||
class IVideoFrameObserver
|
||||
{
|
||||
public:
|
||||
enum VIDEO_FRAME_TYPE {
|
||||
FRAME_TYPE_YUV420 = 0, //YUV 420 format
|
||||
};
|
||||
struct VideoFrame {
|
||||
VIDEO_FRAME_TYPE type;
|
||||
int width; //width of video frame
|
||||
int height; //height of video frame
|
||||
int yStride; //stride of Y data buffer
|
||||
int uStride; //stride of U data buffer
|
||||
int vStride; //stride of V data buffer
|
||||
void* yBuffer; //Y data buffer
|
||||
void* uBuffer; //U data buffer
|
||||
void* vBuffer; //V data buffer
|
||||
int rotation; // rotation of this frame (0, 90, 180, 270)
|
||||
int64_t renderTimeMs;
|
||||
};
|
||||
public:
|
||||
virtual bool onCaptureVideoFrame(VideoFrame& videoFrame) = 0;
|
||||
virtual bool onRenderVideoFrame(unsigned int uid, VideoFrame& videoFrame) = 0;
|
||||
};
|
||||
|
||||
class IVideoFrame
|
||||
{
|
||||
public:
|
||||
enum PLANE_TYPE {
|
||||
Y_PLANE = 0,
|
||||
U_PLANE = 1,
|
||||
V_PLANE = 2,
|
||||
NUM_OF_PLANES = 3
|
||||
};
|
||||
enum VIDEO_TYPE {
|
||||
VIDEO_TYPE_UNKNOWN = 0,
|
||||
VIDEO_TYPE_I420 = 1,
|
||||
VIDEO_TYPE_IYUV = 2,
|
||||
VIDEO_TYPE_RGB24 = 3,
|
||||
VIDEO_TYPE_ABGR = 4,
|
||||
VIDEO_TYPE_ARGB = 5,
|
||||
VIDEO_TYPE_ARGB4444 = 6,
|
||||
VIDEO_TYPE_RGB565 = 7,
|
||||
VIDEO_TYPE_ARGB1555 = 8,
|
||||
VIDEO_TYPE_YUY2 = 9,
|
||||
VIDEO_TYPE_YV12 = 10,
|
||||
VIDEO_TYPE_UYVY = 11,
|
||||
VIDEO_TYPE_MJPG = 12,
|
||||
VIDEO_TYPE_NV21 = 13,
|
||||
VIDEO_TYPE_NV12 = 14,
|
||||
VIDEO_TYPE_BGRA = 15,
|
||||
VIDEO_TYPE_RGBA = 16,
|
||||
};
|
||||
virtual void release() = 0;
|
||||
virtual const unsigned char* buffer(PLANE_TYPE type) const = 0;
|
||||
|
||||
// Copy frame: If required size is bigger than allocated one, new buffers of
|
||||
// adequate size will be allocated.
|
||||
// Return value: 0 on success ,-1 on error.
|
||||
virtual int copyFrame(IVideoFrame** dest_frame) const = 0;
|
||||
|
||||
// Convert frame
|
||||
// Input:
|
||||
// - src_frame : Reference to a source frame.
|
||||
// - dst_video_type : Type of output video.
|
||||
// - dst_sample_size : Required only for the parsing of MJPG.
|
||||
// - dst_frame : Pointer to a destination frame.
|
||||
// Return value: 0 if OK, < 0 otherwise.
|
||||
// It is assumed that source and destination have equal height.
|
||||
virtual int convertFrame(VIDEO_TYPE dst_video_type, int dst_sample_size, unsigned char* dst_frame) const = 0;
|
||||
|
||||
// Get allocated size per plane.
|
||||
virtual int allocated_size(PLANE_TYPE type) const = 0;
|
||||
|
||||
// Get allocated stride per plane.
|
||||
virtual int stride(PLANE_TYPE type) const = 0;
|
||||
|
||||
// Get frame width.
|
||||
virtual int width() const = 0;
|
||||
|
||||
// Get frame height.
|
||||
virtual int height() const = 0;
|
||||
|
||||
// Get frame timestamp (90kHz).
|
||||
virtual unsigned int timestamp() const = 0;
|
||||
|
||||
// Get render time in milliseconds.
|
||||
virtual int64_t render_time_ms() const = 0;
|
||||
|
||||
// Return true if underlying plane buffers are of zero size, false if not.
|
||||
virtual bool IsZeroSize() const = 0;
|
||||
};
|
||||
|
||||
class IExternalVideoRenderCallback
|
||||
{
|
||||
public:
|
||||
virtual void onViewSizeChanged(int width, int height) = 0;
|
||||
virtual void onViewDestroyed() = 0;
|
||||
};
|
||||
|
||||
struct ExternalVideoRenerContext
|
||||
{
|
||||
IExternalVideoRenderCallback* renderCallback;
|
||||
void* view;
|
||||
int renderMode;
|
||||
int zOrder;
|
||||
float left;
|
||||
float top;
|
||||
float right;
|
||||
float bottom;
|
||||
};
|
||||
|
||||
class IExternalVideoRender
|
||||
{
|
||||
public:
|
||||
virtual void release() = 0;
|
||||
virtual int initialize() = 0;
|
||||
virtual int deliverFrame(const IVideoFrame& videoFrame, int rotation, bool mirrored) = 0;
|
||||
};
|
||||
|
||||
class IExternalVideoRenderFactory
|
||||
{
|
||||
public:
|
||||
virtual IExternalVideoRender* createRenderInstance(const ExternalVideoRenerContext& context) = 0;
|
||||
};
|
||||
|
||||
class IMediaEngine
|
||||
{
|
||||
public:
|
||||
virtual void release() = 0;
|
||||
virtual int registerAudioFrameObserver(IAudioFrameObserver* observer) = 0;
|
||||
virtual int registerVideoFrameObserver(IVideoFrameObserver* observer) = 0;
|
||||
virtual int registerVideoRenderFactory(IExternalVideoRenderFactory* factory) = 0;
|
||||
};
|
||||
|
||||
} //media
|
||||
|
||||
} //agora
|
||||
|
||||
#endif //AGORA_MEDIA_ENGINE_H
|
||||
2181
msext/Class/Video/AgoraRtcEngineKit.framework/Headers/IAgoraRtcEngine.h
Executable file
2181
msext/Class/Video/AgoraRtcEngineKit.framework/Headers/IAgoraRtcEngine.h
Executable file
File diff suppressed because it is too large
Load Diff
6
msext/Class/Video/AgoraRtcEngineKit.framework/Modules/module.modulemap
Executable file
6
msext/Class/Video/AgoraRtcEngineKit.framework/Modules/module.modulemap
Executable file
@@ -0,0 +1,6 @@
|
||||
framework module AgoraRtcEngineKit {
|
||||
umbrella header "AgoraRtcEngineKit.h"
|
||||
|
||||
export *
|
||||
module * { export * }
|
||||
}
|
||||
BIN
msext/Class/Video/VedioA.png
Executable file
BIN
msext/Class/Video/VedioA.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 2.5 KiB |
BIN
msext/Class/Video/VedioB.png
Executable file
BIN
msext/Class/Video/VedioB.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 2.5 KiB |
BIN
msext/Class/Video/VedioBG.png
Executable file
BIN
msext/Class/Video/VedioBG.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
BIN
msext/Class/Video/VedioC.png
Executable file
BIN
msext/Class/Video/VedioC.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 2.6 KiB |
BIN
msext/Class/Video/VedioD.png
Executable file
BIN
msext/Class/Video/VedioD.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 2.7 KiB |
BIN
msext/Class/Video/VedioNG.png
Executable file
BIN
msext/Class/Video/VedioNG.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
BIN
msext/Class/Video/libcrypto.a
Executable file
BIN
msext/Class/Video/libcrypto.a
Executable file
Binary file not shown.
Reference in New Issue
Block a user