美文网首页
NGINX LUA RTMP 编译

NGINX LUA RTMP 编译

作者: 勤劳一沙鸥 | 来源:发表于2016-09-09 10:52 被阅读338次

    文件包下载

    • nginx
    • lua-nginx
    • luajit
    • ngx_devel_kit

    安装 luajit

    make install PREFIX=/opt/runtime/luajit
    

    编译Nginx参考

    export LUAJIT_LIB=/opt/runtime/luajit/lib
    export LUAJIT_INC=/opt/runtime/luajit/include/luajit-2.0/
    ./configure --prefix=/opt/runtime/nginx \\\\
            --with-http_ssl_module --with-threads --with-stream --with-http_slice_module  \\\\
            --with-pcre=/home/packages/pcre-8.39 \\\\
            --with-ld-opt="-Wl,-rpath,/opt/runtime/luajit/lib" \\\\
            --add-module=../echo-nginx-module-0.59 \\\\ 
            --add-module=/home/packages/ngx_devel_kit-0.3.0 \\\\
            --add-module=../lua-nginx-module-0.10.5 \\\\
    

    其实用到了 lua后, echo模块是不需要了的

    安装 cjson

    lua模块本身,支持库有限,需要第三方支持,比如现在要用到的lua-cjson-2.1.0.zip

    cjson下载地址:http://www.kyne.com.au/~mark/software/lua-cjson.php

    执行命令

    tar -zxvf lua-cjson-2.1.0.tar.gz 
    cd  lua-cjson-2.1.0
    make
    

    默认情况下报错,差点慌了~~~
    修改Makefile文件,修改default配置为

    PREFIX =            /opt/runtime/luajit/
    LUA_INCLUDE_DIR =   $(PREFIX)/include/luajit-2.0
    

    然后再 make && make install基本成功,会自动复制.so文件至luajat目录。
    重启nginx服务,发现已经可以使用了

    local cjson = require "cjson"
    ngx.say(cjson.encode({dog = 5, cat = 6}))
    

    参考 http://www.cnblogs.com/dongxiao-yang/p/5293120.html

    增加RTSP模块

    --add-module=../nginx-rtmp-module-master
    

    然后使用 rtmp-module自带的nginx.conf测试 需要调整nginx.conf的内容噢

    nginx -c /path/to/nginx-rtmp-module/test/nginx.conf
    

    使用ffmpeg向上推流 FFmpeg介绍

    推桌面 ffmpeg -f avfoundation -s 640x480 -r 30000/1001 -i "1"  -f flv rtmp://192.168.1.2/myapp/test1
    推文件 ffmpeg -re  -i intro340.mp4 -f flv rtmp://192.168.1.2/myapp/test1
    

    相关文章

      网友评论

          本文标题:NGINX LUA RTMP 编译

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