Agora C++ API Reference for All Platforms

Classes | Typedefs | Enumerations
agora::capability Namespace Reference

## Classes
struct | CapabilityItem

## Typedefs
using | CapabilityItems = std::map< uint8_t, std::string >
using | Capabilities = std::map< CapabilityType, CapabilityItems >

## Enumerations
enum | ChannelProfile : uint8_t { ChannelProfile::kCommunication = 0, ChannelProfile::kBroadcasting, ChannelProfile::kUnifiedCommunication, ChannelProfile::kNASA, ChannelProfile::kNum }
enum | AudioCodec : uint8_t { AudioCodec::kL16 = 0, AudioCodec::kG722, AudioCodec::kOPUS, AudioCodec::kOPUS2ch, AudioCodec::kSILK, AudioCodec::kNOVA, AudioCodec::kAACLC, AudioCodec::kAACLC2ch, AudioCodec::kHEAAC, AudioCodec::kHEAAC2ch, AudioCodec::kJC1, AudioCodec::OPUSMC = 13, AudioCodec::kNum }
enum | VideoCodec : uint8_t { VideoCodec::kEVP = 0, VideoCodec::kVP8, VideoCodec::kE264, VideoCodec::kH264, VideoCodec::kH265, VideoCodec::kAV1, VideoCodec::kVP9, VideoCodec::kNum }
enum | H264Feature : uint8_t { H264Feature::kINTRAREQUEST = 0, H264Feature::kPISE, H264Feature::kHIGHPROFILE, H264Feature::kNum }
enum | VideoFEC : uint8_t { VideoFEC::kNone = 0, VideoFEC::kULP, VideoFEC::kRS, VideoFEC::kDM = 4, VideoFEC::kRQ, VideoFEC::kNum }
enum | DmecVersions : uint8_t { DmecVersions::kNone = 0, DmecVersions::kDmv1, DmecVersions::kDmv2, DmecVersions::kDmv3, DmecVersions::kNum }
enum | IfMultipleRedundancy : uint8_t { IfMultipleRedundancy::kNone = 0, IfMultipleRedundancy::kMuiltRdcOpen, IfMultipleRedundancy::kNum }
enum | Webrtc : uint8_t { Webrtc::kWebInterop = 0, Webrtc::kNum }
enum | RtpExtension : uint8_t { RtpExtension::kTwoBytes = 0, RtpExtension::kNum }
enum | AudioRsfec : uint8_t { AudioRsfec::kSupport = 0, AudioRsfec::kNum }
enum | CapabilityType : uint8_t { CapabilityType::kChannelProfile = 0, CapabilityType::kAudioCodec, CapabilityType::kVideoCodec, CapabilityType::kH264Feature, CapabilityType::kVideoFec, CapabilityType::kWebrtc, CapabilityType::kP2P, CapabilityType::kAudioRsfec, CapabilityType::kRtpExtension, CapabilityType::kAudio2InAut, CapabilityType::kVp8Feature, CapabilityType::kSvc, CapabilityType::kDmecVersion, CapabilityType::kMultipleRedundancy, CapabilityType::kBframe, CapabilityType::kMinorStream, CapabilityType::kCodecWithRqfec = 17, CapabilityType::kSyncService, CapabilityType::kAudioNonClockedStreaming = 19 }
enum | Vp8Feature : uint8_t { Vp8Feature::kSupportNasa, Vp8Feature::kSupportFec, Vp8Feature::kNum }
enum | Svc : uint8_t { Svc::kVp8Support, Svc::kH264Support, Svc::kH265Support, Svc::kNum }
enum | Bframe : uint8_t { Bframe::kH264Support, Bframe::kH265Support, Bframe::kNum }
enum | MinorStream : uint8_t { MinorStream::kIntraRequest, MinorStream::kNum }
enum | CodecWithRqfec : uint8_t { CodecWithRqfec::kAv1Support, CodecWithRqfec::kNum }
enum | SyncService : uint8_t { SyncService::kSupport, SyncService::kNum }
enum | AudioNonClockedStreaming : uint8_t { AudioNonClockedStreaming::kNonClockedSupport, AudioNonClockedStreaming::kNum }

