RTCVideoSourceStats
基线 2023 *
新推出
RTCVideoSourceStats 字典是 WebRTC API 的一部分,它提供了有关附加到一个或多个发送者 (RTCRtpSender) 的视频轨道 (MediaStreamTrack) 的统计信息。
这些统计信息可以通过迭代 RTCRtpSender.getStats() 或 RTCPeerConnection.getStats() 返回的 RTCStatsReport 来获得,直到找到一个 type 为 media-source 且 kind 为 video 的报告。
注意: 对于远程源(正在接收)的视频信息,请参阅 RTCInboundRtpStreamStats。
实例属性
frames可选-
一个正数,表示此视频源产生的总帧数。
framesPerSecond可选-
一个正数,表示此视频源在过去一秒钟内产生的帧数。此属性在统计对象存在的第一秒内未定义。
height可选-
一个数字,表示此源产生的最后一帧的高度(以像素为单位)。此属性在生成第一帧之前未在此统计对象上定义。
width可选-
一个数字,表示此源产生的最新一帧的宽度(以像素为单位)。此属性在生成第一帧之前未在此统计对象上定义。
通用的 media-source 属性
以下属性存在于 RTCVideoSourceStats 和 RTCAudioSourceStats 中
trackIdentifier-
一个字符串,包含与视频源关联的
MediaStreamTrack的id值。 kind-
一个字符串,指示此对象是否代表视频源或媒体源的统计信息。对于
RTCVideoSourceStats,它始终是video。
常见实例属性
以下属性是所有统计对象共有的。
id-
一个字符串,唯一标识正在监控以生成这组统计信息的对象。
时间戳-
一个
DOMHighResTimeStamp对象,表示此统计信息对象样本的采集时间。 type-
一个值为
"media-source"的字符串,表示该对象是RTCAudioSourceStats或RTCVideoSourceStats的实例。
描述
该接口提供了附加到一个或多个发送者的视频媒体源的统计信息。信息包括相关的 MediaStreamTrack 的标识符,以及源发送的最后一帧的高度和宽度、源发送的帧数以及帧率。
示例
此示例展示了如何迭代 RTCRtpSender.getStats() 返回的统计对象,以获取特定于视频的媒体源统计信息。
// where sender is an RTCRtpSender
const stats = await sender.getStats();
let videoSourceStats = null;
stats.forEach((report) => {
if (report.type === "media-source" && report.kind==="video") {
videoSourceStats = report;
break;
}
});
// videoSourceStats will be null if the report did not include video source stats
const frames = videoSourceStats?.frames;
const fps = videoSourceStats?.framesPerSecond;
const width = videoSourceStats?.width;
const height = videoSourceStats?.height;
规范
| 规范 |
|---|
| WebRTC 统计 API 的标识符 # dom-rtcvideosourcestats |
浏览器兼容性
加载中…