privaloops /
hevc.js
hevc.js 是一个完全从 ITU-T H.265 规范(716 页)从零写起的 HEVC 解码器, C++17 实现,编译为 WebAssembly 后只有 236KB(约为 libde265 WASM 版的 1/8), MIT 协议,零依赖。 它解决的问题:Windows 上的 Chrome 没有 HEVC 软解回退(旧显卡直接放不出来), Edge/Firefox 需要微软商店的付费扩展,Linux 看运气。hevc.js 通过…
privaloops /
hevc.js 是一个完全从 ITU-T H.265 规范(716 页)从零写起的 HEVC 解码器, C++17 实现,编译为 WebAssembly 后只有 236KB(约为 libde265 WASM 版的 1/8), MIT 协议,零依赖。 它解决的问题:Windows 上的 Chrome 没有 HEVC 软解回退(旧显卡直接放不出来), Edge/Firefox 需要微软商店的付费扩展,Linux 看运气。hevc.js 通过…
hevc.js 是一个完全从 ITU-T H.265 规范(716 页)从零写起的 HEVC 解码器, C++17 实现,编译为 WebAssembly 后只有 236KB(约为 libde265 WASM 版的 1/8), MIT 协议,零依赖。 它解决的问题:Windows 上的 Chrome 没有 HEVC 软解回退(旧显卡直接放不出来), Edge/Firefox 需要微软商店的付费扩展,Linux 看运气。hevc.js 通过拦截 MediaSource,在 Web Worker 里把 HEVC 实时转码为 H.264(WASM 解码 + WebCodecs 编码),让 dash.js 和 Shaka Player 在这些环境下正常播放 HEVC 流 —— 播放器完全无感知,一行 attachHevcSupport() 接入,不需要 COOP/COEP 响应头。 几个数字:1080p 解码 60fps(单线程),转码约 2.5 倍实时,与 ffmpeg 在 128 个测试码流上逐像素比对验证。已被 dash.js 官方收录为 playback sample(5.2.1+)。 比较特别的一点:它带有"算力感知 ABR"—— 弱 CPU 上转码跟不上实时时, 自动通过播放器自己的公开配置降低码率档位,避免缓冲区被掏空(带宽型 ABR 看不到 CPU 瓶颈)。
讨论这个产品