vinson1105 2018-12-17 07:39 采纳率: 0%
浏览 423

请问如果在ts流数据中获取分辨率

如题, 现在需要在ts流中获取一帧帧数据提取, 进行处理之后再解码显示, 帧数据基本可以提取出来, 但是分辨率如何获取???

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-07 11:04
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    要从TS流中获取分辨率,你需要使用WebRTC的RTCRtpVideoFormat接口来查看当前正在传输的数据格式。这个接口允许你根据特定的视频格式(例如:'h264'、'vp8'等)来指定帧的分辨率。

    以下是一个简单的示例:

    const videoTracks = stream.getVideoTracks()[0];
    if (videoTracks) {
        const format = videoTracks.getFormat();
        if (format) {
            console.log('Resolution:', format.width + 'x' + format.height);
        }
    }
    

    在这个例子中,我们首先获取了视频流的所有视频轨道,然后检查每个轨道是否有格式信息。如果有格式信息,我们就打印出分辨率。

    注意,这只是一个基础的例子,实际的实现可能需要更多的错误处理和逻辑。例如,如果你在一个复杂的应用中使用WebRTC,你可能还需要考虑如何处理不同的视频编码格式,并且如何确保你的应用程序能够正确地解析这些格式。

    此外,你也可能想要考虑到视频编码器的输出格式可能会有所不同,比如一些视频编码器会提供额外的信息(如时间戳或帧率),所以你应该尝试使用RTCRtpPacket对象中的packetType属性来获取这些额外的信息。

    最后,你也应该考虑如何处理不同设备上可能出现的不同分辨率。在大多数现代浏览器中,你可以通过navigator.mediaDevices.getUserMedia()方法来访问用户的摄像头和麦克风权限,并设置一个合适的分辨率。然而,这仍然取决于具体的浏览器支持情况和用户偏好。

    评论

报告相同问题?

悬赏问题

  • ¥15 请问GPT语言模型怎么训练?
  • ¥15 已知平面坐标系(非直角坐标系)内三个点的坐标,反求两坐标轴的夹角
  • ¥15 webots有问题,无响应
  • ¥15 数据量少可以用MK趋势分析吗
  • ¥15 使用VH6501干扰RTR位,CANoe上显示的错误帧不足32个就进入bus off快慢恢复,为什么?
  • ¥15 大智慧怎么编写一个选股程序
  • ¥100 python 调用 cgps 命令获取 实时位置信息
  • ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
  • ¥15 C语言使用vscode编码错误
  • ¥15 用KSV5转成本时,如何不生成那笔中间凭证