Agora RTC Objective-C API Reference Refactor

Data Fields
VirtualBackgroundSource Struct Reference

## Data Fields
BACKGROUND_SOURCE_TYPE | background_source_type
unsigned int | color
const char * | source
BACKGROUND_BLUR_DEGREE | blur_degree

## Member Enumeration Documentation

## ◆ BACKGROUND_SOURCE_TYPE

enum BACKGROUND_SOURCE_TYPE

The custom background.

Enumerator
BACKGROUND_NONE | 0: Process the background as alpha data without replacement, only separating the portrait and the background. After setting this value, you can call `startLocalVideoTranscoder` to implement the picture-in-picture effect.
BACKGROUND_COLOR | 1: (Default) The background image is a solid color.
BACKGROUND_IMG | 2: The background is an image in PNG or JPG format.
BACKGROUND_BLUR | 3: The background is a blurred version of the original background.
BACKGROUND_VIDEO | 4: The background is a local video in MP4, AVI, MKV, FLV, or other supported formats.

## ◆ BACKGROUND_BLUR_DEGREE

enum BACKGROUND_BLUR_DEGREE

The degree of blurring applied to the custom background image.

Enumerator
BLUR_DEGREE_LOW | 1: The degree of blurring applied to the custom background image is low. The user can almost see the background clearly.
BLUR_DEGREE_MEDIUM | 2: The degree of blurring applied to the custom background image is medium. It is difficult for the user to recognize details in the background.
BLUR_DEGREE_HIGH | 3: (Default) The degree of blurring applied to the custom background image is high. The user can barely see any distinguishing features in the background.

## Constructor & Destructor Documentation

## ◆ VirtualBackgroundSource()

VirtualBackgroundSource | ( |  | ) |
| inline

## Field Documentation

## ◆ background_source_type

BACKGROUND_SOURCE_TYPE background_source_type

The custom background. See `BACKGROUND_SOURCE_TYPE`.

## ◆ color

unsigned int color

The type of the custom background image. The color of the custom background image. The format is a hexadecimal integer defined by RGB, without the # sign, such as 0xFFB6C1 for light pink. The default value is 0xFFFFFF, which signifies white. The value range is [0x000000, 0xffffff]. If the value is invalid, the SDK replaces the original background image with a white background image.

Note
  This parameter is only applicable to custom backgrounds of the following types:
  - BACKGROUND_COLOR: The background image is a solid-colored image of the color passed in by the parameter.
  - BACKGROUND_IMG: If the image in `source` has a transparent background, the transparent background will be filled with the color passed in by the parameter.

## ◆ source

const char* source

The local absolute path of the custom background image. Supports PNG, JPG, MP4, AVI, MKV, and FLV formats. If the path is invalid, the SDK will use either the original background image or the solid color image specified by `color`.

Note
  This parameter takes effect only when the type of the custom background image is BACKGROUND_IMG or BACKGROUND_VIDEO.

## ◆ blur_degree

BACKGROUND_BLUR_DEGREE blur_degree

The degree of blurring applied to the custom background image. See `BACKGROUND_BLUR_DEGREE`.

Note
  This parameter takes effect only when the type of the custom background image is BACKGROUND_BLUR.