【问题标题】:WebRTC Simulcast/MultistreamWebRTC 联播/多流
【发布时间】:2014-08-28 13:03:30
【问题描述】:

我正在尝试同时显示来自同一摄像头但分辨率质量不同的多个流。我调用 getUserMedia() 两次,但具有不同的分辨率限制(hd 和 vga)。问题是,一旦第一次创建流,在第一个流被销毁/停止之前无法创建新流。第二个 getUserMedia() 应该使用 vga 设置,但它使用第一个 getUserMedia() 的 hd 设置。

function getMedia(HDconstraints){
navigator.getUserMedia(HDconstraints, successCallback, errorCallback);
}

function getMedia2(VGAconstraints){
navigator.getUserMedia(VGAconstraints, successCallback2, errorCallback);
}

successCallback2 正在使用 HDconstraints,除非我在调用 getMedia2() 之前停止第一个流。

【问题讨论】:

  • 这很有趣,因为getUserMedia 应该可以共享资源...
  • 是的。我还阅读了有关 getUserMedia() 返回音频和视频轨道 (MediaTrack) 的信息,但我还没有找到任何具有多个视频轨道的实现。关于如何实施的任何想法?
  • Chrome 和 Firefox 都会出现这种情况吗?
  • 我已经解决了(如下所示),但它仅适用于 Chrome。我尝试使用 Firefox 和 Opera,但每个都有不同的问题。 Firefox 没有获得本地流,而 Opera 仅在两个流的高清分辨率下获得它。我想这需要一些时间来标准化。我应该发布另一个问题还是报告错误?感谢您的回复。
  • 我会在逻辑位置发布错误,因为 getUserMedia 应该能够共享资源。

标签: javascript webrtc


【解决方案1】:

回答我自己的问题:问题似乎是我采用标准分辨率(例如 1920x1080),但相机的比例为 1:1,35,导致放入固定尺寸视频标签时图像质量变形。只需将视频限制调整为 1:1,35 的比例(例如 1620x1200)。

【讨论】:

    猜你喜欢
    • 2013-08-21
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-23
    相关资源
    最近更新 更多