搭建无人直播7×24小时教程
兼容性
KPlayer
目前仅支持Linux环境并需要满足x86_64(amd64)
与aarch64(arm64)
CPU架构的硬件环境上运行,我们已经将相关依赖库静态链接至主程序中,这意味着你不需要额外的安装任何的第三方库来支持KPlayer
的运行。
在后续的迭代版本中将会陆续针对不同CPU架构与不同的操作系统上进行跨平台支持。
查看满足条件
如果你想确定是否满足运行条件,可使用以下的命令来确认你的服务器是否满足以下的预期输出
确保执行以下命令输出的结果相同
uname
> Linux
确保执行以下命令输出的结果为
x86_64
或aarch64
uname -m
> x86_64
下载安装
KPlayer
提供两种方法供你获取当前版本的安装包到你的服务器中。
一键下载是我们提供的下载安装脚本,它会根据你服务器的架构版本获取相应的下载版本并解压到当前目录中。它更适合你不不需要关心服务器的架构版本。
手动下载更适合你需要下载对应架构与对应版本的构建版本。
1. 使用一键下载
提醒
一键下载始终会下载KPlayer的最新的版本,如果下载历史版本请使用第二种安装方法
通过ssh
进入到你的服务器中,找到合适的目录并运行以下的命令进行下载
curl -fsSL get.kplayer.net | bash
执行完成之后输出下载进程与完整的文件列表
> curl -fsSL get.kplayer.net | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 24.4M 100 24.4M 0 0 7377k 0 0:00:03 0:00:03 --:--:-- 7379k
kplayer/
kplayer/kplayer
kplayer/config.json.example
2. 手动下载压缩包
提醒
手动下载请确认你的服务器CPU架构版本与目标下载地址相符合
在这里查看当前版本下载地址,选择服务器上http客户端程序下载到本地来。如果你的机器架构为amd64
,以下是它的实例命令
wget https://gitee.com/bytelang/kplayer-go/releases/download/v0.5.8/kplayer-v0.5.8-linux_amd64.tar.gz
等待文件下载完成,你就得到了对应下载版本的压缩包。执行解压操作
tar zxvf kplayer-v0.5.8-linux_amd64.tar.gz
完成下载
如果你成功的完成的上述的步骤,至此KPlayer
已安装到你的服务器中。
执行cd kplayer
进入到kplayer文件夹中查看文件列表ls -lh
将会看到所有文件的输出
-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
查看当前版本号
对已下载的KPlayer
查看当前版本号,运行以下命令。查看主版本号
./kplayer
创建配置文件
在上一步安装顺利后,在kplayer目录中将存在config.json.example,它是一个最简版本用来支持推流的配置文件。你可以选择自己创建文件或者将它复制一份成为新的配置文件。
使用cp
命令重命名并复制一份配置文件
cp config.json.example config.json
提醒
KPlayer
默认的配置文件名称为config.json
优先在homedir
目录中查找该配置文件。
KPlayer
现已支持使用yaml格式来作为它的配置文件,使用哪个完全取决于你的喜好。但是在同时存在config.json
和config.yaml
,json格式的优先级会更高
如果你使用yaml格式来作为配置文件,那么请将json后缀的文件修改为yaml
修改配置文件
打开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"
}
]
}
}
修改视频资源路径
基于这个配置文件,你只需要改动很少的一部分配置即可完成资源推流
修改视频资源目录至你的视频文件路径,假设你的视频文件路径为/home/user/video/起风了.flv
{
"version": "2.0.0",
"resource": {
"lists": [
"/home/user/video/起风了.flv"
]
},
"output": {
"lists": [
{
"path": "rtmp://127.0.0.1:1935/push"
}
]
}
}
修改推流地址
推流地址是将要把视频资源的画面与声音推送给服务端的通信地址,如果是像bilibili、虎牙、斗鱼....等直播平台通常是需要在个人中心并开启直播后,将会得到
推流地址
与推流码
。将推流码追加至推流地址后即可得到推流地址自己搭建推流服务器,通过很多开源工具也可以很方便的搭建推流服务器。推荐使用https://github.com/arut/nginx-rtmp-module与https://github.com/illuspas/Node-Media-Server快速的搭建推流服务端
假设推流地址为rmtp://127.0.0.1:1935/live/test
,使用获取到的新的推流地址修改至配置文件中
{
"version": "2.0.0",
"resource": {
"lists": [
"/home/user/video/起风了.flv"
]
},
"output": {
"lists": [
{
"path": "rmtp://127.0.0.1:1935/live/test"
}
]
}
}
配置文件修改完成
提醒
完成上述两步,确保你填写的视频文件地址正确无误与推流地址无误。恭喜你,你完成最简版的配置文件的修改。
开始运行KPlayer
进行到这里,符合条件的配置文件与环境在上一步已经配置完成,执行下方的命令即可开始KPlayer
进行视频资源推流。
提醒
如果你推流的线上推流服务器。请保证您的直播间或者推流服务器是开启状态。某些平台在一段时间后未接收推流资源将会自动关闭,你可以关闭再重新打开
执行开始推流的命令
./kplayer play start
将会看到以下输出信息并保持程序继续运行,即成功推流
kplayer for golang v0.5.8 Copyright(c) 2019-2023 the ByteLang Studio (https://kplayer.bytelang.cn)
libkplayer version: v1.5.5 plugin version: 1.5.1 license version: v1
toolchains GNU(10.3.1) C++ Standard 17 on Linux-x86_64-5.18.14-arch1-1
build with build-chains cmake(3.22.3) type with Release
Hope you have a good experience.
-------------------------------------------------------------------------------------------------------------------
INFO[2022-08-23 15:25:05] grpc server listening address=127.0.0.1 port=5157
INFO[2022-08-23 15:25:05] http server listening address=127.0.0.1 port=5156
INFO[2022-08-23 15:25:05] output add success path="rmtp://127.0.0.1:1935/live/test" unique=33f043
INFO[2022-08-23 15:25:05] core start up success
INFO[2022-08-23 15:25:05] kplayer start success
INFO[2022-08-23 15:25:05] checked play resource duration=325 path="/home/user/video/起风了.flv" unique=mMRzUj
查看推流内容
如果是在线直播平台,打开你的直播间链接可以看到视频资源正确在播放
如果是自己搭建的推流服务端,通过可以播放rtmp协议的播放器例如ffplay
或vlc
打开推流链接可以查看到资源播放情况
如何在后台执行
默认情况下通过ssh
进入到服务器中,当前程序的父进程为ssh-agent。当退出终端时,程序将会被结束
你可以通过nohup
、screen
、tmux
这些工具来支持后台运行
或者使用KPlayer
提供的程序后台运行参数来使得它在后台运行
./kplayer play start --daemon
运行后将会输出成功日志,这个日志仅代表KPlayer
被正确的放到后台进行运行并且不会在前台提示任何运行期间的错误情况,所以并不代表它正在正确的在执行
INFO[2022-08-23 00:47:26] kplayer start success on daemon mode
当使用daemon
模式后,所有的日志输出将会重定向到log/kplayer.log
中,你可以查看这个文件来确定是否有异常情况发生
关闭KPlayer的运行
使用前台运行方式时,按下
Ctrl+c
结束运行使用后台
Daemon
模式时,执行以下命令来结束KPlayer
的后台运行
./kplayer play stop
- 感谢你赐予我前进的力量