gpt4 book ai didi

javascript - 检测视频/音频是否在 html5 video 标签中停止

转载 作者:行者123 更新时间:2023-11-30 12:51:42 26 4
gpt4 key购买 nike

使用

WebRTC、HTML5、JavaScript

描述

例如,用户 User1User2 之间有一个 WebRTC 视频通话。想象一下 User2 按下某个静音按钮(它执行类似于 localStream.getAudioTracks()[0].enabled=false 的操作)。在 User1 的客户端,现在没有音频,但视频仍在播放(这很好)。

问题

我想检测 User1 是否不再从 User1 接收音频或视频没有任何额外的信号。我看不到任何 API 来检测音频或/和视频轨道的 getBytesLoaded 之类的东西来检测丢失并显示适当的消息。我什至找不到检测音频或/和视频是否停止的功能。

注意:我认为与停止/暂停事件无关

最佳答案

使用 WebRTC getStats API ,您可以定期调用 peerConnection 实例中的 getStats 方法,并传递一个回调函数,该回调函数将与 stats 对象一起调用。

在该对象中,您可以找到有关当前 audioOutputLevel 的统计信息,如果您观察发送方将麦克风静音(禁用 audioTrack)时返回的值,您会看到较低的值。

使用数据包数或字节数不会提供非常有用的信息,因为 WebRTC 实现了 Comfort Noise ,因此您会看到许多数据包到达。

总而言之,在不发送任何信号信息的情况下,唯一的方法是使用统计信息,您将不得不挖掘并找到一种有效的模式,因为您不会发现任何状态变化。

关于javascript - 检测视频/音频是否在 html5 video 标签中停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20749689/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com