如何快速搭建自动直播录制系统?Stream-rec 完整指南
Stream-rec 是一款基于 FFmpeg 的自动直播录制工具,支持虎牙、抖音、斗鱼、Twitch、熊猫TV等主流平台的直播及弹幕自动录制功能。本文将带你从安装到配置,轻松上手这款强大的开源工具,让你不错过任何精彩直播内容!
📋 项目核心功能与优势
Stream-rec 作为一款专业的直播录制解决方案,具备以下核心特性:
- 多平台支持:覆盖虎牙、抖音、斗鱼、Twitch、熊猫TV等主流直播平台
- 自动化录制:无需人工干预,设置后自动监控并录制直播
- 弹幕同步:同步捕获直播弹幕,完整保存直播互动内容
- 轻量化设计:基于Java开发,资源占用低,运行稳定可靠
- 灵活配置:支持自定义存储路径、录制质量、日志级别等参数
项目采用模块化架构设计,核心功能模块位于以下路径:
- 直播平台适配模块:platforms/
- 录制核心服务:stream-rec/src/main/kotlin/github/hua0512/services/
- 配置管理模块:base/src/main/kotlin/github/hua0512/data/config/
🚀 一键安装与启动步骤
环境准备
运行 Stream-rec 需要以下环境支持:
- Java 8 或更高版本
- FFmpeg 工具(用于视频处理)
- 至少 2GB 可用内存
- 足够的磁盘空间(根据录制需求而定)
获取项目源码
通过以下命令克隆项目仓库:
git clone https://gitcode.com/gh_mirrors/st/stream-rec
cd stream-rec
构建项目
使用项目自带的 Gradle 包装器进行构建:
# Linux/Mac 系统
./gradlew build
# Windows 系统
gradlew.bat build
构建成功后,可执行 JAR 文件将生成在 stream-rec/build/libs/ 目录下。
启动应用
使用以下命令启动 Stream-rec 服务:
java -jar stream-rec/build/libs/stream-rec.jar
首次启动时,系统会自动创建默认配置文件和数据库,默认登录密码为 stream-rec。
⚙️ 关键配置参数详解
环境变量配置
通过设置环境变量可以灵活调整应用行为,常用配置项如下:
| 参数名称 | 说明 | 默认值 |
|---|---|---|
| DB_PATH | SQLite数据库存储路径 | /db |
| LOG_LEVEL | 日志输出级别 | info |
| JWT_SECRET | JWT令牌密钥 | 随机生成 |
| LOGIN_SECRET | 登录密码 | stream-rec |
示例配置命令:
java -DDB_PATH=/data/stream-rec/db \
-DLOG_LEVEL=DEBUG \
-DLOGIN_SECRET=MySecurePassword \
-jar stream-rec/build/libs/stream-rec.jar
配置文件说明
项目主要配置文件位于以下路径:
- Gradle构建配置:gradle.properties
- 模块管理配置:settings.gradle.kts
通过修改 gradle.properties 可以调整构建参数,例如:
# 设置Java_home路径
org.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64
# 设置JVM内存参数
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
🔧 高级配置与优化技巧
自定义录制参数
Stream-rec 支持通过配置文件自定义录制参数,如视频质量、分片大小、超时设置等。配置文件位于数据库目录下的 config 表中,可通过提供的管理界面进行修改,或直接编辑数据库记录。
核心配置项包括:
download.quality:设置录制质量(high/medium/low)file.split.size:设置分片大小(单位:MB)stream.timeout:直播超时断开时间(单位:秒)danmu.enable:是否开启弹幕录制(true/false)
性能优化建议
对于大规模录制或低配置服务器,可通过以下方式优化性能:
- 降低日志级别至
warn,减少IO操作 - 调整JVM内存参数,建议设置为
-Xmx2048m - 将数据库文件存储在SSD上,提高读写性能
- 合理设置录制缓存大小,平衡内存占用和录制流畅度
📚 官方文档与资源
- 完整使用文档:docs/
- 项目许可证:LICENSE
- 更新日志:CHANGELOG.md
- 测试用例:stream-rec/src/test/
❓ 常见问题解决
启动失败怎么办?
如果应用无法正常启动,请检查以下几点:
- Java环境是否正确配置
- 端口是否被占用(默认使用8080端口)
- 数据库目录是否有写入权限
- 查看日志文件定位具体错误(默认日志路径:
logs/stream-rec.log)
如何更新到最新版本?
通过以下步骤更新应用:
# 拉取最新代码
git pull origin main
# 重新构建
./gradlew build
# 重启服务
java -jar stream-rec/build/libs/stream-rec.jar
注意:更新前建议备份数据库文件,以免数据丢失。
Stream-rec 作为一款开源免费的直播录制工具,持续接受社区贡献和改进。无论是个人使用还是企业部署,都能满足多样化的直播录制需求。立即尝试,开启你的自动化直播录制之旅吧!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



