Open source video editing web application
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 |
Omniclip 2.0 正在开发中!
我们正在积极开发 Omniclip 的下一版本,以将它提升到一个新的高度。
想要帮助塑造它吗?加入我们的 Discord 讨论吧。
![]()
开源视频编辑网页应用
简介
Omniclip 是一款完全在浏览器中运行的开源视频编辑器。它无需账户,所有数据都存储在您的设备上,且绝不会上传您的文件。
它旨在保护隐私、提升速度和灵活性——在不依赖云服务或订阅的情况下,为您提供完整的编辑控制权。您可以直接使用它,或者将其组件嵌入到您自己的网页项目中。
Omniclip 利用现代浏览器 API,如 WebCodecs,实现高效的浏览器内渲染。
⚠️ 因此,它可能无法在支持这些新技术的旧版浏览器或设备上正常运行。
功能
Omniclip 是一个持续维护的项目,具有不断发展的新功能。
- 裁剪
- 分割
- 支持 - 文本、音频、视频(mp4、mov 等多种格式)和图片
- 预览中编辑片段 - 旋转、调整大小、文本样式等
- 撤销/重做
- 以不同分辨率渲染,最高可达 4k。
- 项目管理器 - 可选择您保存的项目,而不仅仅是一个
- 转场 - 在视频片段之间应用转场,以实现平滑的视觉效果
- 效果 - 滤镜
- 选择多种时间基准,范围从 10-120 fps
- 协作(WebRTC)
待添加功能
- 音频编辑 - 调整音量等
- 语音识别
- 关键帧
使用方法
在您的应用中使用 Omniclip 组件:
- 安装 Omniclip:
npm install omniclip
- 导入组件并将其注册到 DOM 中
import {getComponents, registerElements} from 'omniclip'
registerElements(getComponents())
- 仅需放入您希望使用的组件,或为获得完整体验而放入所有组件:
<omni-text></omni-text>
<omni-media></omni-media>
<omni-timeline></omni-timeline>
使用 Omniclip 工具:
不久的将来,Omniclip 将由 Omni Tools 提供支持 —— 一个用于从代码创建时间轴、自动化渲染以及与 AI 或脚本工作流集成的程序化引擎。
⚠️ 注意: Omni Tools 目前仍处于早期开发阶段,但它正逐渐成为构建无 UI 视频的强大基础。
贡献
为本项目做出贡献是至关重要的,所以请随意加入并共同构建这个出色的视频编辑器,只需选择一个您感兴趣的问题去处理,完成后提交一个 pull request。 为方便沟通,最好加入我的 Discord 服务器:https://discord.gg/Nr8t9s5wSM
开发:
要开始贡献,您需要先完成以下步骤:
- 克隆仓库:
git clone git@github.com:omni-media/omniclip.git或创建分支 - 安装依赖:
npm install - 构建项目:
npm run build - 开始开发!:
npm start
项目架构
本项目利用以下关键组件来管理应用状态:
- 状态
- 动作
- 控制器
- 组件/视图
架构遵循单向数据流模型,数据从动作到状态,再从状态到组件的单向流动。
技术栈
- Typescript
- @benev/slate
联系/赞助
如果您愿意通过赞助此项目来提供帮助,或有其他问题:
- discord: zenkyu
- gmail: przemekgg2002@gmail.com
许可
本项目根据 MIT 许可证授权 —— 查看 LICENSE 文件获取详细信息。