目录
1 linux 系统的安装
1.1 准备工作
1.2 安装CentOS
1.3 配置CentOS开发环境
1.4 配置CentOS 可视化界面(可以安装也可以不安装 个人觉得安装了好操作)
2 SRS 直播服务器搭建
2.1 源码下载
2.2 编译源码及安装
2.3 配置文件
2.4 启动SRS直播服务器命令
2.5 关于推流和拉流
1、下载 VMware Workstation 15 Player 软件,进行安装,这个就跟安装一个软件一样,如果不知道就找 度娘 (注意版本)下载地址为:https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html
2、下载 CentOS (这里我下载的是CentOS7) 下载地址:http://mirrors.nju.edu.cn/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso
1、打开VMware Workstation,点击新建虚拟机,选择“稍后安装操作系统”选项,如下图所示
点击 下一步 继续
2、系统选择 Linux ,版本选择CentOS 7 64 位 如下图 点击下一步
3、给虚拟机的命名和安装位置 点击下一步
4、指定磁盘大小 选择好了 点击下一步
5、在这里要首先选择点击 “自定义硬件” 如下图红圈选择的部分
6、对一些硬件的选择 下面是我的选择 注意:
a、新CD/DVD(IDE) 这个要选择 :使用ISO映像文件,并选择其路径(这个就是之前下载的CentOS 7文件)
b、网络适配器要选择:桥接模式 直接连接物理网络
7、选择完成之后点击关闭,然后点击完成按钮之后选择 虚拟机 点击 播发虚拟机 按钮 出现如下图
8、点击回车键 出现选择语言界面,默认选择的是English,点击Continue继续
9、CentOS 安装配置主界面 LOCALIZATION和SOFTWARE部分不需要进行任何设置,其中需要注意的是sofrware selection选项,这里本次采用默认值(即最小化安装,这种安装的linux系统不包含图形界面)安装,至于其他组件,待后期使用通过yum安装即可。system部分需要必须规划配置的是图中红色部分选项,即磁盘分区规划,另外可以在安装过程中修改network & host name选项中修改主机名(默认主机名为localhost.localdomain)。具体配置过程如下:
点击“INSTALLATION DESTINATION”,进入如下界面红圈选择的部分
选中20G硬盘,下来滚动条到最后,选中“i will configure partitioning”,即自定义磁盘分区,最后点击左上角done进行磁盘分区规划 具体如下图 步骤来选择:
规划后界面如下,点击done完成分区规划,
之后出现如下图所示 点击红圈选择的部分
点击下面的“Accept Changs”
10、完成磁盘规划后,点击下图红框部分,修改操作系统主机名Host name,(如下图2所示),然后点击done完成主机名配置,返回主配置界面:
11、在下图中,其实从第10步配置开始我们就可以发现右下角“begin installtion”按钮已经从原本的灰色变成蓝色,这说明已经可以进行操作系统安装工作了,点击“begin installtion”进行操作系统安装过程
12、在下图用户设置中需要做的仅是修改root用户密码,点击“root password”,设置密码,如果密码安全度不高,比如我这里的密码为“oracle”,那么可能需要点击2次确定才可以。当root密码设置成功再次返回安装界面时我们可以发现之前user setting界面红色警告消失了,对比下面图1和图3
13、使用root 用户登陆 密码是你之前创建的密码 出现如下图登陆成功
修改IP地址命令:vi /etc/sysconfig/network-scripts/ifcfg-ens33 但是最后一个“ens33”是要根据下图中的红框中显示的来修改进入
之后按 ” i” 进入编辑模式,修改的内容如下红圈选中的
修改好了按“esc”键后,再按 ” q”键 输入“wq” 回车,完成配置文件的编辑,然后再输入:service network restart 命令重启网卡,生效刚刚修改的IP地址,到此CentOS安装完成。
yum install vim //强大的Vi编辑器,类似于Vi的文本编辑器,不过在Vi的基础上增加了很多新的特性
yum install wget //从网络上自动下载文件的工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载
yum install gcc //一套由GNU工程开发的支持多种编程语言的编译器
yum install cpp
yum install gcc-c++
yum install make //makefile
yum install gdb //调试工具
yum install git // 安装GIT
执行完就差不多可以了
1、首先安装X(X Window System) 命令为:yum groupinstall “X Window System” 回车(注意有引号)由于这个软件组比较大,安装过程会比较缓慢,安装完成会出现complete
2、检查一下我们已经安装的软件以及可以安装的软件,用命令:yum grouplist 回车
3、然后安装我们需要的图形界面软件:GNOME(GNOME Desktop)命令为:yum groupinstall “GNOME Desktop” (注意有引号) 同样的这个软件组比较大,安装过程会很慢,请耐心等待,安装完成会出现complete
4、安装完成会我们可以通过命令 startx 进入图形界面 可能需要重启(命令为reboot)
1、从github 上把源码下载下来 à Git clone https://git.oschina.net/winlinvip/srs.oschina.git (或者 https://github.com/ossrs/srs.git
或者 https://gitlab.com/winlinvip/srs-gitlab.git )
1、进入trunk 目录: cd srs/trunk
2、编译源码: ./configure --prefix=/usr/local/srs --with-ssl --with-hls --with-hds --with-dvr --with-nginx --with-http-callback --with-http-server --with-stream-caster --with-http-api --with-ffmpeg --with-transcode --with-ingest --with-stat --with-librtmp --with-research --with-utest --with-gperf --with-gprof
1、配置文件srs.conf
listen 1935;
max_connections 1000;
srs_log_tank file;
srs_log_file ./objs/srs.log;
http_api {
enabled on;
listen 1985;
}
http_server {
enabled on;
listen 8080;
dir ./objs/nginx/html;
}
stats {
network 0;
disk sda sdb xvda xvdb;
}
vhost __defaultVhost__ {
# hls直播(手机端)
hls {
enabled on;
hls_fragment 10;
hls_window 60;
hls_path ./objs/nginx/html;
hls_m3u8_file [app]/[stream].m3u8;
hls_ts_file [app]/[stream]-[seq].ts;
}
# flv直播
http_remux {
enabled on;
mount [vhost]/[app]/[stream].flv;
hstrs on;
}
}
# vhost多租用
vhost dvr.com {
hls {
enabled off;
}
dvr {
enabled on;
dvr_path ./objs/nginx/html/[app]/[stream].[timestamp].flv;
dvr_plan session;
}
}
2、配置文件rtmp.conf
listen 1935;
max_connections 1000;
pid ./objs/srs.pid;
chunk_size 60000;
ff_log_dir ./objs;
srs_log_level trace;
srs_log_file ./objs/srs.log;
utc_time off;
daemon on;
srs_log_tank file;
vhost __defaultVhost__ {
}
3、配置文件srs_kp.conf(这个文件有就配置没有就不用)
sten 1935;
max_connections 1000;
daemon off;
srs_log_tank console;
http_server {
enabled on;
listen 8080;
dir ./objs/nginx/html;
}
vhost __defaultVhost__
{
dvr
{
enabled on;
#配置成时分秒
dvr_path ./objs/nginx/html/[app]/[stream]/[15][04][05].flv;
dvr_plan segment; dvr_duration 5;
#切片长度,这个可以改 e.g. 1 or 3
dvr_wait_keyframe on;
}
gop_cache on;
}
1、启动命令 :./objs/srs -c ./conf/srs.conf
推流的地址与拉流的地址
推流地址:首先BASE_URL:基本是该服务器的IP地址或者是其他能访问服务器的地址
后面接的地址就是可以任意修改的,但是拉流的地址要与推流的地址相同
如:rtmp://47.106.104.249:1935/live/livestream
rtmp://47.106.104.249:1935 地址不可修改
/live/livestream 可以根据需求进行修改
拉流地址:就是根推流的地址相同就可以了