2014-08-28 53 views
3

我试图同时显示来自同一个视频摄像机的多个流,但具有不同的分辨率质量。我调用getUserMedia()两次,但使用不同的分辨率约束(hd和vga)。问题是,一旦流首次被创建,新的流不能被创建,直到第一个被销毁/停止。第二个getUserMedia()应该使用vga设置,但它使用第一个getUserMedia()中的hd设置。WebRTC联播/多流

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

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

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

+0

这很有趣,因为'getUserMedia'应该能够共享源... – 2014-08-28 13:34:49

+0

是的。我也读过有关getUserMedia()返回音频和视频轨道(MediaTrack)的消息,但我还没有发现任何具有多个视频轨道的实现。关于如何实施的任何想法? – Bade 2014-08-28 17:57:04

+0

Chrome和Firefox都会发生这种情况吗? – 2014-08-28 18:27:42

回答

3

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