EasyPlayer.js H5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、Mp3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方式,支持Windows、Linux、Android、iOS全平台终端的H5播放器,使用简单, 功能强大。
在使用EasyPlayer.js播放器进行视频流播放时,特别是在SpringBoot环境中部署静态资源时,我们可能会遇到一些特定的技术挑战。其中一个常见的问题是关于webcodecs硬解码H.265视频流时出现的“falling back to arraybuffer instantiation”错误。这个问题通常涉及到播放器与浏览器之间的交互,以及SpringBoot对静态资源的处理方式。本文将探讨这个问题的成因,并提供一些针对性的解决措施。
decoder-pro-simd.js:1 wasm streaming compile failed: CompileError: WebAssembly.instantiateStreaming(): section (code 1, “Type”) extends past end of the module (length 11493359, remaining bytes 2877270) @+8
decoder-pro-simd.js:1 falling back to ArrayBuffer instantiation
1、检查下是不是通过maven方式进行打包的。
maven进行打包的时候,使用maven进行资源过滤的时候,会把二进制文件破坏掉。导致内容变大。
2、解决方案
使用maven进行资源过滤的时候,只要过滤需要过滤的文件,一些二进制文件,比如https证书等,就不要参与资源过滤,否则打包后会破坏文件内容。
解决EasyPlayer.js播放器在SpringBoot部署的静态资源中遇到的“falling back to arraybuffer instantiation”错误,需要我们从多个角度进行排查和修复。这包括确保wasm文件的正确放置、调整SpringBoot的静态资源配置、以及可能的浏览器兼容性问题。
通过这些步骤,我们可以提高播放器的稳定性和兼容性,为用户提供更加流畅的视频播放体验。在处理这类问题时,持续关注社区的最佳实践和更新也是一个重要的环节,以确保我们的解决方案能够跟上技术的发展。