# TxtToVideo **Repository Path**: MoSheng2020/TxtToVideo ## Basic Information - **Project Name**: TxtToVideo - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-25 - **Last Updated**: 2026-03-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # README 视频生成器 自动将软件项目的 README 文档转换为宣传视频的桌面应用程序。 ## 功能特点 - 📄 支持 Markdown、HTML、纯文本格式的 README 解析 - 🤖 集成多个国内 LLM 服务商(DeepSeek、Kimi、通义千问等) - 🎙️ 使用免费的 edge-tts 进行语音合成 - 🎬 自动生成竖屏(9:16)和横屏(16:9)视频 - 📝 精确字幕同步和高亮效果 - ✨ Ken Burns 效果和多种转场动画 - 🎵 背景音乐自动混合和音量闪避 - ⚙️ 完整的 API 配置界面和连接测试功能 ## 安装 1. 克隆仓库 ```bash git clone https://github.com/mosheng20205/TxtToVideo.git cd TxtToVideo ``` 2. 创建虚拟环境 ```bash python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate ``` 3. 安装依赖 ```bash pip install -r requirements.txt ``` ## 使用 ### 启动应用 方式 1 - 使用启动脚本: ```bash python run_app.py ``` 方式 2 - 直接运行: ```bash python main.py ``` 应用程序将在浏览器中自动打开 (http://localhost:7860) ### 使用流程 1. **配置 API** - 点击"⚙️ 设置"标签页 - 选择 LLM 服务商(推荐 DeepSeek) - 输入 API Key - 点击"测试连接"验证配置 - 点击"💾 保存设置" 2. **上传 README** - 在主界面上传 README 文件或直接粘贴文本 - 点击"解析 README" 3. **提取功能特点** - 点击"提取功能特点" - 勾选要包含在视频中的功能 4. **生成文案** - 调整目标时长(15-60秒) - 点击"生成文案" - 可以手动编辑文案或点击"重新生成" 5. **上传素材** - 上传图片或视频素材(支持多选) - 支持的格式: JPG, PNG, MP4, AVI, MOV 等 6. **配置参数** - 选择输出格式(竖屏/横屏/两者) - 选择音色和语速 - 可选:上传背景音乐 7. **生成视频** - 点击"🎬 生成视频" - 等待处理完成 - 预览和下载生成的视频 ### 注意事项 - 首次使用需要配置 LLM API Key - TTS 使用免费的 edge-tts,无需配置 - 建议上传 3-5 个素材以获得更好的视频效果 - 视频生成时间取决于素材数量和时长 ## 打包为 EXE 使用 PyInstaller 将项目打包为独立的 Windows 可执行文件,无需安装 Python 即可运行。 ### 环境要求 - Python 3.10+ - 已安装项目依赖:`pip install -r requirements.txt` - PyInstaller:`pip install pyinstaller` ### 打包步骤 **方式 1 - 使用打包脚本(推荐)** ```bash python build.py ``` 脚本会自动检查环境、清理旧构建、执行打包并验证输出。 **方式 2 - 直接使用 PyInstaller** ```bash pyinstaller build.spec --clean ``` ### 输出说明 - 打包完成后,可执行文件位于 `dist/README视频生成器.exe` - 文件大小约 110 MB(含 Gradio、edge-tts、MoviePy 等依赖) - 首次运行需在「设置」中配置 LLM API Key - 生成的视频和临时文件会保存在 exe 所在目录下的 `output/` 和 `temp/` 文件夹 ### 注意事项 - 打包前请关闭正在运行的 exe 进程,否则可能因文件占用导致打包失败 - 若系统未安装 FFmpeg,视频合成可能失败;可将 `ffmpeg.exe`、`ffprobe.exe` 放入项目根目录的 `bin/` 文件夹后重新打包 ## 开发 运行测试: ```bash pytest ``` 运行属性测试: ```bash pytest -m property ``` ## 项目结构 ``` ├── src/ # 源代码 │ ├── config/ # 配置管理 │ ├── parsers/ # 文档解析 │ ├── ai/ # AI 分析 │ ├── tts/ # 语音合成 │ ├── materials/ # 素材处理 │ ├── video/ # 视频合成 │ └── ui/ # 用户界面 ├── tests/ # 测试文件 ├── assets/ # 资源文件 │ ├── fonts/ # 字体文件 │ └── bgm/ # 背景音乐 ├── config/ # 配置文件 └── main.py # 主程序入口 ``` ## 许可证 MIT License