# controlLive **Repository Path**: jackieling/control-live ## Basic Information - **Project Name**: controlLive - **Description**: 控制OBS长视频切片项目代码 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-27 - **Last Updated**: 2025-08-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI无人直播切片控制器 一个用于控制OBS Studio媒体源播放的智能切片管理工具,支持多种操作界面,适用于无人直播场景。 ## 项目简介 本项目提供了三种不同的操作界面来控制OBS Studio中的媒体源播放: - **桌面GUI界面** (`demo.py`) - 基于PySimpleGUI的图形化界面 - **Web界面** (`web_control.py`) - 基于Flask的Web控制面板 - **命令行界面** (`control.py`) - 简单的命令行控制工具 ## 功能特性 - ✅ **多界面支持** - GUI、Web、命令行三种操作方式 - ✅ **实时配置** - 支持动态修改OBS连接参数和片段时间 - ✅ **片段管理** - 灵活配置视频片段的起始时间点 - ✅ **一键切换** - 快速切换到指定视频片段 - ✅ **可视化操作** - 直观的用户界面设计 - ✅ **跨平台支持** - Windows和macOS双平台支持 - ✅ **打包部署** - 提供可执行文件,无需Python环境 ## 系统要求 - Python 3.10+ - OBS Studio (需开启WebSocket插件) - 网络连接 (用于连接OBS WebSocket) ## 依赖库 主要依赖包括: - `obsws-python` - OBS WebSocket客户端 - `PySimpleGUI` - GUI界面框架 - `Flask` - Web框架 - `websocket-client` - WebSocket通信 ## 安装说明 ### 方式一:使用可执行文件(推荐) 1. 下载 `dist/LiveClip Manager.exe` 或 `安装包/LiveClip Manager.exe` 2. 双击运行即可使用GUI界面 ### 方式二:从源码运行 1. 克隆项目到本地 ```bash git clone <项目地址> cd DouyinLive ``` 2. 创建虚拟环境(可选) ```bash python -m venv .venv # Windows .venv\Scripts\activate # macOS/Linux source .venv/bin/activate ``` 3. 安装依赖 ```bash pip install obsws-python PySimpleGUI Flask websocket-client ``` ## 使用方法 ### 1. OBS Studio 配置 首先需要在OBS Studio中启用WebSocket服务: 1. 打开OBS Studio 2. 进入 `工具` → `WebSocket服务器设置` 3. 勾选 `启用WebSocket服务器` 4. 设置端口(默认4455)和密码 5. 记录这些配置信息 ### 2. 启动应用 #### GUI界面 ```bash # Windows start_windows.bat # 或直接运行 python demo.py ``` #### Web界面 ```bash # Windows start_windows.bat # macOS ./start_mac.bat # 或直接运行 python web_control.py ``` #### 命令行界面 ```bash python control.py ``` ### 3. 配置连接参数 在任意界面中配置以下参数: - **主机地址**: OBS运行的机器IP(本机使用127.0.0.1) - **端口**: WebSocket端口(默认4455) - **密码**: WebSocket密码 - **媒体源名称**: OBS中的媒体源名称 ### 4. 配置视频片段 设置视频片段的起始时间点(单位:毫秒): - 片段1: 0ms (视频开始) - 片段2: 60000ms (1分钟处) - 片段3: 120000ms (2分钟处) 可根据实际需要调整片段数量和时间点。 ### 5. 播放控制 选择要播放的片段编号,点击播放按钮即可跳转到对应时间点。 ## 界面说明 ### GUI界面 (demo.py) - 简洁的桌面应用界面 - 实时配置OBS连接参数 - 可视化片段配置 - 一键播放控制 ### Web界面 (web_control.py) - 现代化的Web控制面板 - 响应式设计,支持移动设备 - 实时配置保存 - 浏览器访问:http://localhost:5000 ### 命令行界面 (control.py) - 轻量级命令行工具 - 适合脚本自动化 - 快速片段切换 ## 文件结构 ``` DouyinLive/ ├── demo.py # GUI界面主程序 ├── web_control.py # Web界面主程序 ├── control.py # 命令行界面 ├── start_windows.bat # Windows启动脚本 ├── start_mac.bat # macOS启动脚本 ├── demo.spec # PyInstaller打包配置 ├── dist/ # 打包后的可执行文件 ├── build/ # 构建临时文件 ├── .venv/ # Python虚拟环境 └── 安装包/ # 发布版本 ``` ## 开发说明 ### 打包为可执行文件 使用PyInstaller将Python脚本打包为exe文件: ```bash pip install pyinstaller pyinstaller demo.spec ``` 生成的可执行文件位于 `dist/` 目录。 ### 自定义配置 可以修改各个文件中的默认配置: - OBS连接参数 - 默认片段时间 - 界面样式和布局 ## 故障排除 ### 常见问题 1. **连接OBS失败** - 检查OBS WebSocket服务是否启用 - 确认IP地址、端口、密码是否正确 - 检查防火墙设置 2. **媒体源不存在** - 确认OBS中媒体源名称是否正确 - 检查媒体源是否已添加到场景中 3. **片段切换无效** - 确认媒体文件是否支持时间跳转 - 检查片段时间设置是否超出视频长度 ### 日志调试 Web界面运行时会显示详细的调试信息,可用于问题诊断。 ## 技术支持 - **开发公司**: 重庆激发科技有限公司 - **版权所有**: © 2025 重庆激发科技有限公司 ## 许可证 本项目仅供学习和研究使用,商业使用请联系开发公司获取授权。 ## 更新日志 ### v1.0.0 - 初始版本发布 - 支持GUI、Web、命令行三种界面 - 基础的OBS媒体源控制功能 - 可执行文件打包 --- **注意**: 使用前请确保OBS Studio已正确配置WebSocket服务,并且网络连接正常。