AgoraPipOptions
声网画中画模式的配置选项。
Dart
class AgoraPipOptions {
final bool? autoEnterEnabled;
final int? aspectRatioX;
final int? aspectRatioY;
final int? sourceRectHintLeft;
final int? sourceRectHintTop;
final int? sourceRectHintRight;
final int? sourceRectHintBottom;
final bool? seamlessResizeEnabled;
final bool? useExternalStateMonitor;
final int? externalStateMonitorInterval;
final int? sourceContentView;
int? contentView;
final List<AgoraPipVideoStream>? videoStreams;
final AgoraPipContentViewLayout? contentViewLayout;
final int? preferredContentWidth;
final int? preferredContentHeight;
final int? controlStyle;
}
自从
自 v4.6.2 版本新增。
该类提供平台特定的选项来配置 Android 和 iOS 平台的画中画行为。
autoEnterEnabled
是否自动进入画中画模式。 仅适用于 Android 平台。
aspectRatioX
画中画窗口的水平宽高比。 仅适用于 Android 平台。
aspectRatioY
画中画窗口的垂直宽高比。 仅适用于 Android 平台。
sourceRectHintLeft
源矩形提示的左坐标。 用于指定画中画窗口的初始位置。 仅适用于 Android 平台。
sourceRectHintTop
源矩形提示的上坐标。 用于指定画中画窗口的初始位置。 仅适用于 Android 平台。
sourceRectHintRight
源矩形提示的右坐标。 用于指定画中画窗口的初始位置。 仅适用于 Android 平台。
sourceRectHintBottom
源矩形提示的下坐标。 用于指定画中画窗口的初始位置。 仅适用于 Android 平台。
seamlessResizeEnabled
是否启用画中画窗口的无缝调整大小。 启用后,画中画窗口将平滑调整大小。 默认为
false。 仅适用于 Android 平台。useExternalStateMonitor
是否使用外部状态监控。 启用后,创建专用线程来监控画中画窗口状态。使用 externalStateMonitorInterval 配置监控频率。 默认为
false。 仅适用于 Android 平台。externalStateMonitorInterval
外部状态监控的间隔,单位为毫秒。 仅在 useExternalStateMonitor 为
true 时生效。 默认为 100ms。 仅适用于 Android 平台。sourceContentView
源内容视图标识符。 设置为 0 以使用根视图作为源。 仅适用于 iOS 平台。
contentView
用于视频渲染的内容视图标识符。 设置为 0 以让 SDK 管理视图。当设置为 0 时,必须通过 videoStreams 提供视频源。 仅适用于 iOS 平台。
videoStreams
视频转码配置。 仅在 contentView 设置为 0 时生效。当用户让 SDK 管理视图时,所有视频流将放置在画中画窗口的根视图中。 仅适用于 iOS 平台。
contentViewLayout
画中画视频流的布局配置。 仅在 contentView 设置为 0 时生效。 仅适用于 iOS 平台。
preferredContentWidth
画中画内容的首选宽度。 仅适用于 iOS 平台。
preferredContentHeight
画中画内容的首选高度。 仅适用于 iOS 平台。
controlStyle
画中画窗口的控制样式。 可用样式:
- 0:显示所有系统控件(默认)
- 1:隐藏前进和后退按钮
- 2:隐藏播放/暂停按钮和进度条(推荐)
- 3:隐藏所有系统控件,包括关闭和恢复按钮