跳至主要内容

VPS无人直播教程

准备工作

1、VPS一台(国内平台直播建议选择阿里云或腾讯云、国外平台直播请随意选择海外商家的VPS即可)

本人使用的VPS官网:点此进入

2、VPS重置好CentOS系统

3、安装FinalShell SSH工具:

Windows版下载地址:点此下载
macOS版下载地址:点此下载
mac版安装路径:/Applications/FinalShell.app/
配置文件路径:/Users/$USER/Library/FinalShell/
mac版卸载删除安装目录:/Applications/FinalShell.app/


开始搭建直播

1、使用 FinalShell SSH工具连接我们的VPS

详见 YouTube 视频教程

2、安装 screen 窗口管理工具

yum -y install screen

3、新建一个窗口

screen -S stream

4、创建 Linux 直播软件 ffmpeg 目录及视频储存目录

mkdir /home/mg-1
mkdir /home/mg-1/ffmpeg

4-1、创建无人直播视频储存目录

mkdir /home/mg-2
mkdir /home/mg-2/video

5、进入 ffmpeg 目录

cd /home/mg-1/ffmpeg

6、复制、粘贴运行以下一键脚本

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
#=================================================================#
#   System Required: CentOS7 X86_64                               #
#   Description: FFmpeg Stream Media Server                       #
#   Author: LALA                                    #
#   Website: https://www.lala.im                                  #
#=================================================================#

# 颜色选择
red='\033[0;31m'
green='\033[0;32m'
yellow='\033[0;33m'
font="\033[0m"

ffmpeg_install(){
# 安装FFMPEG
read -p "你的机器内是否已经安装过FFmpeg4.x?安装FFmpeg才能正常推流,是否现在安装FFmpeg?(yes/no):" Choose
if [ $Choose = "yes" ];then
	yum -y install wget
	wget --no-check-certificate https://www.johnvansickle.com/ffmpeg/old-releases/ffmpeg-4.0.3-64bit-static.tar.xz
	tar -xJf ffmpeg-4.0.3-64bit-static.tar.xz
	cd ffmpeg-4.0.3-64bit-static
	mv ffmpeg /usr/bin && mv ffprobe /usr/bin && mv qt-faststart /usr/bin && mv ffmpeg-10bit /usr/bin
fi
if [ $Choose = "no" ]
then
    echo -e "${yellow} 你选择不安装FFmpeg,请确定你的机器内已经自行安装过FFmpeg,否则程序无法正常工作! ${font}"
    sleep 2
fi
	}

stream_start(){
# 定义推流地址和推流码
read -p "输入你的推流地址和推流码(rtmp协议):" rtmp

# 判断用户输入的地址是否合法
if [[ $rtmp =~ "rtmp://" ]];then
	echo -e "${green} 推流地址输入正确,程序将进行下一步操作. ${font}"
  	sleep 2
	else  
  	echo -e "${red} 你输入的地址不合法,请重新运行程序并输入! ${font}"
  	exit 1
fi 

# 定义视频存放目录
read -p "输入你的视频存放目录 (格式仅支持mp4,并且要绝对路径,例如/opt/video):" folder

# 判断是否需要添加水印
read -p "是否需要为视频添加水印?水印位置默认在右上方,需要较好CPU支持(yes/no):" watermark
if [ $watermark = "yes" ];then
	read -p "输入你的水印图片存放绝对路径,例如/opt/image/watermark.jpg (格式支持jpg/png/bmp):" image
	echo -e "${yellow} 添加水印完成,程序将开始推流. ${font}"
	# 循环
	while true
	do
		cd $folder
		for video in $(ls *.mp4)
		do
		ffmpeg -re -i "$video" -i "$image" -filter_complex overlay=W-w-5:5 -c:v libx264 -c:a aac -b:a 192k -strict -2 -f flv ${rtmp}
		done
	done
fi
if [ $watermark = "no" ]
then
    echo -e "${yellow} 你选择不添加水印,程序将开始推流. ${font}"
    # 循环
	while true
	do
		cd $folder
		video=$(find ./ -type f | shuf -n 1)
  ffmpeg -re -i "$video" -preset ultrafast -vcodec libx264 -g 60 -b:v 1500k -c:a aac -b:a 128k -strict -2 -f flv ${rtmp}
 done
fi
 }

# 停止推流
stream_stop(){
	screen -S stream -X quit
	killall ffmpeg
	}

# 开始菜单设置
echo -e "${yellow} CentOS7 X86_64 FFmpeg无人值守循环推流 For LALA.IM ${font}"
echo -e "${red} 请确定此脚本目前是在screen窗口内运行的! ${font}"
echo -e "${green} 1.安装FFmpeg (机器要安装FFmpeg才能正常推流) ${font}"
echo -e "${green} 2.开始无人值守循环推流 ${font}"
echo -e "${green} 3.停止推流 ${font}"
start_menu(){
    read -p "请输入数字(1-3),选择你要进行的操作:" num
    case "$num" in
        1)
        ffmpeg_install
        ;;
        2)
        stream_start
        ;;
        3)
        stream_stop
        ;;
        *)
        echo -e "${red} 请输入正确的数字 (1-3) ${font}"
        ;;
    esac
	}

