RTSP播放器EasyPlayer.js关于报错play() failed because the user didn't interact with the document first的问题
随着流媒体技术的迅速发展,H5流媒体播放器已成为现代网络视频播放的重要工具。其中,EasyPlayer.js作为一款功能强大的H5播放器,凭借其全面的协议支持、多种解码方式以及跨平台兼容性,赢得了广泛的关注和应用。
用户希望打开页面的时候就直接自动播放带音频视频(单屏或者多屏),但是浏览器的自动播放策略是,必须是用户手动触发了事件之后,才能自动播放。
有时播放器会出现DOMException: play() failed because the user didn’t interact with the document first. https://goo.gl/xX8pDD的错误。
1、问题说明
手动刷新页面也会出现这个异常,这个报错是浏览器的规范,浏览器规定,必须要用户主动触发才能播放带音频的视频。
优先使用canvas进行渲染或者静音状态,这样就可以规避掉浏览器的规范了。
注意:mse、wcs是硬解码,wasm是软解码。
2、解决方案
-
静音状态下播放,添加一个交互事件,让用户手动触发下,再去播放视频。
-
浏览器允许点击链接跳转打开页面允许自动播放并支持声音。
EasyPlayer播放器属于一款高效、精炼、稳定且免费的流媒体播放器,可支持多种流媒体协议播放,无须安装任何插件,起播快、延迟低、兼容性强,使用非常便捷。
EasyPlayer.js无插件H5播放器不仅支持H.264与H.265视频编码格式,也能支持WebSocket-FLV、HTTP-FLV、HLS(m3u8)、WebRTC、ws-fmp4、http-fmp4等格式的视频流,并具备直播、点播、录像、快照截图、MP4播放、多屏播放、倍数播放、全屏播放等功能特性。
随着5G技术的普及和互联网技术的进一步发展,H5流媒体播放器将迎来更加广阔的发展前景。一方面,5G技术将实现更高的传输速度和更低的延迟,为用户提供更加流畅、稳定的播放体验。另一方面,随着互动功能的不断丰富和完善,H5流媒体播放器将更好地满足用户的个性化需求。