Agora Java API Reference for Android
IAgoraRtmpStreamingService.h
1 
2 // Copyright (c) 2019 Agora.io. All rights reserved
3 
4 // This program is confidential and proprietary to Agora.io.
5 // And may not be copied, reproduced, modified, disclosed to others, published
6 // or used, in whole or in part, without the express prior written permission
7 // of Agora.io.
8 
9 #pragma once // NOLINT(build/header_guard)
10 
11 #include "AgoraBase.h"
12 #include "AgoraRefPtr.h"
13 #include "IAgoraService.h"
14 #include "NGIAgoraRtcConnection.h"
15 
16 namespace agora {
17 namespace rtc {
18 
22 enum RTMP_CHANNEL_EVENT
23 {
27  RTMP_CHANNEL_EVENT_DISCONNECT = 0,
31  RTMP_CHANNEL_EVENT_LEAVE_CHANNEL = 1,
35  RTMP_CHANNEL_EVENT_BANNED_BY_SERVER = 2
36 };
41 public:
56  virtual void onRtmpStreamingStateChanged(const char* url, RTMP_STREAM_PUBLISH_STATE state,
57  RTMP_STREAM_PUBLISH_ERROR errCode) {
58  (void)url;
59  (void)state;
60  (void)errCode;
61  }
70  virtual void onStreamPublished(const char* url, int error) {
71  (void)url;
72  (void)error;
73  }
81  virtual void onStreamUnpublished(const char* url) { (void)url; }
92  virtual void onTranscodingUpdated() {}
93 };
98  public:
122  virtual int addPublishStreamUrl(const char* url, bool transcodingEnabled) = 0;
141  virtual int removePublishStreamUrl(const char* url) = 0;
153  virtual int setLiveTranscoding(const LiveTranscoding& transcoding) = 0;
154 
162  virtual int registerObserver(IRtmpStreamingObserver* observer) = 0;
170  virtual int unregisterObserver(IRtmpStreamingObserver* observer) = 0;
171 
172  protected:
174 };
175 
176 
177 
178 
179 } // namespace rtc
180 } // namespace agora
agora::rtc::IRtmpStreamingObserver::onTranscodingUpdated
virtual void onTranscodingUpdated()
Definition: IAgoraRtmpStreamingService.h:92
agora::rtc::IRtmpStreamingObserver::onRtmpStreamingStateChanged
virtual void onRtmpStreamingStateChanged(const char *url, RTMP_STREAM_PUBLISH_STATE state, RTMP_STREAM_PUBLISH_ERROR errCode)
Definition: IAgoraRtmpStreamingService.h:56
agora::rtc::LiveTranscoding
Definition: AgoraBase.h:3227
agora::rtc::IRtmpStreamingService::unregisterObserver
virtual int unregisterObserver(IRtmpStreamingObserver *observer)=0
agora::rtc::IRtmpStreamingService::addPublishStreamUrl
virtual int addPublishStreamUrl(const char *url, bool transcodingEnabled)=0
agora::rtc::IRtmpStreamingService::setLiveTranscoding
virtual int setLiveTranscoding(const LiveTranscoding &transcoding)=0
agora::rtc::IRtmpStreamingService::removePublishStreamUrl
virtual int removePublishStreamUrl(const char *url)=0
agora::rtc::IRtmpStreamingObserver::onStreamPublished
virtual void onStreamPublished(const char *url, int error)
Definition: IAgoraRtmpStreamingService.h:70
agora::rtc::IRtmpStreamingService::registerObserver
virtual int registerObserver(IRtmpStreamingObserver *observer)=0
agora::rtc::IRtmpStreamingObserver::onStreamUnpublished
virtual void onStreamUnpublished(const char *url)
Definition: IAgoraRtmpStreamingService.h:81
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IRtmpStreamingObserver
Definition: IAgoraRtmpStreamingService.h:40
agora::rtc::IRtmpStreamingService
Definition: IAgoraRtmpStreamingService.h:97