Agora C++ API Reference for All Platforms

Loading...
Searching...
No Matches
IAgoraMediaRelayService.h
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;
15 class IMediaRelayService : public RefCountInterface {
16 public:
30 virtual int startOrUpdateChannelMediaRelay(const ChannelMediaRelayConfiguration& configuration) = 0;
31
44 virtual int stopChannelMediaRelay(aosl_ref_t ares = AOSL_REF_INVALID) = 0;
45
54 virtual int pauseAllChannelMediaRelay(aosl_ref_t ares = AOSL_REF_INVALID) = 0;
55
64 virtual int resumeAllChannelMediaRelay(aosl_ref_t ares = AOSL_REF_INVALID) = 0;
65
66 virtual void registerEventHandler(IMediaRelayObserver* eventObserver, void(*safeDeleter)(IMediaRelayObserver*) = NULL) = 0;
67 virtual void unregisterEventHandler(IMediaRelayObserver* eventObserver) = 0;
68};
69
70 class IMediaRelayObserver {
71 public:
72 virtual ~IMediaRelayObserver() {}
73
82 virtual void onChannelMediaRelayStateChanged(CHANNEL_MEDIA_RELAY_STATE state,
83 CHANNEL_MEDIA_RELAY_ERROR code) {}
84};
85
86} // namespace rtc
87} // namespace agora
agora::RefCountInterface
Definition AgoraRefPtr.h:31
agora::rtc::IMediaRelayObserver
Definition IAgoraMediaRelayService.h:70
agora::rtc::IMediaRelayObserver::~IMediaRelayObserver
virtual ~IMediaRelayObserver()
Definition IAgoraMediaRelayService.h:72
agora::rtc::IMediaRelayObserver::onChannelMediaRelayStateChanged
virtual void onChannelMediaRelayStateChanged(CHANNEL_MEDIA_RELAY_STATE state, CHANNEL_MEDIA_RELAY_ERROR code)
Definition IAgoraMediaRelayService.h:82
agora::rtc::IMediaRelayService
Definition IAgoraMediaRelayService.h:15
agora::rtc::IMediaRelayService::resumeAllChannelMediaRelay
virtual int resumeAllChannelMediaRelay(aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IMediaRelayService::registerEventHandler
virtual void registerEventHandler(IMediaRelayObserver *eventObserver, void(*safeDeleter)(IMediaRelayObserver *)=NULL)=0
agora::rtc::IMediaRelayService::unregisterEventHandler
virtual void unregisterEventHandler(IMediaRelayObserver *eventObserver)=0
agora::rtc::IMediaRelayService::stopChannelMediaRelay
virtual int stopChannelMediaRelay(aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IMediaRelayService::pauseAllChannelMediaRelay
virtual int pauseAllChannelMediaRelay(aosl_ref_t ares=AOSL_REF_INVALID)=0
agora::rtc::IMediaRelayService::startOrUpdateChannelMediaRelay
virtual int startOrUpdateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
agora::rtc
Definition AgoraExtensions.h:5
agora::rtc::CHANNEL_MEDIA_RELAY_ERROR
CHANNEL_MEDIA_RELAY_ERROR
The error code of the channel media relay.
Definition AgoraBase.h:6946
agora::rtc::CHANNEL_MEDIA_RELAY_STATE
CHANNEL_MEDIA_RELAY_STATE
The state code of the channel media relay.
Definition AgoraBase.h:7006
agora
Definition AgoraAtomicOps.h:21
agora::rtc::ChannelMediaRelayConfiguration
Configuration of cross channel media relay.
Definition AgoraBase.h:7050