当前位置:Gxlcms > PHP教程 > 使用nginx+nginx-rtmp-module+ffmpeg搭建流媒体服务器笔记(五)

使用nginx+nginx-rtmp-module+ffmpeg搭建流媒体服务器笔记(五)

时间:2021-07-01 10:21:17 帮助过:21人阅读

第五部分

前段时间,在Ubuntu上面搭建起来了能支持HLS的流媒体服务器,最终目标是在arm的开发板上搭建这样的流媒体服务器。现在工作只是做了一小部分,正在进行移植,记录下来,方便以后继续干。

1、首先是要移植nginx到arm的开发板上面。

这个其实有人已经做过了,可以使用别人的工程。

https://bitbucket.org/ntakimura/android-nginx/src/c80cb9c41a725ecf57f73a196735100aeef5b6e4/?at=android

这是android-nginx开源项目,在此基础上继续开发。

2、下载了原码之后,按照上面的步骤进行:

首先,确定有NDK环境,要调用NDK的工具链。

android ndk 提供脚本,允许自己定制一套工具链,方法是:

$NDK_HOME/build/tools/make-standalone-toolchain.sh \
    --platform=android-14 --install-dir=$HOME/local/android-toolchain
其中NDK_HOME就是你的NDK路径。

3、按照它的第二步,项目官网上写的是:

auto/configure \
    --crossbuild=android-arm \
    --prefix=/sdcard/nginx \
    --with-cc=$HOME/local/android-toolchain/arm-linux-androideabi/bin/gcc \
    --without-pcre --without-http_rewrite_module --without-http_userid_module \
    --with-cc-opt=-Wno-sign-compare
但是,当进入到auto的上一目录下执行时,会提示错误,找不到gcc,所以要修改下命令:
auto/configure \
    --crossbuild=android-arm \
    --prefix=/home/wangrui/arm-nginx \
    --with-cc=/home/wangrui/local/android-toolchain/bin/arm-linux-androideabi-gcc \
    --without-pcre --without-http_rewrite_module --without-http_userid_module \
    --with-cc-opt=-Wno-sign-compare
因为以后的make和make install要在root下,所以将命令中HOME改成了我的目录/home/wangrui/

4、不出错的话,能顺利完成,然后make,make install

5、将arm-nginx拷贝到android SDCARD中。

在拷贝时,会有权限问题,不能拷贝,修改arm-nginx文件夹权限:

chmod 777 arm-nginx -R
-R表示文件夹下的子文件夹和文件也一并修改。

6、将手机使用数据线连接,打开USB调式,安装adb工具

sudo apt-get install android-tools-adb

7、进入到SDK目录下,我的是/home/wangrui/java/sdk/platform-tools

执行命令:

adb shell
会进入到手机当中,执行命令:
cd sdcard
进入到sd卡中,找到arm-nginx目录

8、完整命令是:

cd sdcard/arm-nginx/sbin/ 

执行
./nginx
提示错误:
nginx: [alert] could not open error log file: open() "/home/wangrui/arm-nginx/logs/error.log" failed (2: No such file or directory)
2015/02/12 16:16:26 [emerg] 4079#0: open() "/home/wangrui/arm-nginx/conf/nginx.conf" failed (2: No such file or directory)
找不到文件,修改命令:
./nginx -p /sdcard/arm-nginx/ -c /sdcard/arm-nginx/conf/nginx.conf
执行提示错误:
nginx: [emerg] getgrnam("nogroup") failed (2: No such file or directory)
现在还不知道该如何修改,今天先记录到这里,由于快放年假,便于后来继续,一步步来……

遇到过这种情况的前辈清不吝赐教阿!

多谢了

以上就介绍了使用nginx+nginx-rtmp-module+ffmpeg搭建流媒体服务器笔记(五),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行