Issue metadata
Sign in to add a comment
|
video elements won't use different sinks when sources are from peerConnection
Reported by
je...@culturehub.org,
May 13 2016
|
||||||||||||||||||||||||
Issue description
UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36
Example URL:
Steps to reproduce the problem:
1. set the video elements to different sinkIds with navigator.mediaDevices.enumerateDevices()
2. generate a log of the different sinks: video.onclick = function () {console.log(video.id + " sink is " + video.sinkId)};
3. listen to sound from the sinks
What is the expected behavior?
different video elements send audio to different sinks
What went wrong?
video elements sourcing from different peers always send to the same sink, despite logging otherwise
Did this work before? No
Is it a problem with Flash or HTML5? HTML5
Does this work in other browsers? No This does not work in Firefox, but device enumeration is broken as well
Chrome version: 50.0.2661.102 Channel: stable
OS Version: OS X 10.9.5
Flash Version: Shockwave Flash 21.0 r0
,
May 14 2016
I have a simple example using peer.js and code from this sample: https://webrtc.github.io/samples/src/content/devices/multi/ Here's the example: https://104.131.32.15:8080/index.html The certificates are old, but it should work in Chrome. Open three windows, and from one of the peers call the two others. Logs from the element and sinkId will show in the console. Click on video element to log it's sinkId.
,
May 15 2016
Thank you for providing more feedback. Adding requester "spqchan@chromium.org" for another review and adding "Needs-Review" label for tracking. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 18 2016
,
May 23 2016
,
May 26 2016
guidou@ - is this a dupe of one of the bugs you recently fixed? jesse@ - Chrome 51 started rolling out to the stable channel earlier this week. Once your instance updates, can you try the same steps again?
,
May 26 2016
This is the same issue as https://bugs.chromium.org/p/webrtc/issues/detail?id=5525 Unfortunately, remote webrtc streams share the same audio renderer and that is why all audio is sent to the same sink. There is no short-term fix for this since supporting echo cancellation on multiple devices is currently not possible and is a long-term goal. However, it is possible to use different sinks by redirecting a clone of each audio stream to webaudio and from webaudio to another audio element, then applying setSinkId on those audio elements. The disadvantage is that there will be no echo cancellation. In https://bugs.chromium.org/p/webrtc/issues/detail?id=5525 there is a jsfiddle with a possible implementation of this hack.
,
May 27 2016
|
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by spqc...@chromium.org
, May 13 2016