我已经创建了基于webrtc的视频聊天起诉同行。
使用控件创建本地和远程视频元素:
本地:‘视频id= local_peer_id autoplay=’真“local_peer_id
remote:和‘视频id= remote_peer_id autoplay=’真“
现在在视频聊天中,如果本地用户静音,奥伊多远程用户什么都听不到,其工作也很完美。
问题是视频。如果本地用户暂停自己的视频,他可以看到视频暂停,但远程用户仍然可以看到他的视频直播。
另一方面,如果远程用户暂停他的视频,本地用户仍然可以看到他的视频直播。
任何一个人都会告诉我们需要做些什么来部署死亡。
“暂停”和“恢复”视频,对双方都是实时的吗?
发布于 2014-02-02 11:29:12
你需要知道HTML标签和WebRTC流之间的区别.
您可以让流运行,而不需要将它们附加到任何HTML标记上,并且媒体仍然可以由每个对等方发送和接收。因此,每个对等点都可以将流附加到音频/视频标记上,并且标记只能充当播放已经在运行的流的播放器。
因此,如果您静音HTML标记,您将只静音播放器,而不是流。如果您想要使任何东西对另一个对等点产生影响,您需要在流中或在对等连接中做一些事情。
特别是,要静音和恢复音频或视频,您需要在媒体流中切换媒体轨道。
// create a button to toggle video
var button = document.createElement("button");
button.appendChild(document.createTextNode("Toggle Hold"));
button.onclick = function(){
mediaStream.getVideoTracks()[0].enabled =
!(mediaStream.getVideoTracks()[0].enabled);
}若要暂停/恢复音频,请改用getAudioTracks()。
发布于 2014-08-13 23:43:07
打电话给mediaStream.stop()会让摄像机停下来
其中mediaStream是调用getUserMedia时得到的流
这是一个工作的示例
发布于 2016-05-27 10:20:07
mediaStream.getAudioTracks().stop();
mediaStream.getVideoTracks().stop();
希望这将适用于新的标准。它在我的应用程序中运行得很好。
https://stackoverflow.com/questions/21497566
复制相似问题