cn.tee3.avd_SDK-C++  2.1.0
rtspclient.h
浏览该文件的文档.
1 #ifndef RTC_RtspClient_H_
2 #define RTC_RtspClient_H_
3 
4 #include "common.h"
5 
6 namespace tee3 {
7  namespace avd {
12  class FakeAudioCapturer;
13  class FakeVideoCapturer;
14  class IVideoRender;
16  public:
22  public:
24 
36  virtual void videoEncodedOut(VideoEncodedType type, uint64 timestamp_ns, unsigned int width, unsigned int height, bool isKeyFrame, const uint8 *data, unsigned int len) = 0;
37 
53  virtual void videoYUVOut(uint64 timestamp_ns,
54  const uint8_t* dataY,
55  const uint8_t* dataU,
56  const uint8_t* dataV,
57  int width,
58  int height,
59  int strideY,
60  int strideU,
61  int strideV,
62  int rotation) = 0;
63 
64 
65  };
67  public:
69 
80  virtual void audioEncodedOut(AudioEncodedType type, uint64 timestamp_ns, int sampleRate, int channels, const uint8 *data, unsigned int len) = 0;
91  virtual void audioPCMOut(uint64 timestamp_ns, int sampleRate, int channels, const uint8 *data, unsigned int len) = 0;
92  };
93 
94  public:
99  static RtspClient* create();
100 
105  static void destroy(RtspClient*);
106 
114  virtual Result start(const String& uri, String username = "", String password = "") = 0;
119  virtual Result stop() = 0;
120 
129  virtual Result setVideoListener(IVideoListener* listener) = 0;
130 
139  virtual Result setAudioListener(IAudioListener* listener) = 0;
140 
141 
147  virtual Result setRender(IVideoRender* render) = 0;
148 
157  virtual Result setVideoCapture(tee3::avd::FakeVideoCapturer* capture) = 0;
167  virtual Result setAudioCapture(tee3::avd::FakeAudioCapturer* capture) = 0;
168 
177  virtual Result enableVideoCallbackEncoded(bool callbackEncodedData = true) = 0;
186  virtual Result enableVideoCallbackYUV(bool callbackYUVData = true) = 0;
195  virtual Result enableAudioCallbackEncoded(bool callbackEncodedData = true) = 0;
204  virtual Result enableAudioCallbackPCM(bool callbackPcmData = true) = 0;
205  protected:
206  virtual ~RtspClient() {};
207  };
208 
209  } // namespace avd
210 } // namespace tee3
211 
212 #endif //RTC_RtspClient_H_
音频流导入接口.
Definition: audiocapture.h:12
AudioEncodedType
Definition: combase.h:648
virtual ~RtspClient()
Definition: rtspclient.h:206
int Result
返回值类型
Definition: combase.h:9
视频渲染接口类
Definition: videorender.h:69
#define RT_API_EXPORT
Definition: defines.h:186
std::string String
tee3定义的String类型
Definition: common.h:10
unsigned long long uint64
Definition: defines.h:380
视频流导入接口.
Definition: videocapture.h:15
VideoEncodedType
Definition: combase.h:641
Definition: rtspclient.h:66
Definition: rtspclient.h:15
回调接口.
Definition: rtspclient.h:21
unsigned char uint8
Definition: defines.h:395
Definition: audiocapture.h:5