美文网首页
2022-06-29 银河麒麟V10 Nginx-rtmp+FF

2022-06-29 银河麒麟V10 Nginx-rtmp+FF

作者: 颈椎以上瘫痪 | 来源:发表于2022-06-29 10:35 被阅读0次

    银河麒麟V10

    系统信息


    2022-06-29_10-06-50.png

    FFmpeg

    下载源码
    https://github.com/FFmpeg/FFmpeg/releases/tag/n3.4.11
    这里下载tag版,也是笔记时间最新的版本
    下载完成后你将得到FFmpeg-n3.4.11.tar.gz压缩包
    使用命令tar -xvf FFmpeg-n3.4.11.tar.gz解压这个压缩包,得到FFmpeg-n3.4.11文件夹

    2022-06-29_10-10-07.png
    进入FFmpeg-n3.4.11文件夹执行命令./configure --enable-shared --disable-yasm --prefix=/home/lib/ffmpeg.n3.4.11,配置FFmpeg的安装信息
    执行命令make install安装FFmpeg,这个过程需要一段时间
    安装完成后进入/etc/ld.so.conf.d文件夹,执行命令touch ffmpeg.conf,创建FFmpeg的配置文件
    编辑该文件输入/home/lib/ffmpeg.n3.4.11/lib保存,执行ldconfig命令使其生效
    进入/etc文件夹,编辑profile文件,在文件最后添加一行输入export PATH=$PATH:/home/lib/ffmpeg.n3.4.11/bin并保存,执行命令source /etc/profile使其生效
    然后在命令行里面就可以使用FFmpeg了
    2022-06-29_10-12-42.png

    Nginx-rtmp

    下载Nginx源码
    http://nginx.org/en/download.html
    笔者这里下载的是nginx-1.16.1

    2022-06-29_10-15-22.png
    下载完成后你将得到nginx-1.16.1.tar.gz压缩包
    执行命令tar -xvf nginx-1.16.1.tar.gz解压nginx压缩包,得到nginx-1.16.1文件夹
    使用Git命令在nginx-rtmp模块的仓库中下载源码

    这里笔者在GitHub网站上面也下载过tag版本的,但是在安装过程中会有错误,但是在仓库下载最新的代码就可以

    git clone https://github.com/arut/nginx-rtmp-module.git
    下载完成后你会有nginx-1.16.1和nginx-rtmp-module2个文件夹

    2022-06-29_10-18-36.png

    进入nginx-1.16.1文件夹,执行命令./configure --add-module=../nginx-rtmp-module --with-http_ssl_module配置Nginx安装信息
    执行命令make install安装nginx
    安装完成后在/usr/local会出现一个nginx文件夹
    执行命令/usr/local/nginx/sbin/nginx启动nginx
    在浏览器中访问localhost:80,可以看到nginx的主页,说明安装成功


    2022-06-29_10-23-28.png

    执行命令/usr/local/nginx/sbin/nginx -s stop停止nginx
    进入/usr/local/nginx/conf文件夹,编辑nginx.conf文件
    可以修改nginx的默认端口,并且在http节点同级节点添加rtmp服务器的配置,在配置中你可以根据规则配置你的服务器或者参数

    rtmp {
            server {
                    listen 81;
                    chunk_size 4096;
     
                    application live {
                            live on;
                    }
            }
    }
    

    完整信息如下

    #user  nobody;
    worker_processes  1;
    
    events {
        worker_connections  1024;
    }
    
    rtmp {
            server {
                    listen 81;
                    chunk_size 4096;
     
                    application live {
                            live on;
                    }
            }
    }
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        sendfile        on;
        keepalive_timeout  65;
    
        server {
            listen       80;
            server_name  localhost;
            location / {
                root   html;
                index  index.html index.htm;
            }
    
            #error_page  404              /404.html;
            # redirect server error pages to the static page /50x.html
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    }
    

    这里添加rtmp节点表示创建rtmp服务器,名称是live,端口是81
    执行命令/usr/local/nginx/sbin/nginx启动nginx,如果没有出现错误,就说明配置生效了,可以执行命令netstat -ntulp | grep 81查看rtmp服务器端口是否使用了

    2022-06-29_10-28-36.png
    这样一个rtmp服务器就开启成功了,服务器地址是rtmp://ip:81/live

    VLC

    执行命令apt install vlc安装VLC
    执行vlc启动VLC客户端软件


    2022-06-29_10-33-36.png

    推流

    使用FFmpeg将本地的一个视频文件循环的往rtmp服务器中推流

    ffmpeg -re -stream_loop -1  -i /home/1.mp4  -vcodec copy -f flv rtmp://localhost:81/live/test
    

    执行命令ffmpeg -re -stream_loop -1 -i /home/1.mp4 -vcodec copy -f flv rtmp://localhost:81/live/test命令将本地的1.mp4视频文件循环的往rtmp服务器中推流

    2022-06-29_10-31-14.png

    看到此信息就说明rtmp流媒体服务器搭建成功

    拉流

    在VLC中打开网络串流,URL输入推流指定的rtmp地址,本文中的就是[rtmp://localhost:81/live/test]

    2022-06-29_10-35-20.png

    相关文章

      网友评论

          本文标题:2022-06-29 银河麒麟V10 Nginx-rtmp+FF

          本文链接:https://www.haomeiwen.com/subject/ugstbrtx.html