Heim > Artikel > Backend-Entwicklung > Hinweise zum Aufbau eines Streaming-Media-Servers mit nginx nginx-rtmp-module ffmpeg (5)
Teil 5
Vor einiger Zeit wurde auf Ubuntu ein Streaming-Media-Server gebaut, der HLS unterstützt. Das ultimative Ziel ist es, einen solchen Streaming-Media-Server auf dem Arm-Entwicklungsboard zu bauen. Derzeit ist nur ein kleiner Teil der Arbeit erledigt. Er wird verpflanzt und aufgezeichnet, damit er in Zukunft fortgesetzt werden kann.
1. Das erste ist, Nginx auf die Armentwicklungsplatine zu verpflanzen.
Jemand hat dies bereits getan, sodass Sie die Projekte anderer Leute nutzen können.
https://bitbucket.org/ntakimura/android-nginx/src/c80cb9c41a725ecf57f73a196735100aeef5b6e4/?at=android
Dies ist das Android-Nginx-Open-Source-Projekt, und die Entwicklung wird auf dieser Basis fortgesetzt .
2. Führen Sie nach dem Herunterladen des Originalcodes die oben genannten Schritte aus:
Stellen Sie zunächst sicher, dass eine NDK-Umgebung vorhanden ist, und rufen Sie die NDK-Toolkette auf.
Android ndk bietet Skripte, mit denen Sie eine Toolkette anpassen können. Die Methode ist:
$NDK_HOME/build/tools/make-standalone-toolchain.sh \ --platform=android-14 --install-dir=$HOME/local/android-toolchainwobei NDK_HOME Ihr NDK-Pfad ist.
3. Laut dem zweiten Schritt steht auf der offiziellen Website des Projekts:
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-compareBeim Aufrufen des vorherigen Verzeichnisses von auto zur Ausführung wird jedoch ein Fehler angezeigt und gcc kann nicht gefunden werden. Daher müssen Sie den Befehl ändern:
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-compareDa zukünftige Make- und Make-Installationen unter Root erfolgen werden, habe ich das HOME im Befehl in mein Verzeichnis /home/wangrui/ geändert.
4. Wenn keine Fehler vorliegen, kann es erfolgreich abgeschlossen werden, dann make, make install
5.
Beim Kopieren treten Berechtigungsprobleme auf und Sie können die Berechtigungen des arm-nginx-Ordners nicht ändern:
chmod 777 arm-nginx -R-R bedeutet, dass die Unterordner und Dateien unter dem Ordner vorhanden sind ebenfalls enthalten.
6. Verbinden Sie das Telefon mit einem Datenkabel, öffnen Sie das USB-Debugging und installieren Sie das ADB-Tool
sudo apt-get install android-tools-adb
Führen Sie den Befehl aus:
adb shellruft das Mobiltelefon auf und führt den Befehl aus:
cd sdcardGeben Sie die SD-Karte ein und suchen Sie das Verzeichnis arm-nginx
8. Der vollständige Befehl lautet:
cd sdcard/arm-nginx/sbin/
./nginxPrompt-Fehler:
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)Datei nicht gefunden, ändern Sie den Befehl:
./nginx -p /sdcard/arm-nginx/ -c /sdcard/arm-nginx/conf/nginx.confFehler bei der Ausführungsaufforderung:
nginx: [emerg] getgrnam("nogroup") failed (2: No such file or directory)Ich weiß nicht, wie ich es jetzt ändern soll, deshalb werde ich es heute hier aufzeichnen. Da ich bald in den Jahresurlaub gehe, wird es später einfacher sein, Schritt für Schritt fortzufahren...
Senioren, die diese Situation erlebt haben, können mir gerne einen Rat geben!
Vielen Dank
Das Obige stellt die Hinweise zum Aufbau eines Streaming-Media-Servers mit nginx nginx-rtmp-module ffmpeg (5) vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich sein wird, die an PHP-Tutorials interessiert sind.