简单实现无人直播间的搭建B站版

闲来无事,发现一个好玩的东西,那就是24小时无人直播,有了它,就可以和小伙伴们一起来喜欢的电影或电视剧了(当然,还要注意版权问题),话不多说,开始教程吧。

首先,要实现24小时直播,我们需要准备一台云主机,最近阿里云正好推出了活动,99元就可以获得一台2核2G的云主机,正好解决我们的需求。

像这样,就有了一台属于自己的云主机,本次教程装的是centos系统,接着我们就需要远程链接了,我使用的是FinalShell这款软件,还是非常好用的。

这样基本环境就有了,现在开始介绍我们的主角--kplayer,kplayer是KPlayer是由ByteLang Studio设计开发的一款用于在Linux环境下进行媒体资源推流的应用程序。

只需要简单的修改配置文件即可达到开箱即用的目的,不需要了解众多推流适配、视频编解码的细节即可方便的将媒体资源在主流直播平台上进行直播。意愿是提供一个简单易上手、扩展丰富、性能优秀适合长时间不间断推流的直播推流场景。

kplayer的下载与安装,可以去kplayer的官网看看,因为我用的是centos,所以只介绍在centos上面部署了。找到想要安装到的文件夹。安装命令如下

curl -fsSL get.kplayer.net | bash

安装完成后,进入kplayer

 cd kplayer/
ll

接下来开始配置,为了养成良好习惯,修改配置文件之前最好备份一份。

cp config.json.example config.json

修改配置文件

vi 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"
            }
        ]
    }
}

默认是这样的,/video/example_1.mp4是视频路径,我们需要把它换成自己的视频路径, "path": "rtmp://127.0.0.1:1935/push"指的是rtmp服务器地址和窜流码,在开播后可以查看到。如图

这样就基本完成了,现在来运行看看

./kplayer play start

当视频播放完后,就停了,这不是我们想达到的效果,一定是配置不对,现在奉上完整配置

{
	"version": "2.0.0",
	"resource": {
		"lists": [
			"/home/user/video/起风了.flv"
		],
		"extensions": [
			"mp4"
		]
	},
	"play": {
		"start_point": 1,
		"play_model": "list",
		"encode_model": "rtmp",
		"cache_on": false,
		"cache_uncheck": false,
		"skip_invalid_resource": false,
		"fill_strategy": "tile",
		"rpc": {
			"on": true,
			"http_port": 4156,
			"grpc_port": 4157,
			"address": "127.0.0.1"
		},
		"encode": {
			"video_width": 854,
			"video_height": 480,
			"video_fps": 25,
			"audio_channel_layout": 3,
			"audio_sample_rate": 44100,
			"bit_rate": 0,
			"avg_quality": 0
		}
	},
	"output": {
		"reconnect_internal": -1,
		"lists": [{
			"path": "rtmp://127.0.0.1:1935/push",
			"unique": "test"
		}]
	},
	"plugin": {
		"lists": [{
			"path": "show-text",
			"unique": "my_plugin",
			"params": {
				"text": "hello kplayer",
				"font_size": "20"
			}
		}]
	}
}

将"play_model": "list",修改为loop,就可以一直播放了,记得path也要修改成自己的哦

其实官网写的比我好。。。

screen的使用

之后的使用中,我们逐渐发现了一个问题,当我们退出云主机的控制台后,kplayer也跟着退出了,这不是我们想要的效果 。于是便有了screen这个神奇帮手,它可以保证在我们退出后,所需的人家依旧能继续运行,下面就简单介绍一下吧。

首先是安装,这个灰常j简单色,跳过

screen的创建窗口

screen -S yourname
#后面的名字可以随便取

暂时退出窗口

screen -d

回到指定窗口

screen -r yourname

删除窗口 无需进入

screen -X -S yourname quit

进入窗口

screen -X quit

查看screen已经存在的终端

screen -ls

值得注意的是,现在哔哩哔哩需要拥有>=50+以上的用户才能开启第三方直播。对于新用户来说,暂时使用他们的官方软件是不错的选择哦