nginx 搭建http-flv(rtmp)流媒体的方法步骤

 更新时间:2023年06月01日 12:20:53   作者:像风一样的男人@  
本文主要介绍了nginx 搭建http-flv(rtmp)流媒体的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧<BR>

git地址

https://github.com/winshining/nginx-http-flv-module/blob/master/README.CN.md

下载nginx-flv模块

git clone https://github.com/arut/nginx-http-flv-module

安装nginx依赖

yum -y install openssl openssl-devel

安装nginx

wget http://nginx.org/download/nginx-1.10.3.tar.gz 
tar -zxvf nginx-1.10.3.tar.gz 
cd nginx-1.10.3
//添加rtmp和openssl支持
./configure --add-module=/绝对路径/nginx-http-flv-module --with-http_ssl_module
make && make install

配软链接

ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/

启动nginx

nginx           启动
nginx -s reload 重启
nginx -s stop   停止

配置流媒体

vim /usr/local/nginx/conf/nginx.conf
#user  nobody;
worker_processes  4;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {
    worker_connections  1024;
}
rtmp_auto_push on;
rtmp_auto_push_reconnect 1s;
rtmp_socket_dir /tmp;
rtmp {
    out_queue           4096;
    out_cork            8;
    max_streams         128;
    timeout             15s;
    drop_idle_publisher 15s;
    log_interval 5s; #log 模块在 access.log 中记录日志的间隔时间,对调试非常有用
    log_size     1m; #log 模块用来记录日志的缓冲区大小
     server {
        listen 54321 reuseport;
        server_name _;
        application myapp {
            live on;
            meta off;# 为了兼容网页前端的 flv.js,设置为 off 可以避免报错
            gop_cache on; # 支持GOP缓存,以减少首屏时间
            allow play all; # 允许来自任何 ip 的人拉流
        }
    }
}    
http {
    include       mime.types;
    default_type  application/octet-stream;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  _;
        location /live {
            flv_live on;
            chunked_transfer_encoding on; #支持'Transfer-Encoding: chunked'方式回复 
            add_header 'Access-Control-Allow-Origin' '*'; #添加额外的 HTTP 头
            add_header 'Access-Control-Allow-Credentials' 'true'; #添加额外的 HTTP 头      
         }
        }
    }

重启

nginx -s reload

测试

推流

1.ffmpeg -re -i C:\Users\EDY\Desktop\1.mp4 -vcodec libx264 -acodec aac -f flv rtmp://122.112.245.213:54321/myapp/video_test

ffmpeg -re -i   \
    本地视频路径 \
     -vcodec libx264 -acodec aac -f flv \
     rtmp://服务器ip:端口/rtmp的路由匹配/自定义

2. ffmpeg -re -i "video" -c:v copy -c:a aac -b:a 192k -strict -2 -f flv "rtmp"

视频加水印,水印位置默认在右上角

3. 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"

拉流

http://122.112.245.213/live?port=54321&app=myapp&stream=video_test

live为拉流地址路由匹配,
port等于推流的端口号
app等于推流的路由
stream等于推流后自定义的文件名

到此这篇关于nginx 搭建http-flv(rtmp)流媒体的方法步骤的文章就介绍到这了,更多相关nginx 搭建http-flv(rtmp)流媒体内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 三步配置轻量级服务器nginx小结

    三步配置轻量级服务器nginx小结

    Nginx是一个安装非常的简单 , 配置文件非常简洁,本文就来介绍一下三步配置轻量级服务器nginx,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • nginx编译安装后对nginx进行平滑升级的方法

    nginx编译安装后对nginx进行平滑升级的方法

    nginx编译安装后用了一段时间后发现当前版本有漏洞或需要新的功能时就需要对当前nginx版本进行版本升级,所以这时就需到对nginx的平滑升级,如何进行平滑升级,下面就一起来了解一下
    2018-12-12
  • 502 Bad Gateway产生的原因及8个详细的解决方法总结

    502 Bad Gateway产生的原因及8个详细的解决方法总结

    Nginx 502 Bad Gateway的错误已经遇到好几次了,这里做一下记录,备忘,下面这篇文章主要给大家介绍了关于502 Bad Gateway产生的原因及8个详细的解决方法,文中的介绍非常详细,需要的朋友可以参考下
    2023-05-05
  • Nginx+Tomcat反向代理与负载均衡的实现

    Nginx+Tomcat反向代理与负载均衡的实现

    这篇文章给大家详细介绍了如何实现Nginx+Tomcat反向代理与负载均衡,文中的流程步骤介绍的非常详细对我们的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-07-07
  • nginx部署vue项目的详细图文教程

    nginx部署vue项目的详细图文教程

    很多小伙伴在做完Vue项目之后,想要部署到服务器上自己运行试试,下面这篇文章主要给大家介绍了关于nginx部署vue项目的详细图文教程,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • 如何修改Nginx版本名称伪装任意web server

    如何修改Nginx版本名称伪装任意web server

    这篇文章主要介绍了修改Nginx版本名称伪装任意web server的方法,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-08-08
  • Linux中Nginx反向代理如何实现不同路径访问不同的页面

    Linux中Nginx反向代理如何实现不同路径访问不同的页面

    这篇文章主要介绍了Linux中Nginx反向代理如何实现不同路径访问不同的页面方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Nginx配置txt、pdf、doc、xls等文件直接下载的方法

    Nginx配置txt、pdf、doc、xls等文件直接下载的方法

    这篇文章主要介绍了Nginx配置txt、pdf、doc、xls等文件直接下载的方法,配置方法很简单,本文直接给出配置示例,需要的朋友可以参考下
    2015-04-04
  • 使用nginx模拟进行蓝绿部署的方式

    使用nginx模拟进行蓝绿部署的方式

    今天小编就为大家分享一篇关于使用nginx模拟进行蓝绿部署的方式,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • 隐藏Nginx版本号的最简单的方法

    隐藏Nginx版本号的最简单的方法

    这篇文章主要介绍了隐藏Nginx版本号的最简单的方法,对外隐藏Nginx版本号有利于维护服务器安全,需要的朋友可以参考下
    2015-04-04

最新评论