Agora RTC Objective-C API Reference Refactor

Properties
AgoraScreenVideoParameters Class Reference

Inherits <NSObject>.

## Properties
CGSize | dimensions
NSInteger | frameRate
NSInteger | bitrate
AgoraVideoContentHint | contentHint

## Property Documentation

## ◆ dimensions

- (CGSize) dimensions
| read write nonatomic assign

CGSizezero Since the applicable below 720p

You can customize the dimension, or select from the following list:

- AgoraVideoDimension120x120
- AgoraVideoDimension160x120
- AgoraVideoDimension180x180
- AgoraVideoDimension240x180
- AgoraVideoDimension320x180
- AgoraVideoDimension240x240
- AgoraVideoDimension320x240
- AgoraVideoDimension424x240
- AgoraVideoDimension360x360
- AgoraVideoDimension480x360
- AgoraVideoDimension640x360
- AgoraVideoDimension480x480
- AgoraVideoDimension640x480
- AgoraVideoDimension840x480
- AgoraVideoDimension960x540
- AgoraVideoDimension960x720
- AgoraVideoDimension1280x720
- AgoraVideoDimension1920x1080 (macOS only)

Note:

- The dimension does not specify the orientation mode of the output ratio. For how to set the video orientation, see [AgoraVideoOutputOrientationMode](AgoraVideoOutputOrientationMode).
- Whether 720p can be supported depends on the device. If the device cannot support 720p, the frame rate will be lower than the one listed in the table. Agora optimizes the video in lower-end devices.
- iPhones do not support video frame dimensions above 720p.

## ◆ frameRate

- (NSInteger) frameRate
| read write nonatomic assign

The frame rate of the video (fps).

You can either set the frame rate manually or choose from the following options. The default value is 15. We do not recommend setting this to a value greater than 30.

    AgoraVideoFrameRateFps1(1): 1 fps
    AgoraVideoFrameRateFps7(7): 7 fps
    AgoraVideoFrameRateFps10(10): 10 fps
    AgoraVideoFrameRateFps15(15): 15 fps
    AgoraVideoFrameRateFps20(20): 20 fps
    AgoraVideoFrameRateFps24(24): 24 fps
    AgoraVideoFrameRateFps30(30): 30 fps
    AgoraVideoFrameRateFps60(30): 60 fps (macOS only)

## ◆ bitrate

- (NSInteger) bitrate
| read write nonatomic assign

The bitrate of the video.

Sets the video bitrate (Kbps). Refer to the table below and set your bitrate. If you set a bitrate beyond the proper range, the SDK automatically adjusts it to a value within the range. You can also choose from the following options:

- AgoraVideoBitrateStandard: (recommended) the standard bitrate mode. In this mode, the bitrates differ between the interactive live streaming and Communication profiles:
  - Communication profile: the video bitrate is the same as the base bitrate.
  - Interactive live streaming profile: the video bitrate is twice the base bitrate.
- AgoraVideoBitrateCompatible: the compatible bitrate mode. In this mode, the bitrate stays the same regardless of the profile. In the interactive live streaming profile, if you choose this mode, the video frame rate may be lower than the set value.

Agora uses different video codecs for different profiles to optimize the user experience. For example, the Communication profile prioritizes the smoothness while the interactive live streaming profile prioritizes the video quality (a higher bitrate). Therefore, Agora recommends setting this parameter as AgoraVideoBitrateStandard.

Video Bitrate Table**

Resolution | Frame Rate (fps) | Base Bitrate (Kbps, for Communication) | Live Bitrate (Kbps, for Live Broadcast)
--- | --- | --- | ---
160 * 120 | 15 | 65 | 130
120 * 120 | 15 | 50 | 100
320 * 180 | 15 | 140 | 280
180 * 180 | 15 | 100 | 200
240 * 180 | 15 | 120 | 240
320 * 240 | 15 | 200 | 400
240 * 240 | 15 | 140 | 280
424 * 240 | 15 | 220 | 440
640 * 360 | 15 | 400 | 800
360 * 360 | 15 | 260 | 520
640 * 360 | 30 | 600 | 1200
360 * 360 | 30 | 400 | 800
480 * 360 | 15 | 320 | 640
480 * 360 | 30 | 490 | 980
640 * 480 | 15 | 500 | 1000
480 * 480 | 15 | 400 | 800
640 * 480 | 30 | 750 | 1500
480 * 480 | 30 | 600 | 1200
848 * 480 | 15 | 610 | 1220
848 * 480 | 30 | 930 | 1860
640 * 480 | 10 | 400 | 800
1280 * 720 | 15 | 1130 | 2260
1280 * 720 | 30 | 1710 | 3420
960 * 720 | 15 | 910 | 1820
960 * 720 | 30 | 1380 | 2760
1920 * 1080 | 15 | 2080 | 4160
1920 * 1080 | 30 | 3150 | 6300
1920 * 1080 | 60 | 4780 | 6500

Note:**

The base bitrate in this table applies to the Communication profile. The interactive live streaming profile generally requires a higher bitrate for better video quality. Agora recommends setting the bitrate mode as AgoraVideoBitrateStandard. You can also set the bitrate as twice the base bitrate.

## ◆ contentHint

- (AgoraVideoContentHint) contentHint
| read write nonatomic assign

contentHint The content hint for screen sharing, see [AgoraVideoContentHint](AgoraVideoContentHint).