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_TYPE errCode) {
58  (void)url;
59  (void)state;
60  (void)errCode;
61  }
62 
70  virtual void onRtmpStreamingEvent(const char* url, RTMP_STREAMING_EVENT eventCode) {
71  (void)url;
72  (void)eventCode;
73  }
74 
83  virtual void onStreamPublished(const char* url, int error) {
84  (void)url;
85  (void)error;
86  }
94  virtual void onStreamUnpublished(const char* url) { (void)url; }
105  virtual void onTranscodingUpdated() {}
106 };
111  public:
135  virtual int addPublishStreamUrl(const char* url, bool transcodingEnabled) = 0;
154  virtual int removePublishStreamUrl(const char* url) = 0;
166  virtual int setLiveTranscoding(const LiveTranscoding& transcoding) = 0;
167 
187  virtual int startRtmpStreamWithoutTranscoding(const char* url) = 0;
188 
209  virtual int startRtmpStreamWithTranscoding(const char* url, const LiveTranscoding& transcoding) = 0;
210 
220  virtual int updateRtmpTranscoding(const LiveTranscoding& transcoding) = 0;
239  virtual int stopRtmpStream(const char* url) = 0;
240 
248  virtual int registerObserver(IRtmpStreamingObserver* observer) = 0;
256  virtual int unregisterObserver(IRtmpStreamingObserver* observer) = 0;
257 
258  protected:
260 };
261 
262 
263 
264 
265 } // namespace rtc
266 } // namespace agora
agora::rtc::IRtmpStreamingObserver::onTranscodingUpdated
virtual void onTranscodingUpdated()
Definition: IAgoraRtmpStreamingService.h:105
agora::rtc::LiveTranscoding
Definition: AgoraBase.h:3634
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::startRtmpStreamWithoutTranscoding
virtual int startRtmpStreamWithoutTranscoding(const char *url)=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::IRtmpStreamingService::stopRtmpStream
virtual int stopRtmpStream(const char *url)=0
agora::rtc::IRtmpStreamingService::updateRtmpTranscoding
virtual int updateRtmpTranscoding(const LiveTranscoding &transcoding)=0
agora::rtc::IRtmpStreamingObserver::onStreamPublished
virtual void onStreamPublished(const char *url, int error)
Definition: IAgoraRtmpStreamingService.h:83
agora::rtc::IRtmpStreamingService::registerObserver
virtual int registerObserver(IRtmpStreamingObserver *observer)=0
agora::rtc::IRtmpStreamingObserver::onStreamUnpublished
virtual void onStreamUnpublished(const char *url)
Definition: IAgoraRtmpStreamingService.h:94
agora::rtc::IRtmpStreamingObserver::onRtmpStreamingEvent
virtual void onRtmpStreamingEvent(const char *url, RTMP_STREAMING_EVENT eventCode)
Definition: IAgoraRtmpStreamingService.h:70
agora::rtc::IRtmpStreamingObserver::onRtmpStreamingStateChanged
virtual void onRtmpStreamingStateChanged(const char *url, RTMP_STREAM_PUBLISH_STATE state, RTMP_STREAM_PUBLISH_ERROR_TYPE errCode)
Definition: IAgoraRtmpStreamingService.h:56
agora::rtc::IRtmpStreamingService::startRtmpStreamWithTranscoding
virtual int startRtmpStreamWithTranscoding(const char *url, const LiveTranscoding &transcoding)=0
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IRtmpStreamingObserver
Definition: IAgoraRtmpStreamingService.h:40
agora::rtc::IRtmpStreamingService
Definition: IAgoraRtmpStreamingService.h:110