Featured image of post RDS录制服务端快速入门教程

RDS录制服务端快速入门教程

专注于录制没有URL的直播流(UDP)

RDS录制服务快速入门教程

首次使用前,请确保你已经 安装完成RDS录制服务安装教程

访问服务

安装完成后,可通过以下地址访问录制服务的管理界面:

1
http|s://[你的服务器/WSL的IP/域名]:18081

注意

  1. 运行后需要通过前端界面激活许可证密钥才可正常录制。
  2. 许可证密钥获取地址:许可证密钥获取地址

快速开始

管理界面截图

许可证激活

在右上角输入许可证密钥,点击激活按钮,激活成功后,许可证状态会变为激活状态。

用户配置

首次使用时,需点击配置管理,然后配置用户信息,点击用户配置按钮,添加配置,输入用户信息,点击确定按钮保存。

用户配置 添加用户配置

关于用户配置中的参数说明:

  • 用户ID:通常是你的App的用户ID

  • 密钥:通常是指对应频道中直播间的密钥(token)

    部分平台的用户ID不一定是指App的用户ID,请以客户端获取为准。密钥的有效期通常最多24小时,请注意及时更新。部分平台可能每个频道都有不同的密钥,不能通用。这种情况下,需要依赖客户端获取来发送录制请求。通常会在第一次录制时,自动存储密钥,下次同一个频道录制时,会自动使用上次存储的密钥,但注意密钥的有效期,如果密钥过期,需要重新获取密钥。

录制配置

录制配置

录制配置主要用于配置录制参数,包括录制格式、录制分辨率、录制帧率、录制码率等。但需要注意以下几点:

  1. 分辨率、帧率、码率越高,录制文件越大,对服务器性能要求越高,请根据实际情况选择合适的参数。
  2. 自动合并模式:自动合并模式下,录制文件会自动合并为一个文件,但会占用更多系统资源,请根据实际情况选择合适的模式。
  3. 文件格式:MP4是通用格式,但如果损坏,无法恢复,TS通常不易损坏,且支持实时播放(不建议边下边播)

频道信息

频道信息

频道信息的数据主要是录制时,自动同步的,它有以下几个作用:

1. 通过页面添加频道时,会自动同步频道信息,并自动添加到录制列表中。
2. 昵称、直播ID的自动补全
3. 扩展:方便后续的性能中,对录制的文件名进行后处理,比如根据频道名称、直播ID、昵称实现最终的命名规则,当前的录制文件名默认是频道名称和时间戳自动生成,下载完成后需要用户自行处理文件名

添加录制

左上角选择平台,输入频道ID,直播ID(可选)、昵称(可选),点击添加按钮,即可添加录制。录制效果如下:

alt text

注意

  1. 直播ID和昵称是可选的,但建议首次录制该频道时添加它们,因为会同步到频道信息中,后续再次录制该频道时,如果输入直播ID,则录制文件名会自动补全为直播ID和昵称
  2. 如果输入昵称,则录制文件名会自动补全为昵称。 3.即使录制的文件名与直播ID和昵称没有直接关系,但对于将来需要对自动化后处理录制文件会有很大帮助,比如可以自行实现一个后处理的文件名映射关系,从而实现自己的命名规则

查看录制文件

进入录制文件目录

录制的文件会默认保存在 /home/Videos/Recordings目录下,使用以下命令查看录制文件:

1
2
3
4
5
6
7
# 查看录制文件的详细信息-方式1
ls -l ~/Videos/Recordings

# 或者进入录制根目录-方式2
cd ~/Videos/Recordings
# 然后使用ls命令查看录制文件
ls

以上两种方式都可以查看录制目录下的文件夹,文件夹以日期自动生成,每个日期文件夹下,会包含多个频道目录,每个频道目录下,会包含具体的录制文件效果如下:

录制文件结构

查看具体录制文件

要查看具体录制文件,首先进入某个日期目录,接着进入某个频道目录,然后使用ls命令查看录制文件,参考以下步骤示例:

1
2
3
4
5
6
7
8
# 进入日期目录,请以你实际要查看的日期为准,比如20241225
cd 20241225  
# 再使用ls命令查看当前日期目录下的所有频道
ls
# 进入你要查看的频道目录,比如12345_144409_460861074
cd 12345_144409_460861074
# 查看此频道目录下的所有录制文件,(若是分离录制,可能包含这些:AAC/MP3/MP4/TS)
ls

对于Linux新手用户,如果你几乎不熟悉上述这些基础命令,我建议你使用WSL2+Ubuntu,然后使用Windows文件系统直接访问挂载的位置,也符合Windows用户的使用习惯,在安装了WSL2后,你可以在Windows的文件资源管理器中直接访问WSL2的文件系统,就像访问本地硬盘一样,非常方便,如下所示:

