# Interface CustomVideoTrackInitConfig (/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/customvideotrackinitconfig)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

## Properties [#properties]

<a id="bitratemax"></a>

<a id="optional-bitratemax"></a>

### bitrateMax [#bitratemax]

<ApiSignature labels="Optional">

bitrateMax: number

</ApiSignature>

指定发送这个视频轨道时的最大码率，单位为 Kbps。

<a id="bitratemin"></a>

<a id="optional-bitratemin"></a>

### bitrateMin [#bitratemin]

<ApiSignature labels="Optional">

bitrateMin: number

</ApiSignature>

指定发送这个视频轨道时的最小码率，单位为 Kbps。

<a id="framerate"></a>

<a id="optional-framerate"></a>

### frameRate [#framerate]

<ApiSignature labels="Optional">

frameRate: number|[ConstrainLong](/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/constrainlong)

</ApiSignature>

:::info[自从]
*4.17.1*

视频帧率，单位为 fps。

支持传入 `number`，或一个约束对象，如 `{ max: 30, min: 5 }`。

关于约束对象的详细说明可以参考 [ConstrainLong](/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/constrainlong)。
:::

<a id="height"></a>

<a id="optional-height"></a>

### height [#height]

<ApiSignature labels="Optional">

height: number|[ConstrainLong](/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/constrainlong)

</ApiSignature>

:::info[自从]
*4.17.1*

视频的分辨率高。

支持传入 `number`，或一个约束对象，如 `{ max: 1280, min: 720 }`。

关于约束对象的详细说明可以参考 [ConstrainLong](/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/constrainlong)。
:::

<a id="mediastreamtrack"></a>

### mediaStreamTrack [#mediastreamtrack]

<ApiSignature>

mediaStreamTrack: MediaStreamTrack

</ApiSignature>

这里填写您自己维护的 [MediaStreamTrack](https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack) 对象

<a id="optimizationmode"></a>

<a id="optional-optimizationmode"></a>

### optimizationMode [#optimizationmode]

<ApiSignature labels="Optional">

optimizationMode: "motion"|"detail"

</ApiSignature>

:::info[自从]
*4.2.0*

设置视频传输优化模式。

你可以在视频通话、视频直播或屏幕共享过程中调用此方法动态调整视频的传输优化模式。例如你想要把屏幕共享内容从演示文稿切换为视频时，你可以将传输优化模式从 `"detail"` 切换为 `"motion"`，确保视频画面在网络波动时不会出现卡顿。

**注意事项：**

该方法只支持 Chrome 浏览器。
:::

#### param [#param]

视频传输优化模式：

- `"balanced"`: 使用默认的传输优化模式：

  - 对于屏幕共享视频流，SDK 默认的优化策略为清晰优先。
  - 对于其他视频流，SDK 默认的优化策略为兼顾清晰和流畅，弱网条件下，帧率和分辨率都会被调整。
- `"detail"`: 清晰优先。

  - SDK 会自动根据你的采集分辨率和帧率设定一个最小码率。即使遭遇网络波动，发送码率也不会低于这个值，从而确保清晰的视频画面。
  - 大部分情况下，SDK 不会降低发送分辨率，但是可能会降低帧率。
- `"motion"`: 自 4.21.0开始，SDK 默认开启流畅优先模式

  - SDK 不会启用最小码率策略。遭遇网络波动时，发送端会降低码率来确保接收端的视频画面不会出现中断和卡顿。
  - 大部分情况下，SDK 不会降低帧率，但是可能会降低发送分辨率。

<a id="width"></a>

<a id="optional-width"></a>

### width [#width]

<ApiSignature labels="Optional">

width: number|[ConstrainLong](/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/constrainlong)

</ApiSignature>

:::info[自从]
*4.17.1*

视频的分辨率宽。

支持传入 `number`，或一个约束对象，如 `{ max: 1280, min: 720 }`。

关于约束对象的详细说明可以参考 [ConstrainLong](/zh-CN/api-reference/rtc/react-sdk/web-sdk/interfaces/constrainlong)。
:::
