4-28课堂笔记

1、Centos 7.x 或 6.8

  1、第一步 装系统 7.x

  2、第二步 远程登录系统 ssh

  3、第三步 安装yum install -y wget

            源码安装 wget下载

  4、第四步 换源 Centos7 默认源  阿里云的

            并更新源 建立缓存

  5、第五步 工具

            git

gcc 编译器==>GNU开源计划===>C  C++ Java等(源代码 面向对象 面向过程 汇编==>机器语言)

二进制  010101010101

vi/vim 文本编辑器  g环境 k环境

make源码编译安装  makefile文件  编译你当前改变的文件 更新文件

make install

可执行文件/ exe 指定的目录中 /路径中  bin  sbin  /usr/local/

/usr/local/nginx/sbin/nginx

openssl  ssh服务

加密  ssh  免密登录  依赖

6、建立一个目录 源码编译安装 /usr/local/  /opt/  各种放

  github

  亮神:一个屌丝程序员如何从8000--->15000形成质的飞跃

        8000元/税前

第一阶段  夹着尾巴做人  8000  原始资本的积累1-3年

浏览 github 运维相关开源软件  python

编程的基本功

二次开发==>站在巨人的肩膀上===>复制粘贴===>抄===>借鉴

15000元

2-3款

7、nginx-rtmp-module 安装Nginx的rtmp协议的扩展

      PC端

      移动端--->操作系统--->iOS

                        --->Android

      |---->手机

      |---->平板(电脑)

      |---->智能设备---->手表

                    ---->手环

                    ---->眼镜/VR/AR/MR

                    ---->互联网电视APP

                    ---->机顶盒Android

                    ---->智能家电

      |---->区块链设备

            |---->垃圾桶

            |---->加湿器 路由器 电视 冰箱  洗机器 热水器 运动 手机挖矿等

            ALL IN BLOCKCHAIN

    8、解压缩  tar -xzvf

    9、进入到Nginx目录里 进行配置

      cd nginx-1.15.0

        ./configure --with-http_ssl_module --add-module=../nginx-rtmp-module

      http_ssl_module模块/扩展/ http https 阿里云ssl证书 免费/淘宝 25 二级域名

  nginx-rtmp-module 模块/扩展 用于推流

    10、编译源码并安装

    建立在 makefile文件

        make

        make install

        或

        make && make install

    11、验证nginx安装成功

    1./usr/local/nginx/sbin/nginx -V 查看版本号

2.直接启动

      /usr/local/nginx/sbin/nginx

[root@liangshen sbin]# ./nginx

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

        3.80端口被占用

  调错

  L A M P  Apache2.0 阿帕奇  WEB服务 80端口

4.通过80端口 浏览器的方式访问  nginx欢迎页面 表示成功

  不是 就需要改nginx的默认端口 80  8080 9000 9090 8888等

5.防火墙的端口限制

12、修改Nginx的conf文件 配置rtmp端口 1935端口

/usr/local/nginx

  rtmp{

    17

    18  server{

    19

    20        listen 1935;

    21        chunk_size 5000;

    22         

    23        application hls{

    24            live on;开启实时直播  实况直播

                record off; 不记录数据

//没有指定ts切片放在哪里

    25        }

    26       

    27    }

    28   

    29 }

    停止Nginx服务 /usr/local/nginx/sbin/nginx -s stop

    启动并加载配置文件

    /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

[root@liangshen conf]# /usr/local/nginx/sbin/nginx

nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)

    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

    nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

nginx: [emerg] still could not bind()

出现如上信息就表示直播服务器已经搭建成功。

    13、如何推流

    1、OBS软件推流Mac Linux Windows(小白 非专业人士)

2、FFmpeg音频视频处理的库Mac  Linux Windows  Android iOS等 开发者

    OBS推流

rtmp://主机ip地址:1935/oldboy_live  room01 room02 小泽老师 龙泽老师 波多老师

    14、到/usr/local/nginx/html

    hls 目录  如果没有就conf里没有配置 1935

http服务里需要指定 推流上来 hls产生的ts切片的目录

location /hls { 

            #server hls fragments 

            types{ 

                application/vnd.apple.mpegurl m3u8; 

                video/mp2t ts; 

            } 

            alias /temp/hls; 

            expires -1; 

        } 

调试

2、Ubuntu 18.04 19.04 16.04 14.04

3、Nginx 1.10.2--1.11.2

4、FFmpeg 处理音频 视频的库

  遮罩层 

5、VLC视频播放器

  5.1 拉流的过程 播放

      /usr/local/nginx/html/hls ls命令

  xxxx.m3u8

  http://x.x.x.x/hls/xxxx.m3u8

  XMPP协议


6、HLS协议 apple 研发

  视频流--->TS切片--->3S--->85kb--->HTTP

  N多个.ts


#EXTM3U

#EXT-X-VERSION:3

#EXT-X-MEDIA-SEQUENCE:141

#EXT-X-TARGETDURATION:8

#EXTINF:8.333,

oldboy_live-141.ts

#EXTINF:8.334,

oldboy_live-142.ts

#EXTINF:8.333,

oldboy_live-143.ts

#EXTINF:8.333,

oldboy_live-144.ts

#EXTINF:8.334,

oldboy_live-145.ts

#EXTINF:8.333,

oldboy_live-146.ts

#EXTINF:8.333,

oldboy_live-147.ts

#EXTINF:8.334,

oldboy_live-148.ts

#EXTINF:8.333,

oldboy_live-149.ts

7、HLS 原生就支持

8、基于Flash HTTP协议 HTTPS访问443

  谷歌浏览器Chrome 就会禁用Flash

9、Nginx+RMTP协议+HLS协议

          推流--->拉流

10、熊熊直播

    服务器硬件

    |--->CPU 1颗  100人

        4核心  2CPU  16*2 = 32核心    1000人

    |--->10M

    集群

    |--->5台

11、压力测试

    1、同时播  多路  推流---

2、同时看  多路  拉流

                go语言

你可能感兴趣的:(4-28课堂笔记)