【发布时间】:2014-09-16 08:02:01
【问题描述】:
即使在 DOM 中似乎没有插入音频元素,也会听到音频。
场景:
- 创建没有流的 PeerConnection
- 添加流但禁用将 MediaElements(音频、视频)添加到 DOM 的代码
问题:
- 流通过后,可以从耳机(或扬声器)听到音频。
应该发生什么:
- 由于我没有在 dom 上附加任何东西,我希望不会听到任何声音。
Code for replicating the scenario
// <body>
// <script src="https://cdn.webrtc-experiment.com/RTCMultiConnection.js"></script>
// <button id="start">Start!</button>
// </body>
$('#start').click(function() {
var NO_MEDIA_SESSION = {video: false, audio: false, oneway: true};
var caller = new RTCMultiConnection('lets-try');
caller.session = NO_MEDIA_SESSION;
caller.dontAttachStream = true;
caller.onstream = function() { console.log("Got stream but not attaching") };
var receiver = new RTCMultiConnection('lets-try');
receiver.session = NO_MEDIA_SESSION;
receiver.dontAttachStream = true;
receiver.onstream = function() { console.log("Got stream but not attaching") };
caller.open();
receiver.connect();
receiver.onconnected = function() {
console.log("Connected!");
caller.addStream({audio: true});
}
});
我很感兴趣如何在没有 audio DOM 元素的情况下听到 MediaStream? 如果有任何 RTCMultiConnection 专家回答,那么也许会指出我如何避免音频流被听到? (我想自己获取流并稍后附加)。
【问题讨论】: