美文网首页程序员Android音视频
Android+Nginx+RTMP+阿里云服务器直播推流

Android+Nginx+RTMP+阿里云服务器直播推流

作者: 凌烟醉卧 | 来源:发表于2019-09-25 19:25 被阅读0次

首先是搭建nginx服务器,nginx服务器的搭建需要下载nginx和nginx rtmp模块
操作系统:Linux(Ubantu),我这里通过xShell连接的阿里云的服务器。

先创建了一个文件夹tuiliu,名字和路径都不重要。

下载nginx:

wget http://nginx.org/download/nginx-1.15.3.tar.gz

或者通过nginx官网下载其它版本,nginx官网地址:

http://nginx.org/

下载如下图所示的链接:



解压:

tar xvf nginx-1.15.3.tar.gz

下载nginx rtmp模块

wget https://codeload.github.com/arut/nginx-rtmp-module/tar.gz/v1.2.1

或者在githua上搜索nginx-rtmp-module或者使用这个地址https://github.com/arut/nginx-rtmp-module/releases下载其它版本。

解压:

tar xvf v1.2.1  

这两步完成后解压后的文件如下所示:


进入nging-1.15.3

cd nginx-1.15.3

分别执行命令:

./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1
make
make install

--add-module 指向rtmp模块目录,选择在当前目录下的bin下生成文件。

在这个过程中可能因为环境不同而出现不同错误,比如缺少pcre、openssl等,这时候就需要安装这些库。

解决依赖包openssl安装,命令:

sudo apt-get install openssl libssl-dev

解决依赖包pcre安装,命令:

sudo apt-get install libpcre3 libpcre3-dev

解决依赖包zlib安装,命令:

sudo apt-get install zlib1g-dev

3个库安装完成后,如下图所示:


然后

cd bin/conf 

修改nginx.conf文件,修改后的文件如下:

user root;
worker_processes  1;

error_log  logs/error.log debug;

events {
    worker_connections  1024;
}
rtmp {
    server {
         #注意端口占用
        listen 1935;
        application myapp {
            live on;
            #丢弃闲置5s的连接
            drop_idle_publisher 5s;
        }
    }
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       8080;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        
        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }
        location /stat.xsl {
            #注意目录
            root xxxxx/tuiliu/nginx-rtmp-module-1.2.1/;
        }
        location /control {
            rtmp_control all;
        }
        location /rtmp-publisher {
            #注意目录
            root xxxxx/tuiliu/nginx-rtmp-module-1.2.1/test;
        }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

这里需要注意几点:
1)因为是要操作直播,所以要丢弃闲置5s的连接



2)注意路径不要配置错了


红线中的路径如何获取:定位到nginx-rtmp-module-1.2.1下,执行命令 pwd,输出的路径就是。

3)1935端口和8080端口
因为我这里使用的是xShell连接的阿里云的服务器,所以还需要在阿里云服务器的后台配置1935和8080这两个端口:
进入阿里云服务器,在最左侧选择 "安全组"

然后点击右上角的“配置规则”


添加安全组


内容填写


以上完成后,来启动nginx,启动之前看1935和8080的端口是否被占用:

lsof -i:端口号

如果有端口被占用,则通过如下命令kill掉:

kill -9 进程id

进入nginx目录

cd nginx-1.15.3

执行命令,启动nginx

bin/sbin/nginx

使用命令停止nginx

bin/sbin/nginx -s  stop 

一定要在当前目录启动,因为上面的配置 error_log logs/error.log debug; 会去执行命令的目录下查找 logs。
如果error_log 改成一个绝对路径 那就没关系了。

打开浏览器,输入地址:

http://你的IP:8080/

我这是windows10的系统,因为我用的阿里云的服务器,所以在哪打开浏览器都是可以的,如果成功则显示下面的界面:


也可以输入如下地址:

http://你的IP:8080/stat

显示管理推流的界面



myapp是在上面的配置文件中配置的,配置文件中是什么,这里就是什么,而且在android代码中的地址要和这里一致,比如android代码中推流的地址为:

android中的推流地址中的myapp就和配置文件中的一致,否则推流会失败,“mystream”这个名字随便起,叫什么都无所谓。
推流成功则会如下所示:


如果你想看下你推流的视频,我这里使用的是VLC media player
,选择媒体-打开网络串流,填写地址:

rtmp://你的IP:1935/myapp/mystream

至此,通过nginx搭建rtmp服务器完成。

android端直播代码更新中...

相关文章

  • Android+Nginx+RTMP+阿里云服务器直播推流

    首先是搭建nginx服务器,nginx服务器的搭建需要下载nginx和nginx rtmp模块操作系统:Linux...

  • 阿里云直播的接入

    近期项目打算将阿里云直播的sdk接入到前端,前端只做拉流,不做推流。阿里云直播播放与阿里云的点播sdk都合并到了一...

  • iOS动手做一个直播(原理篇)

    开篇 推流 腾讯直播平台,阿里直播平台,百度直播平台提供均为RTMP的推流和HLS/RTMP等拉流.推流是一个直播...

  • PHP直播技术分享(一:实现直播)

    推流服务器采用的是自搭的推流服务器 , 自己玩玩 做外包项目还是去搞七牛云/阿里这样的服务器吧,开始bb---...

  • 视频直播类App有哪些SDK值得推荐

    1、推流:即构、阿里云直播、七牛云等 即构科技由腾讯QQ团队创业,是市面暂时较好的推流SDK,但是费用太高,可以先...

  • 直播

    直播 流程 主播:点击”我要直播”向后台申请直播 后台获取推流url,传给前台 后台利用推流url进行对服务器推流...

  • 直播的学习与使用-----播放

    直播原理:把直播录制的视频,推送到服务器,在由服务器发给观众看 直播环节:推流端(采集、美颜处理、编码、推流)、服...

  • 一个视频直播APP可以使用到的三方SDK

    1.推流:Zego、阿里云直播、七牛等 Zego是市面暂时最好的推流SDK,但是费用太高,每月保底消费在10k以上...

  • RTMP协议下的直播

    基于RTMP协议的直播思路 配置Naginx服务器 来源于满山李子: 配置Naginx服务器 直播推流 直播拉流

  • 直播技术

    直播原理 : 把主播录制的视频,推流送到服务器,服务器经过处理,通过CDN分发给观众看。 直播环节 : 推流端(采...

网友评论

    本文标题:Android+Nginx+RTMP+阿里云服务器直播推流

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