OffscreenSharedTexture 对象
textureInfo
对象 - 共享纹理信息。
widgetType
string - 纹理的 widget 类型。 可以是 popup
或 frame
。
pixelFormat
string - 纹理的像素格式。 可以是 rgba
或 bgra
。
codedSize
Size - 视频帧的完整尺寸。
visibleRect
Rectangle - [0, 0, codedSize.width(), codedSize.height()] 的子区域。 在 OSR 情况下,预计会是完整的区域。
contentRect
Rectangle - 捕获器希望填充的视频帧区域。 在 OSR 情况下,它与需要绘制的 dirtyRect
相同。
timestamp
number - 自捕获开始以来的时间(以微秒为单位)。
metadata
Object - 额外元数据。 有关详细信息,请参阅 src\media\base\video_frame_metadata.h 中的注释。
captureUpdateRect
Rectangle (可选) - 更新后的帧区域,可以视为 dirty
区域。
regionCaptureRect
Rectangle (可选) - 如果内部使用区域捕获,可能反映帧内容的原点。
sourceSize
Rectangle (可选) - 源帧的完整大小。
frameCount
number (可选) - 捕获帧的递增计数。 如果在连续接收到的两帧之间有丢帧,则可能包含间隙。
sharedTextureHandle
Buffer Windows macOS - 共享纹理的句柄。
planes
Object[] Linux - 共享纹理的每个平面信息。
stride
number - 通过内存映射访问缓冲区时使用的步长和偏移量(以字节为单位)。 每个平面对应一个条目。
offset
number - 通过内存映射访问缓冲区时使用的步长和偏移量(以字节为单位)。 每个平面对应一个条目。
size
number - 平面大小(以字节为单位)。 这是映射缓冲区所必需的。
fd
number - 底层内存对象的文件描述符 (通常是 dmabuf)。
modifier
string Linux - 修饰符从 GBM 库获取并传递给 EGL 驱动程序。
release
Function - 释放资源。 texture
不能直接传递给另一个进程,用户需要在主进程中维护纹理生命周期,但是将 textureInfo
传递给另一个进程是安全的。 同时只能存在有限数量的纹理,因此在你使用完纹理后尽快调用 texture.release()
非常重要。