autocut-client
autocut-client copied to clipboard
考虑基于cpp实现addon给node调用实现autocut功能吗
目前whisper的cpp推理已经有了,我最近把vad的cpp推理也实现了,而且我觉得纯cpu运行whisper的时间也是能够接受的,所以有考虑直接基于cpp来实现autocut的功能给node调用实现client吗? 这样的效率应该也会更高并且可以完整打包,减少使用过程中去安装别的依赖。
@chenqianhe 很好的提议,如果能完成「基于cpp来实现autocut」的任务,那我觉得是没什么问题的。
客户端的功能和 autocut 是一致的,就是「生成字幕」「编辑字幕」「合成视频」,如果前两个都能够用 cpp 实现,那只要再把最后一个合成的任务解决就可以。不过我对于 cpp 和 ffmpeg 的开发都不是很熟悉,如果有人能够帮忙的话是最好的。
另外,我目前在考虑额外提供一个服务端程序,让不方便使用本机转录的同学可以用服务器来处理视频,应该会比使用本机更方便快速一些。
@chenqianhe 很好的提议,如果能完成「基于cpp来实现autocut」的任务,那我觉得是没什么问题的。
客户端的功能和 autocut 是一致的,就是「生成字幕」「编辑字幕」「合成视频」,如果前两个都能够用 cpp 实现,那只要再把最后一个合成的任务解决就可以。不过我对于 cpp 和 ffmpeg 的开发都不是很熟悉,如果有人能够帮忙的话是最好的。
另外,我目前在考虑额外提供一个服务端程序,让不方便使用本机转录的同学可以用服务器来处理视频,应该会比使用本机更方便快速一些。
cpp开发不是难题,主要是addon是基于node-gyp方案,这个编译cpp生成node接口我不太熟。
服务端感觉一是成本太高了,不管是gpu服务器还是cpu服务器;二是对用户来说数据安全不可控。不过要开发的话我可以帮忙一起,这个能搞定。
不过还是感觉优化客户端可能更合适,我这边测过一些large模型cpu跑四十多分钟的视频大概是1.2到1.5倍的耗时,这对于视频创作和编辑来说是完全可以接受的时长。
@zcf0508 新年快乐!祝新的一年不写 BUG!!! 顺带 VAD-addon 开发完成,预祝新的一年能做出做出更好的开源项目!
whisper 的 addon
https://github.com/ggerganov/whisper.cpp/pull/443
ffmpeg
https://github.com/ffmpegwasm/ffmpeg.wasm https://github.com/Kagami/ffmpeg.js
@chenqianhe 新年好,非常感谢你对这个项目的支持!
目前我在尝试使用 python 配合 webview 的方式来进行开发,这样后端可以直接使用 python 相关的库,避免需要将三方库打包成可执行文件或者需要预先编译为 addon 的问题。
不知道你对这个有什么看法,如果你也感兴趣的可以,可以看下这个项目。
https://github.com/zcf0508/clip-wizard
这个项目目前刚搭建好,还没有实际的功能,计划采用 CS 模式。程序启动时会运行一个后端服务,提供api接口和静态资源的服务,通过webview来显示页面。前端通过 http 调用服务端来处理相关内容,服务端直接使用 python 来编写。
这样如果后期考虑需要集成其它的 AI 模型,阻力应该会小很多。
确实 CS 的模式更好实现,可以试试看。而且 python 服务打包现在也不难实现了。
@zcf0508 相似的,我也思考了GUI的开发方式,计划用前后端分离的方式(例如sanic + vue.js)进行开发,
目前主要设想了三个页面:
- [ ] 选择视频页面
- [ ] 语音转字幕的等待页面
- [ ] 选取字幕页面
为了避免编译文件对git的污染,前端页面托管于GitHub Page
使用方式为 autocut --gui
- 启动后端,端口号为
PORT
- 提示用户访问 xxx.github.io/autocut?port=
PORT
(在访问时带上本地后端的端口号) - 前端与 localhost:
PORT
进行交互
期待能与你进行讨论😄
您的邮件已收到!谢谢。
您的邮件已收到!谢谢。