Agora RTC Objective-C API Reference Refactor

Namespaces | Data Structures | Enumerations
agora::media Namespace Reference

## Namespaces
| base

## Data Structures
struct | AudioSpectrumData
struct | ContentInspectConfig
struct | ContentInspectModule
class | IAudioFrameObserver
class | IAudioFrameObserverBase
class | IAudioPcmFrameSink
class | IAudioSpectrumObserver
class | IFaceInfoObserver
class | IMediaEngine
class | IMediaRecorderObserver
class | IVideoEncodedFrameObserver
class | IVideoFrameObserver
struct | MediaRecorderConfiguration
struct | RecorderInfo
struct | SnapshotConfig
struct | UserAudioSpectrumInfo

## Enumerations
enum | MediaRecorderContainerFormat { FORMAT_MP4 = 1 }
enum | MediaRecorderStreamType { STREAM_TYPE_AUDIO = 0x01, STREAM_TYPE_VIDEO = 0x02, STREAM_TYPE_BOTH = STREAM_TYPE_AUDIO | STREAM_TYPE_VIDEO }
enum | RecorderState { RECORDER_STATE_ERROR = -1, RECORDER_STATE_START = 2, RECORDER_STATE_STOP = 3 }
enum | RecorderReasonCode { RECORDER_REASON_NONE = 0, RECORDER_REASON_WRITE_FAILED = 1, RECORDER_REASON_NO_STREAM = 2, RECORDER_REASON_OVER_MAX_DURATION = 3, RECORDER_REASON_CONFIG_CHANGED = 4 }

## Enumeration Type Documentation

## ◆ MEDIA_SOURCE_TYPE

enum MEDIA_SOURCE_TYPE

Media source type.

Enumerator
AUDIO_PLAYOUT_SOURCE | 0: Audio playback device.
AUDIO_RECORDING_SOURCE | 1: Audio capturing device.
PRIMARY_CAMERA_SOURCE | 2: The primary camera.
SECONDARY_CAMERA_SOURCE | 3: A secondary camera.
PRIMARY_SCREEN_SOURCE | 4: Video captured by primary screen capturer.
SECONDARY_SCREEN_SOURCE | 5: Video captured by secondary screen capturer.
CUSTOM_VIDEO_SOURCE | 6: Custom video source.
MEDIA_PLAYER_SOURCE | 7: Video for media player sharing.
RTC_IMAGE_PNG_SOURCE | 8: Video for png image.
RTC_IMAGE_JPEG_SOURCE | 9: Video for jpeg image.
RTC_IMAGE_GIF_SOURCE | 10: Video for gif image.
REMOTE_VIDEO_SOURCE | 11: Remote video received from network.
TRANSCODED_VIDEO_SOURCE | 12: Video for transcoded.
SPEECH_DRIVEN_VIDEO_SOURCE | 13: Video processed by the speech driven extension.
UNKNOWN_MEDIA_SOURCE | 100: Unknown media source.

## ◆ CONTENT_INSPECT_RESULT

enum CONTENT_INSPECT_RESULT

Enumerator
CONTENT_INSPECT_NEUTRAL |
CONTENT_INSPECT_SEXY |
CONTENT_INSPECT_PORN |

## ◆ CONTENT_INSPECT_TYPE

enum CONTENT_INSPECT_TYPE

The type of video content moderation module.

Enumerator
CONTENT_INSPECT_INVALID | 0: (Default) This module has no actual function. Do not set `type` to this value.
CONTENT_INSPECT_MODERATION | Deprecated: Content inspect type moderation
CONTENT_INSPECT_SUPERVISION | 2: Video screenshot and upload via Agora self-developed extension. SDK takes screenshots of the video stream in the channel and uploads them.
CONTENT_INSPECT_IMAGE_MODERATION | 3: Video screenshot and upload via extensions from Agora Extensions Marketplace. SDK uses video moderation extensions from Agora Extensions Marketplace to take screenshots of the video stream in the channel and uploads them.

## ◆ EXTERNAL_VIDEO_SOURCE_TYPE

enum EXTERNAL_VIDEO_SOURCE_TYPE

The external video frame encoding type.

Enumerator
VIDEO_FRAME | 0: The video frame is not encoded.
ENCODED_VIDEO_FRAME | 1: The video frame is encoded.

## ◆ MediaRecorderContainerFormat

enum MediaRecorderContainerFormat

Format of the recording file.

Since
  v3.5.2

Enumerator
FORMAT_MP4 | 1: (Default) MP4.

## ◆ MediaRecorderStreamType

enum MediaRecorderStreamType

The recording content.

Since
  v3.5.2

Enumerator
STREAM_TYPE_AUDIO | Only audio.
STREAM_TYPE_VIDEO | Only video.
STREAM_TYPE_BOTH | (Default) Audio and video.

## ◆ RecorderState

enum RecorderState

The current recording state.

Since
  v3.5.2

Enumerator
RECORDER_STATE_ERROR | -1: An error occurs during the recording. See `RecorderReasonCode` for the reason.
RECORDER_STATE_START | 2: The audio and video recording starts.
RECORDER_STATE_STOP | 3: The audio and video recording stops.

## ◆ RecorderReasonCode

enum RecorderReasonCode

The reason for the state change.

Since
  v3.5.2

Enumerator
RECORDER_REASON_NONE | 0: No error.
RECORDER_REASON_WRITE_FAILED | 1: The SDK fails to write the recorded data to a file.
RECORDER_REASON_NO_STREAM | 2: The SDK does not detect any audio and video streams, or audio and video streams are interrupted for more than five seconds during recording.
RECORDER_REASON_OVER_MAX_DURATION | 3: The recording duration exceeds the upper limit.
RECORDER_REASON_CONFIG_CHANGED | 4: The recording configuration changes.

## ◆ AUDIO_MIXING_DUAL_MONO_MODE

enum AUDIO_MIXING_DUAL_MONO_MODE

The channel mode.

Enumerator
AUDIO_MIXING_DUAL_MONO_AUTO | 0: Original mode.
AUDIO_MIXING_DUAL_MONO_L | 1: Left channel mode. This mode replaces the audio of the right channel with the audio of the left channel, which means the user can only hear the audio of the left channel.
AUDIO_MIXING_DUAL_MONO_R | 2: Right channel mode. This mode replaces the audio of the left channel with the audio of the right channel, which means the user can only hear the audio of the right channel.
AUDIO_MIXING_DUAL_MONO_MIX | 3: Mixed channel mode. This mode mixes the audio of the left channel and the right channel, which means the user can hear the audio of the left channel and the right channel at the same time.