基于FFmpeg和WebAssembly实现前端视频剪辑

WebAssembly

简而言之,就是将软件编译为一个wasm文件和一个js加载文件,直接在浏览器端调用C/C++功能。

比如这个在线视频剪辑网站:

https://mastershot.app/projects/5892e619-2004-44e6-a11a-dbc5e2dbc490

可以看到,就是加载了这个wasm文件:

https://renderer.mastershot.app/ffmpeg-core.wasm

参考文章

(精)经典教程:

https://blog.csdn.net/xgangzai/article/details/109192744

教程,里面提到了web worker截屏:

https://www.sohu.com/a/457160078_495695

B站的视频剪辑:

https://member.bilibili.com/studio/bs-editor/PJT394774812779623112

一个实践的Demo:

https://dannadori.medium.com/screen-capture-on-your-browser-with-ffmpeg-wasm-b9ce333067aa

ffmpeg的github:

https://github.com/ffmpegwasm/ffmpeg.wasm

Linux下用ffmpeg和X11grab录屏:

https://www.cnblogs.com/-yan/p/4759965.html