# 运行开始菜单
start_menu

PS:阿里云或腾讯云在安装过程中提示权限不够,请输入:su 回车,再输入VPS链接密码回车,然后重新复制粘贴上方脚本即可正常安装 ffmpeg (国外部分VPS厂商请自行获取 root 权限)


7、查看当前进程

screen -ls

8、将当前直播推流进程转为后台自动运行

screen -d 进程名称

9、关闭直播

screen -X -S 进程名称 quit

每次开始直播的步骤

1、进入自定义文件夹

cd /home/mg-1/ffmpeg

2、新建一个窗口

screen -S stream

3、复制粘贴上方最长的一键脚本(不明白的话详见视频教程)

输入数字 2 回车 → 填入:推流地址/串流码 → 输入视频存放路径 → 提示是否添加视频水印选择:NO

4、查看当前进程

screen -ls

5、将当前直播推流进程转为后台自动运行

screen -d 进程名称

6、关闭当前直播

screen -X -S 进程名称 quit

评论

此博客中的热门博文

用于接收短信和激活任何服务的虚拟号码

当在社交网络、聊天工具、C2C网站等服务注册账号时,需要接收验证码短信。 5SIM 提供使用临时虚拟号码通过验证的机会,而无需使用个人手机号码。通过本服务,大家能够在线接到验证码注册许多账号。 关于5SIM服务 有50多万个来自180个国家的手机号码同时在线 可以找到许多国家/地区的用于注册账号的手机号码,包括英国、 俄罗斯、瑞典、德国、法国、印度、印度尼西亚、马来西亚、柬埔寨、蒙古、加拿大、美国、泰国、荷兰、西班牙等等。 天天添加新的虚拟号码 接收从所选网站的无限数量短信。一个号码的价格从 1 卢布起,这样大家不必支付移动运营商的月费 使用手机号码一次并重复接收短信 24/7获取手机号码。本平台运行完全自动,瞬间就接到带有验证码的短信。 在3分钟内注册账号 面向开发者和用户的 API 在接码平台、高质量VPN/代理、浏览器的用户代理和可靠的软件的帮助下设置批量注册账号的过程 手续费 以最低手续费充值余额 (Visa/MasterCard/MIR, QIWI, UnionPay, GCash, KakaoPay, Apple Pay等等) 24/7 客户支持 客户支持提供24小时服务,通过Freshdesk系统,聊天工具和社交网络会帮助解决所有问题。 虚拟手机号使用方式如下: 为赚取收入或个人任务注册许多账号 注册账号时,网站要求指定手机号码。大多数情况下,一个号码只能注册一个账号。如果使用虚拟号码,则可以在社交网络上不受限制地注册账号。网站管理员、SMM和ORM专家会赞同这种功能。对他们来说,账号是一个管理和推广工作项目的工具。 保持匿名性 如果知道个人号码,能够查到其所有者的姓名、护照号码、居住地址等有关信息。使用接码平台时,就完全排除信息泄露可能性。 保护自己免受骗子的侵害 大家可能遇到过要求输入手机号码以无受速度限制下载文件的网站。在此类网站上输入手机号码的时候,能面临开启付费订阅的风险。因此,我们建议使用一次性号码。 参与促销活动获取折扣 各种服务和网络商店举行促销活动来赠送礼物。为此,需要输入手机号码。在这种情况下,规则是一个人只能收到一件礼物。这就是输入手机号码并进行验证的原因。用于在线接码的虚拟号码可以绕过所有限制并享受任何免费优惠品。 摆脱地区限制 一些互联网服务不允许特定地区的居民进行注册。原因可能有所不同。例如,俄罗斯用户经常无法访问乌克兰网站...

一键更改默认 ssh 端口的脚本

99%的vps到手,默认都是22端口,加上上面有的人root密码极其简单,很容易被暴力破解,成为肉鸡等等。因此最好修改SSH默认的22端口为其他随机端口号。懒到家的我,肯定是一键脚本啊,因此,刺激了这个小脚本。 功能 自定义端口修改SSH默认的22端口 提醒 修改后记得修改防火墙端口,放行你的新SSH端口,装宝塔的也要记得放行。新端口用不了,很大概率是防火墙的问题。 免责 这个脚本是我自用的脚本,测试的机器和系统有限,难免造成失联等情况, 不要用于生成环境、不要用于生成环境、不要用于生成环境 。 脚本 bash <( curl -Ls https://raw.githubusercontent.com/Netflixxp/port/main/port.sh ) 或者 wget -O port.sh https://raw.githubusercontent.com/Netflixxp/port/main/port.sh && chmod +x port.sh && clear && ./port.sh