在Windows上访问WSL2+Ubuntu的文件系统

下载录制文件

WSL2用户

对于WSL2用户,你可以直接从Windows资源管理器直接访问录制文件,然后直接复制整个录制目录或录制文件(mp4/ts/aac/mp3等)到Windows系统文件的路径,比如D:\Videos\Recordings目录下,非常方便。

注意

  1. 请确保复制的频道已经录制完成或停止,否则可能会导致录制文件不完整、损坏等问题。
  2. 录制文件会比较占用磁盘空间,请在复制到Windows,确保录制文件正常后,及时删除WSL Ubuntu中录制目录,以免占用不必要的磁盘空间。

远程服务器用户

如果你的RDS录制服务部署在远程服务器上,那么你可以通过SFTP/FTP/Nginx等将录制后的文件下载到本地。 后续可能会增加一个下载功能,但目前还没有具体的计划安排。因为我猜测预计大多数用户会使用WSL,但你仍然可以用SFTP/FTP/Nginx等将录制后的文件下载到本地,这也是非常方便的。

其他说明

  1. 在录制目录下,会包含一些其他无关的文件,这些文件是录制时自动生成的,用于记录录制状态和录制信息,你可以根据需要删除它们(录制完成后)。
  2. 由于音视频文件名会根据频道自动生成,你可以根据需要,自行使用脚本(比如python或shell)实现一个符合个人需求的后处理程序,通过频道名称,直播ID,昵称等映射关系,从而实现自己的命名规则,在录制完成后自动将录制的视频或音频文件放到你指定的目录中。

compose.yml 配置说明(可选)

compose.yml 是 Docker Compose 的核心配置文件,用于定义和管理多容器 Docker 应用。在 RDS 录制服务中,这个文件主要用于配置:

  • 录制文件的保存路径
  • 服务运行端口
  • 容器运行环境
  • 服务自动重启策略
  • 数据持久化配置

注意:除了录制文件保存路径和端口这些基础配置外,请勿随意修改其他参数,以免导致服务无法正常启动或录制异常。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
services:
  recording-service:
    image: sjc.vultrcr.com/pbtest/rds-recording-service:1.0.16 # 此处请以你实际的版本为准
    container_name: rds-recording
    user: root
    environment:
      - CONTAINER_ENV=true
    volumes:
      - ${HOME}/.rds_recording/data:/app/data
      - ${HOME}/Videos/Recordings:/app/Recordings  # 注意,冒号后面的 /app/Recordings 不可修改
    ports:
      - "18081:80"
    restart: unless-stopped

如果你对 Docker Compose 不熟悉,建议使用默认配置,不要随意修改。

修改录制文件保存路径

如果你需要修改录制文件的保存路径,可以通过上述compose.yml文件中的挂载配置来修改保存路径,具体如下:

1
2
3
4
5
      # 比如我将默认的录制文件保存路径修改为 /home/Videos/MyRecordings
      # 修改前
      - ${HOME}/Videos/Recordings:/app/Recordings  # 注意,冒号后面的 /app/Recordings 不可修改
      # 修改后
      - ${HOME}/Videos/MyRecordings:/app/Recordings  # 注意,冒号后面的 /app/Recordings 不可修改

${HOME}/Videos/Recordings 这里修改为你的Linux保存路径,注意默认是绝对路径,你可以根据需要修改为相对路径,相对于docker-compose.yml文件的位置

冒号后面的 /app/Recordings 是docker容器中的保存路径,不可修改,否则会导致录制异常

常用操作命令

以下命令均需要在RDS录制服务安装目录下执行,即安装脚本install-[version].shcompose.yml文件所在目录,比如默认的rds-service 具体安装路径为 /home/rds-service, 执行命令之前,请确保你已经切换到RDS录制服务安装目录下,首先使用 cd ~/home/rds-service 命令切换到RDS录制服务安装目录下,然后根据需要再执行以下命令:

  1. 重启服务
1
docker compose restart
  1. 停止服务
1
docker compose down
  1. 启动服务
1
docker compose up -d
  1. 更新服务
1
docker compose pull && docker compose up -d

常见问题排查

  1. 如果服务启动失败,可以通过以下命令查看详细日志:
1
docker logs rds-recording
  1. 确保以下端口未被占用:

    • 18081:Web 服务端口
  2. 确保系统中已正确安装 Docker 和 Docker Compose

注意事项

  1. 安装过程需要 root 权限或 sudo 权限
  2. 确保系统有足够的磁盘空间
  3. 建议在安装前备份重要数据
  4. 确保网络能够访问 Docker 镜像仓库

如果在安装过程中遇到问题,请检查:

  • Docker 服务是否正常运行
  • 网络连接是否正常
  • 系统资源是否充足
  • 相关端口是否被占用
使用绝夜之城强力驱动