rtc_local_view: SurfaceView
SurfaceView 类,用于渲染本地视频。由 rtc_render_view: RtcSurfaceView 类扩展而来。
class SurfaceView extends RtcSurfaceView {
const SurfaceView({
Key? key,
String? channelId,
renderMode = VideoRenderMode.Hidden,
mirrorMode = VideoMirrorMode.Auto,
zOrderOnTop = false,
zOrderMediaOverlay = false,
PlatformViewCreatedCallback? onPlatformViewCreated,
Set<Factory<OneSequenceGestureRecognizer>>? gestureRecognizers,
}) : super(
key: key,
uid: 0,
channelId: channelId,
renderMode: renderMode,
mirrorMode: mirrorMode,
zOrderOnTop: zOrderOnTop,
zOrderMediaOverlay: zOrderMediaOverlay,
onPlatformViewCreated: onPlatformViewCreated,
gestureRecognizers: gestureRecognizers,
);
const SurfaceView.screenShare({
Key? key,
renderMode = VideoRenderMode.Hidden,
mirrorMode = VideoMirrorMode.Disabled,
PlatformViewCreatedCallback? onPlatformViewCreated,
Set<Factory<OneSequenceGestureRecognizer>>? gestureRecognizers,
}) : super(
key: key,
uid: 0,
renderMode: renderMode,
mirrorMode: mirrorMode,
onPlatformViewCreated: onPlatformViewCreated,
gestureRecognizers: gestureRecognizers,
subProcess: true,
);
} 该类在不同平台上对应的类如下:
- Android: SurfaceView。
- iOS: UIView。
- 该类不适用于 macOS 或 Windows 平台。
参数
- key
- Widget、Element 和 SemanticsNode 的标识符。详见 Flutter 官方文档关于 key 对象的描述。
- channelId
-
频道名。该参数标识用户进行实时音视频互动的频道。App ID 一致的前提下,填入相同频道名的用户会进入同一个频道进行音视频互动。该参数为长度在 64 字节以内的字符串。以下为支持的字符集范围(共 89 个字符):
- 26 个小写英文字母 a~z
- 26 个大写英文字母 A~Z
- 10 个数字 0~9
- 空格
- "!"、"#"、"$"、"%"、"&"、"("、")"、"+"、"-"、":"、";"、"<"、"="、"."、">"、"?"、"@"、"["、"]"、"^"、"_"、"{"、"}"、"|"、"~"、","
- renderMode
- 视频渲染模式,详见 VideoRenderMode。
- mirrorMode
- 视频镜像模式,详见 VideoMirrorMode。
- zOrderOnTop
- 是否将当前画面放置在当前窗口的另一个图层上。
注: 该参数仅适用于 Android。
- zOrderMediaOverlay
- 是否将 SurfaceView 视图的表层置于窗口中另一个 SurfaceView 的上层 (但依然位于窗口的下层)。
注: 该参数仅适用于 Android。
- onPlatformViewCreated
- 平台视图被创建时会触发该事件。
- gestureRecognizers
- Gesture 对象。
- subProcess
- 是否创建一个子进程。
rtc_local_view: SurfaceView
用于渲染本地视频的 SurfaceView 类的构造方法。
const SurfaceView({
Key? key,
String? channelId,
renderMode = VideoRenderMode.Hidden,
mirrorMode = VideoMirrorMode.Auto,
zOrderOnTop = false,
zOrderMediaOverlay = false,
PlatformViewCreatedCallback? onPlatformViewCreated,
Set<Factory<OneSequenceGestureRecognizer>>? gestureRecognizers,
}) : super(
key: key,
uid: 0,
channelId: channelId,
renderMode: renderMode,
mirrorMode: mirrorMode,
zOrderOnTop: zOrderOnTop,
zOrderMediaOverlay: zOrderMediaOverlay,
onPlatformViewCreated: onPlatformViewCreated,
gestureRecognizers: gestureRecognizers,
); 参数
- key
- Widget、Element 和 SemanticsNode 的标识符。详见 Flutter 官方文档关于 key 对象的描述。
- uid
- 用户 ID。
- channelId
-
频道名。该参数标识用户进行实时音视频互动的频道。App ID 一致的前提下,填入相同频道名的用户会进入同一个频道进行音视频互动。该参数为长度在 64 字节以内的字符串。以下为支持的字符集范围(共 89 个字符):
- 26 个小写英文字母 a~z
- 26 个大写英文字母 A~Z
- 10 个数字 0~9
- 空格
- "!"、"#"、"$"、"%"、"&"、"("、")"、"+"、"-"、":"、";"、"<"、"="、"."、">"、"?"、"@"、"["、"]"、"^"、"_"、"{"、"}"、"|"、"~"、","
- renderMode
- 视频渲染模式,详见 VideoRenderMode。
- mirrorMode
- 视频镜像模式,详见 VideoMirrorMode。
- zOrderOnTop
- 是否将当前画面放置在当前窗口的另一个图层上。
注: 该参数仅适用于 Android。
- zOrderMediaOverlay
- 是否将 SurfaceView 视图的表层置于窗口中另一个 SurfaceView 的上层 (但依然位于窗口的下层)。
注: 该参数仅适用于 Android。
- onPlatformViewCreated
- 平台视图被创建时会触发该事件。
- gestureRecognizers
- Gesture 对象。
- subProcess
- 是否创建一个子进程。
rtc_local_view: SurfaceView.screenShare
用于渲染本地屏幕共享视频的 SurfaceView 类的构造方法。
const SurfaceView.screenShare({
Key? key,
renderMode = VideoRenderMode.Hidden,
mirrorMode = VideoMirrorMode.Disabled,
PlatformViewCreatedCallback? onPlatformViewCreated,
Set<Factory<OneSequenceGestureRecognizer>>? gestureRecognizers,
}) : super(
key: key,
uid: 0,
renderMode: renderMode,
mirrorMode: mirrorMode,
onPlatformViewCreated: onPlatformViewCreated,
gestureRecognizers: gestureRecognizers,
subProcess: true,
); 参数
- key
- Widget、Element 和 SemanticsNode 的标识符。详见 Flutter 官方文档关于 key 对象的描述。
- renderMode
- 视频渲染模式,详见 VideoRenderMode。
- mirrorMode
- 视频镜像模式,详见 VideoMirrorMode。
- onPlatformViewCreated
- 平台视图被创建时会触发该事件。
- gestureRecognizers
- Gesture 对象。
