Agora RTC Objective-C API Reference  Refactor
IAgoraMediaRelayService.h
Go to the documentation of this file.
1 //
2 // Agora Media SDK
3 //
4 // Created by Xiaosen Wang in 2020.
5 // Copyright (c) 2020 Agora IO. All rights reserved.
6 //
7 #pragma once
8 #include "AgoraBase.h"
9 #include "AgoraRefPtr.h"
10 #include "IAgoraService.h"
11 
12 namespace agora {
13 namespace rtc {
14 class IMediaRelayObserver;
16  public:
26  virtual int startChannelMediaRelay(const ChannelMediaRelayConfiguration& configuration) = 0;
45  virtual int updateChannelMediaRelay(const ChannelMediaRelayConfiguration& configuration) = 0;
55  virtual int stopChannelMediaRelay() = 0;
56 
62  virtual int pauseAllChannelMediaRelay() = 0;
63 
69  virtual int resumeAllChannelMediaRelay() = 0;
70 
71  virtual void registerEventHandler(IMediaRelayObserver* eventObserver, void(*safeDeleter)(IMediaRelayObserver*) = NULL) = 0;
72  virtual void unregisterEventHandler(IMediaRelayObserver* eventObserver) = 0;
73 };
74 
76  public:
77  virtual ~IMediaRelayObserver() {}
78 
94 };
95 
96 } // namespace rtc
97 } // namespace agora
agora::rtc::IMediaRelayService
Definition: IAgoraMediaRelayService.h:15
agora::rtc::IMediaRelayObserver
Definition: IAgoraMediaRelayService.h:75
AgoraBase.h
agora::rtc::CHANNEL_MEDIA_RELAY_ERROR
CHANNEL_MEDIA_RELAY_ERROR
Definition: AgoraBase.h:4681
agora::rtc::IMediaRelayService::resumeAllChannelMediaRelay
virtual int resumeAllChannelMediaRelay()=0
agora::rtc::IMediaRelayObserver::onChannelMediaRelayStateChanged
virtual void onChannelMediaRelayStateChanged(CHANNEL_MEDIA_RELAY_STATE state, CHANNEL_MEDIA_RELAY_ERROR code)
Definition: IAgoraMediaRelayService.h:87
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::IMediaRelayService::pauseAllChannelMediaRelay
virtual int pauseAllChannelMediaRelay()=0
agora::rtc::IMediaRelayService::updateChannelMediaRelay
virtual int updateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
agora::rtc::CHANNEL_MEDIA_RELAY_STATE
CHANNEL_MEDIA_RELAY_STATE
Definition: AgoraBase.h:4779
agora::rtc::IMediaRelayService::unregisterEventHandler
virtual void unregisterEventHandler(IMediaRelayObserver *eventObserver)=0
agora::rtc::ChannelMediaRelayConfiguration
Definition: AgoraBase.h:4813
agora::rtc::IMediaRelayService::registerEventHandler
virtual void registerEventHandler(IMediaRelayObserver *eventObserver, void(*safeDeleter)(IMediaRelayObserver *)=NULL)=0
AgoraRefPtr.h
agora::rtc::CHANNEL_MEDIA_RELAY_EVENT
CHANNEL_MEDIA_RELAY_EVENT
Definition: AgoraBase.h:4726
agora::rtc::IMediaRelayObserver::~IMediaRelayObserver
virtual ~IMediaRelayObserver()
Definition: IAgoraMediaRelayService.h:77
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IMediaRelayService::stopChannelMediaRelay
virtual int stopChannelMediaRelay()=0
agora::rtc::IMediaRelayService::startChannelMediaRelay
virtual int startChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
IAgoraService.h
agora::rtc::IMediaRelayObserver::onChannelMediaRelayEvent
virtual void onChannelMediaRelayEvent(CHANNEL_MEDIA_RELAY_EVENT code)
Definition: IAgoraMediaRelayService.h:93