何如搭建24小时无人直播间(B站)
简介
无人直播间是一种自动化直播解决方案,它允许用户在无需人工干预的情况下,持续播放视频内容。这在需要长时间直播,如展示产品、播放教育视频或娱乐内容时非常有用。本文将详细介绍如何使用KPlayer在B站搭建一个24小时无人直播间。
其实非常简单,只需要一台服务器和视频资源就能完成。
KPlayer 简介
KPlayer是由ByteLang Studio设计开发的一款Linux环境下的媒体资源推流应用程序。它旨在简化直播流程,让用户无需深入了解推流适配和视频编解码技术,即可轻松实现直播。
功能特色
无缝推流:支持本地和网络视频资源的无缝推流,资源切换不会导致直播中断。
自定义编码参数:用户可以根据需要调整分辨率、帧率等编码参数。
多输出源:允许同时向多个直播平台推流,而无需重复编码,节省硬件资源。
缓存机制:通过缓存机制避免相同内容的重复编解码,降低硬件资源消耗。
API接口:提供丰富的API接口,方便在运行时动态控制播放行为和资源。
插件系统:支持基础插件,并允许用户根据需要开发自定义插件。
安装 KPlayer
KPlayer支持多种安装方式,包括一键安装、手动安装和Docker安装。
一键安装
通过SSH
进入服务器,运行以下命令,找到合适的目录并运行以下的命令进行下载:
curl -fsSL get.kplayer.net | bash
手动安装(可选)
下载压缩包
wget http://download.bytelang.cn/kplayer-v0.5.8-linux_amd64.tar.gz
解压压缩包
tar zxvf kplayer-v0.5.8-linux_amd64.tar.gz
安装完成
执行
cd kplayer
进入到kplayer
目录,使用ll
查看文件列表:
-rw-r--r-- 1 root root 285 3月 23 18:23 config.json.example
-rwxr-xr-x 1 root root 27M 7月 29 11:12 kplayer
config.json.example
是KPlayer
最小化的配置信息示例kplayer
是KPlayer
服务启动、停止的执行脚本命令
使用
./kplayer
命令查看当前版本
创建配置文件
复制并重命名配置文件:
config.json.example
cp config.json.example config.json
修改配置文件,指定视频资源路径和直播推流地址。
{
"version": "2.0.0",
"resource": {
"lists": [
"/video/example_1.mp4",
"/video/example_2.mp4"
]
},
"output": {
"lists": [
{
"path": "rtmp://127.0.0.1:1935/push"
}
]
}
}
resource.lists
视频资源文件路径output.lists
直播推流地址,在B站、斗鱼、虎牙等直播平台中开启直播后,将会得到推流地址与推流码
开启直播
上传视频
上传视频资源:将视频资源上传至服务器,并修改 KPlayer
中的 resource.lists
视频路径。
注意:确保直播内容拥有相应版权,避免侵权风险。
{
"version": "2.0.0",
"resource": {
"lists": [
"/creammint/tools/kplayer/movie/test.mp4"
]
},
"output": {
"lists": [
{
"path": "rtmp://127.0.0.1:1935/push"
}
]
}
}
}
获取推流地址
获取推流地址:在B站开启直播,获取推流地址和推流码,并配置到KPlayer。
点击首页直播
点击网页右侧的开播设置
选择分类,点击开播
注:前提需要身份证和姓名实名认证,且粉丝需要达到50人才能使用第三方软件开播。
复制直播间地址
rtmp://live-push.bilivideo.com/live-bvc/?streamname=live_*********_********&key=**************&schedule=rtmp&pflag=1
将直播间地址配置到
KPlayer
配置文件中的output.lists
直播推流地址
{
"version": "2.0.0",
"resource": {
"lists": [
"/creammint/kplayer/movie/test2.mp4",
"/creammint/kplayer/movie/test.mp4"
]
},
"output": {
"lists": [
{
"path": "rtmp://live-push.bilivideo.com/live-bvc/?streamname=live_*********_********&key=**************&schedule=rtmp&pflag=1"
}
]
}
}
运行 KPlayer
执行以下命令启动 KPlayer
./kplayer play start
后台运行 KPlayer
./kplayer play start --daemon
查看在运行的kplayer
ps aux | grep kplayer
杀掉进程
kill 22647
测试访问
打开直播间地址,确认直播已经开始。
多平台支持:斗鱼、虎牙等其他直播平台的配置流程类似,只需获取相应平台的推流地址并进行配置,就可以同时配置多个平台同时进行直播!
配置循环播放
KPlayer
支持循环播放配置,确保24小时不间断播放。
{
"version": "2.0.0",
"resource": {
"lists": [
"/creammint/kplayer/movie/test2.mp4",
"/creammint/kplayer/movie/test.mp4"
]
},
"output": {
"lists": [
{
"path": "rtmp://live-push.bilivideo.com/live-bvc/?streamname=live_*********_********&key=**************&schedule=rtmp&pflag=1"
}
]
},
## 播放配置
"play": {
"fill_strategy": "ratio",
## 启用推流编码缓存,会生成缓存,命中缓存节约CPU资源
"skip_invalid_resource": true,
"cache_on": true,
# 播放模式为按顺序且循环播放
"play_model": "loop"
}
}
高级配置
KPlayer
还支持更多高级配置,如:
资源预加载:提前加载视频资源,减少播放延迟。
错误处理:配置错误处理策略,如遇到无效资源时自动跳过。
日志记录:开启日志记录,方便问题诊断和性能监控。
更多的配置信息请参考KPlayer提供的在线文档。
- 感谢你赐予我前进的力量