基于Web的Sora 2 视频生成与混编工作台 Sora 2 PlaygroundSora 2 Playground 是一个基于Web的为OpenAI的Sora 2模型设计的交互平台,用户能够通过文本提示生成全新视频,或利用视频混音模式对现有视频进行定向修改。Sora 2 Playground 提供了对Sora 2 API所有关键参数的全面UI控制,支持多视频的并发生成队列,集成了详细的历史记录和成本追踪功能,用户可以查看每次生成请求的参数、美元成本细目、实时进度,能方便地管理和删除视频。Sora 2 Playground 具备视频输出面板、快速发送至混音功能和视频下载能力,在存储上能更灵活的支持服务器文件系统或浏览器IndexedDB模式,适合Vercel等无服务器环境部署,使用前需要OpenAI Sora 2 API的访问权限。
视频生成:输入文本提示词,就能调用Sora 2模型生成新视频。提示词建议包含镜头类型、主体、动作、场景和光线等信息,比如“开阔镜头下,孩子在长满青草的公园放红色风筝,黄金时刻的阳光,相机缓慢向上平移”,能让生成效果更符合预期。
视频再创作:上传图片或视频作为第一帧参考,结合新提示词对已有视频进行针对性修改。需要注意的是,上传文件需匹配选定分辨率,最大文件大小为100MB,且并非所有机构都支持视频输入作为参考。
• 支持直接在界面上选择模型(如Sora 2)、调整分辨率(如竖屏720x1280)和视频时长(4秒、8秒、12秒可选),所有Sora 2 API支持的相关参数都能通过UI直接操作。
• 可同时排队多个视频生成任务,其他任务处理过程中,还能继续创建新的视频生成需求,无需等待单个任务完成。
• 能查看所有视频生成和再创作的完整历史,包括每个任务使用的参数(模型、分辨率、时长、提示词),还能看到每个视频的详细成本 breakdown(以美元计算),点击视频旁的金额就能查看,同时会显示历史API总花费。
• 实时追踪当前正在生成的视频进度,点击任意提示词可复制完整文本,也能删除历史中的单个视频(会同时从本地存储和OpenAI服务器中移除)。失败的请求会单独记录并附带错误信息,不纳入成本计算。
• 生成的视频会在专门的输出面板展示,面板自带播放器控制、进度条和播放控制功能,支持直接下载视频到本地设备。
• 提供两种存储模式,可通过NEXT_PUBLIC_FILE_STORAGE_MODE配置:
文件系统(默认):本地部署时,视频会保存到服务器的./generated-videos目录,包含视频文件、缩略图和雪碧图。
索引数据库(IndexedDB):视频直接存储在浏览器的IndexedDB中,适合Vercel等无服务器部署场景。
• 视频历史元数据始终保存在浏览器本地存储中,活跃任务的ID会持久化,页面刷新后能自动恢复轮询进度。
Sora 2 Playground支持两种部署架构,可根据使用场景选择:
| 功能 | 后端模式 | 前端模式 |
|---|---|---|
| OpenAI API密钥位置 | 服务器端(单个共享密钥) | 客户端(用户自行提供密钥) |
| 密码保护 | 支持,通过APP_PASSWORD配置 |
不支持 |
| 存储方式 | 本地磁盘或IndexedDB | 仅支持IndexedDB |
| 构建输出 | 动态输出(包含API路由) | 静态HTML/CSS/JS导出 |
| 用户设置 | 无需用户操作(管理员统一配置) | 每个用户需自行提供API密钥 |
后端模式为默认模式,适合个人使用或团队部署,密钥由管理者控制;前端模式会生成纯浏览器运行的静态网站,适合公开部署,每个用户使用自己的API密钥。
需安装Node.js(20版本及以上),以及npm、yarn、pnpm或bun中的任意一个包管理工具。
1、配置API密钥
• 需先获取OpenAI API密钥,且所在的OpenAI组织需拥有Sora 2 API访问权限(目前处于有限测试阶段,可参考OpenAI文档了解可用性)。
• 将项目中的.env.local.example文件重命名为.env.local,或手动新建该文件,在文件中添加OPENAI_API_KEY=your_openai_api_key_here(替换为实际API密钥)。注意保护API密钥,.env.local文件已默认加入.gitignore,避免意外提交泄露。
2、可选环境变量配置
• 密码保护:添加APP_PASSWORD=your_password_here到.env.local,设置后页面加载时会提示输入密码,防止未授权访问。
• 前端仅模式(静态):添加NEXT_PUBLIC_ENABLE_FRONTEND_MODE=true,界面会切换为前端模式并自动使用IndexedDB存储视频,且不启用密码验证(客户端无法安全 enforce 密码)。之后运行pnpm build:frontend可生成out/目录,该目录可部署到GitHub Pages、Netlify、S3等平台。
• 文件存储模式:添加NEXT_PUBLIC_FILE_STORAGE_MODE=fs(文件系统)或indexeddb(浏览器存储)。本地部署默认用文件系统,Vercel部署默认用IndexedDB,若在Vercel上显式设置为fs,会自动覆盖为indexeddb(因Vercel文件系统为只读/临时存储)。
• 自定义API端点:若需使用兼容OpenAI的API端点(如本地模型服务器或其他提供商),可在.env.local中添加OPENAI_API_BASE_URL=your_compatible_api_endpoint_here,未设置则默认使用标准OpenAI API端点。
3、安装依赖
• 在终端进入项目目录,运行npm install(或yarn install、pnpm install、bun install)安装所需依赖包。
4、启动开发服务器
• 运行npm run dev(或yarn dev、pnpm dev、bun dev)启动Next.js开发服务器。
5、打开工具
• 在浏览器中访问http://localhost:3000,即可使用Sora 2 Playground。
1、后端模式(服务器端API密钥)
• 部署后,API密钥存储在服务器端,可通过密码(APP_PASSWORD)控制访问。需注意,Vercel文件系统为临时存储,视频仍会保存到浏览器存储中。
• 部署时需设置环境变量:OPENAI_API_KEY(必填,用于所有视频操作)、APP_PASSWORD(设置时必填,界面会提示输入密码,后续可在Vercel设置中移除以开放访问)。
2、前端仅模式(静态,用户提供密钥)
• 部署后工具完全在浏览器中运行,访客需自行在浏览器中输入API密钥,所有数据存储在IndexedDB,构建产物为静态资源。
• 部署时需设置NEXT_PUBLIC_ENABLE_FRONTEND_MODE=true,可选设置NEXT_PUBLIC_FILE_STORAGE_MODE=indexeddb(前端模式会自动强制使用IndexedDB,可不额外设置)。
• Vercel会将仓库克隆到你的GitHub账户(默认创建私有仓库),从master分支部署到生产URL,部署过程中会提示输入环境变量,设置完成后部署立即生效。
• 若想让部署受Vercel团队认证保护而非公开访问,可创建新分支(如production),在Vercel项目设置的“Git-生产分支”中,将默认的master改为production,这样master分支部署为预览版(需Vercel登录访问),production分支部署为公开生产版。
• 部署后,可在Vercel项目设置中随时添加、修改或删除环境变量,也能在“域名”选项中添加自定义域名。
AI学术写作助手:学术论文润色和语言优化工具
Gemini对话与提示管理扩展工具 Gemini Voyager
AI驱动的股票研究平台 Multi-Agent Investment Research Platform
AI驱动的加密货币自动化交易系统 open-nof1.ai
基于Next.js、AI SDK和Workflow DevKit构建的线索鉴定与人工审核代理工具 Lead Agent
XiaomiMiMo/MiMo-Audio-7B-Instruct模型微调工具MiMo-Audio-Training
基于DeepSeek-OCR模型的文档解析工具 DeepSeek-OCR Studio
AI-Trader:让多个AI模型在纳斯达克100股票市场中进行完全自主的零人工干预的竞争性交易
辅助软件开发任务和终端操作的命令行代理工具 Kimi CLI
AI 编码代理工具 deer-code,帮助开发者学习和构建智能的编码助手