WebAssembly版FFmpeg浏览器端视频解码显示
web 前端用的webAssembly 版 ffmpeg,真的是个还不错的方案,尤其是要在浏览器里搞视频解码和播放的时候,不卡顿、不掉帧,挺流畅的。你只需要前端写点代码,视频解码直接在浏览器端跑,后端压力一下子小了多。
之前你用过ffmpeg + opencv
在桌面端做显示,但前端场景下,搞这些就显得有点重了。而用ffmpeg.wasm
的话,直接跑在浏览器上,啥插件都不用装,兼容性也还行,配合canvas
渲染,视频就能稳稳播出来。
要是你之前搞过Qt
、QML
、rtp
或Android
下的解码显示,那这几个资源链接可以参考下:比如rtp 实时传输视频流 ffmpeg 解码显示、Qt 加 FFMPEG 解码视频并显示这些。
使用的时候注意几点:第一,ffmpeg.wasm
启动的时候要等它初始化完成,别着急解码;第二,大文件上它还不算快,适合中小型流;第三,别忘了配worker
,这样不卡主线程。
如果你想做个轻量的在线视频播放器,或者搞个视频的小工具,这套方案还蛮适合。前端写起来也没啥门槛,用熟了canvas
和事件绑定就行。
更多思路可以看看这些文章:FFmpeg 解码 OpenCV 显示、在 Qml 中显示 FFmpeg 解码视频、ffmpeg 解码视频文件 opencv 显示。看完你就知道,前端也能玩出花来~
如果你也在琢磨如何在浏览器里搞视频解码,不妨试试ffmpeg.wasm
,体验一下纯前端的快感。
下载地址
用户评论