## Typedef Documentation

## ◆ CapabilityItems

using agora::capability::CapabilityItems = typedef std::map<uint8_t, std::string>

## ◆ Capabilities

using agora::capability::Capabilities = typedef std::map<CapabilityType, CapabilityItems>

## Enumeration Type Documentation

## ◆ ChannelProfile

enum agora::capability::ChannelProfile : uint8_t
| strong

Enumerator
kCommunication |
kBroadcasting |
kUnifiedCommunication |
kNASA |
kNum |

## ◆ AudioCodec

enum agora::capability::AudioCodec : uint8_t
| strong

Enumerator
kL16 |
kG722 |
kOPUS |
kOPUS2ch |
kSILK |
kNOVA |
kAACLC |
kAACLC2ch |
kHEAAC |
kHEAAC2ch |
kJC1 |
OPUSMC |
kNum |

## ◆ VideoCodec

enum agora::capability::VideoCodec : uint8_t
| strong

Enumerator
kEVP |
kVP8 |
kE264 |
kH264 |
kH265 |
kAV1 |
kVP9 |
kNum |

## ◆ H264Feature

enum agora::capability::H264Feature : uint8_t
| strong

Enumerator
kINTRAREQUEST |
kPISE |
kHIGHPROFILE |
kNum |

## ◆ VideoFEC

enum agora::capability::VideoFEC : uint8_t
| strong

Enumerator
kNone |
kULP |
kRS |
kDM |
kRQ |
kNum |

## ◆ DmecVersions

enum agora::capability::DmecVersions : uint8_t
| strong

Enumerator
kNone |
kDmv1 |
kDmv2 |
kDmv3 |
kNum |

## ◆ IfMultipleRedundancy

enum agora::capability::IfMultipleRedundancy : uint8_t
| strong

Enumerator
kNone |
kMuiltRdcOpen |
kNum |

## ◆ Webrtc

enum agora::capability::Webrtc : uint8_t
| strong

Enumerator
kWebInterop |
kNum |

## ◆ RtpExtension

enum agora::capability::RtpExtension : uint8_t
| strong

Enumerator
kTwoBytes |
kNum |

## ◆ AudioRsfec

enum agora::capability::AudioRsfec : uint8_t
| strong

Enumerator
kSupport |
kNum |

## ◆ CapabilityType

enum agora::capability::CapabilityType : uint8_t
| strong

Enumerator
kChannelProfile |
kAudioCodec |
kVideoCodec |
kH264Feature |
kVideoFec |
kWebrtc |
kP2P |
kAudioRsfec |
kRtpExtension |
kAudio2InAut |
kVp8Feature |
kSvc |
kDmecVersion |
kMultipleRedundancy |
kBframe |
kMinorStream |
kCodecWithRqfec |
kSyncService |
kAudioNonClockedStreaming |

## ◆ Vp8Feature

enum agora::capability::Vp8Feature : uint8_t
| strong

Enumerator
kSupportNasa |
kSupportFec |
kNum |

## ◆ Svc

enum agora::capability::Svc : uint8_t
| strong

Enumerator
kVp8Support |
kH264Support |
kH265Support |
kNum |

## ◆ Bframe

enum agora::capability::Bframe : uint8_t
| strong

Enumerator
kH264Support |
kH265Support |
kNum |

## ◆ MinorStream

enum agora::capability::MinorStream : uint8_t
| strong

Enumerator
kIntraRequest |
kNum |

## ◆ CodecWithRqfec

enum agora::capability::CodecWithRqfec : uint8_t
| strong

Enumerator
kAv1Support |
kNum |

## ◆ SyncService

enum agora::capability::SyncService : uint8_t
| strong

Enumerator
kSupport |
kNum |

## ◆ AudioNonClockedStreaming

enum agora::capability::AudioNonClockedStreaming : uint8_t
| strong

Enumerator
kNonClockedSupport |
kNum |