需求描述: 1 视频处理库,可处理各种视频压缩,视频格式转换(此基础上 api 越丰富功能越多越好) 2 跨平台(最起码支持 win7 win10 macos ) 3 免费,最好开源,并且持续维护 ing 4 范 js 环境灵活集成(不需要单独处理平台差异或者二次编译),nodejs,web 环境,or webassembly 接可。
熟悉的朋友来推荐一下呢。
1
xiyuesaves 2021-07-02 16:21:35 +08:00
webassembly 的话 ffmpeg 啊
|
2
neoblackcap 2021-07-02 16:24:38 +08:00
视频转码用 FFmpeg 啊,没有另外的选择了。大家都在用,其他语言也是对它的封装
|
3
Loserzhu 2021-07-02 16:55:44 +08:00
npm 上有现成的,ffmpeg wasm 。
之前试着用了下。现有的包,体积大。。。 web 默认加载 core 部分。node 里面用就没啥限制了。他会根据环境加载不同的代码。 转换格式还是比较耗时。所以试着用 web worker,但是,web 环境他会创建一个 script 标签然后用 cdn 资源把其他部分加载进来。worker 里不能操作 dom,然后我就卡住了。。 |
5
7075 OP @xiyuesaves 嗯嗯,这玩意是否依赖大量平台相关的二进制代码?
|
6
yin1999 2021-07-03 09:34:50 +08:00
@Loserzhu 要操作 DOM 的话,只能把前端和 Worker 分离开,前端 JS 通过 Worker 的 postMessage 来传递数据,再用 onmessage 来接收处理结果
|
7
muzuiget 2021-07-04 05:08:38 +08:00
ffmpeg,很多所谓视频处理库,本质就是生成 ffmpeg 参数,然后调用 ffmpeg 命令而已,自己的常用的任务,自己写一下就行了。
|
8
7075 OP @muzuiget ffmpeg 不是很熟悉,是否依赖很多第三方二进制库,类似 graphmagick 得 delegators
|
9
muzuiget 2021-07-04 13:19:27 +08:00
ffmpeg 自己就是第一方。
|
10
Jinyao 2021-07-04 15:22:18 +08:00 via Android
ffmpeg+wasm
|
11
wdlth 2021-07-04 15:28:56 +08:00
ffmpeg.js 可以编码 webm 和 mp4,也就是 Webassembly 的 ffmpeg 。
音视频编解码涉及很多版权、专利,所以支持的格式估计不会多。 等以后 WebGPU 上线后可以调用 GPU 的话会更方便一些。 |