Options
All
  • Public
  • Public/Protected
  • All
Menu

Class VideoEncoderConfiguration

Definition of VideoEncoderConfiguration.

Hierarchy

  • VideoEncoderConfiguration

Index

Constructors

constructor

Properties

Optional bitrate

bitrate: undefined | number

Bitrate of the video (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:

  • Standard: (Recommended) The standard bitrate mode. In this mode, the bitrates differ between the LiveBroadcasting and Communication profiles:
    • In the Communication profile, the video bitrate is the same as the base bitrate.
    • In the LiveBroadcasting profile, the video bitrate is twice the base bitrate.
  • Compatible: The compatible bitrate mode. In this mode, the bitrate stays the same regardless of the profile. If you choose this mode for the LiveBroadcasting profile, 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 LiveBroadcasting profile prioritizes the video quality (a higher bitrate). Therefore, We recommend setting this parameter as Standard.

Video Bitrate Table

Resolution Frame rate

(fps)

Base Bitrate

(Kbps, for Communication)

Live Bitrate

(Kbps, for Live Broadcasting)

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

Note

The base bitrate in this table applies to the Communication profile. The LiveBroadcasting profile generally requires a higher bitrate for better video quality. We recommend setting the bitrate mode as Standard. You can also set the bitrate as the base bitrate value × 2.

Optional degradationPrefer

degradationPrefer: DegradationPreference

The video encoding degradation preference under limited bandwidth.

Optional dimensions

dimensions: VideoDimensions

The video frame dimensions (px), which is used to specify the video quality and measured by the total number of pixels along a frame's width and height. The default value is 640 × 360. You can customize the dimension, or select from the following list:

  • 120x120
  • 160x120
  • 180x180
  • 240x180
  • 320x180
  • 240x240
  • 320x240
  • 424x240
  • 360x360
  • 480x360
  • 640x360
  • 480x480
  • 640x480
  • 840x480
  • 960x720
  • 1280x720

Note

  • The value of the dimension does not indicate the orientation mode of the output ratio. For how to set the video orientation, see VideoOutputOrientationMode.
  • 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.

Optional frameRate

frameRate: VideoFrameRate

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

Optional minBitrate

minBitrate: undefined | number

The minimum encoding bitrate (Kbps). The Agora SDK automatically adjusts the encoding bitrate to adapt to the network conditions. Using a value greater than the default value forces the video encoder to output high-quality images but may cause more packet loss and hence sacrifice the smoothness of the video transmission. That said, unless you have special requirements for image quality, Agora does not recommend changing this value.

Optional minFrameRate

minFrameRate: VideoFrameRate

The minimum video encoder frame rate (fps). The default value is Min(-1) (the SDK uses the lowest encoder frame rate).

Optional mirrorMode

mirrorMode: VideoMirrorMode

Sets the mirror mode of the published local video stream.

Optional orientationMode

The orientation mode.

Generated using TypeDoc