Állítsa be az Nginx-RTMP-t a CentOS 7 rendszeren

Az RTMP kiválóan alkalmas élő tartalom kiszolgálására. Ha az RTMP és az FFmpeg párosítva van, az adatfolyamok különféle minőségekké alakíthatók. A Vultr nagyszerű ezekhez az alkalmazásokhoz, mivel gyors és dedikált CPU-teljesítményt biztosítanak. A Vultr globális hálózata azt is biztosítja, hogy minimális késleltetéssel tudjon kiváló minőségű élő tartalmat szállítani. Lássunk neki!

Az Nginx és az Nginx-RTMP telepítése

Telepítse az Nginx és az Nginx-RTMP forrásból történő fordításához szükséges eszközöket.

sudo yum install pcre pcre-devel openssl openssl-devel zlib zlib-devel -y

Hozzon létre egy munkakönyvtárat, és váltson rá.

mkdir ~/working
cd ~/working

Töltse le az Nginx és Nginx-RTMP forrásokat.

wget http://nginx.org/download/nginx-1.9.7.tar.gz
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip

Telepítse a kicsomagoló csomagot.

sudo yum install unzip

Bontsa ki az Nginx és Nginx-RTMP forrást.

tar -xvf nginx-1.9.7.tar.gz
unzip v1.2.1.zip

Váltson az Nginx könyvtárra.

cd nginx-1.9.7

Adjon hozzá modulokat az Nginx-be fordításhoz. Az Nginx-RTMP tartalmazza.

./configure --add-module=../nginx-rtmp-module-1.2.1/

Fordítsa le és telepítse az Nginx-et az Nginx-RTMP-vel.

make
sudo make install

Hozzon létre egy SystemD egységfájlt az Nginx számára.

sudo nano /usr/lib/systemd/system/nginx.service

Töltse fel a fájlt a következő tartalommal.

[Unit]
Description=nginx - high performance web server
Documentation=https://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID

[Install]
WantedBy=multi-user.target

Indítsa el és engedélyezze az Nginx szolgáltatást.

sudo systemctl start nginx.service

Mondja meg a SystemD-nek, hogy indítsa el automatikusan az Nginx-szolgáltatásokat a rendszerindításkor.

systemctl enable nginx.service

FFmpeg telepítése

Telepítse epel-releaseés frissítse a rendszert.

sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

Telepítse a Nux adattárat.

sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

Telepítse az FFmpeg-et és fejlesztői csomagjait.

sudo yum install ffmpeg ffmpeg-devel -y

Az Nginx-RTMP és az FFmpeg konfigurálása

Nyissa meg az Nginx konfigurációs fájlt.

sudo nano /usr/local/nginx/conf/nginx.conf

A konfigurációhoz csatolja a következőket.

    rtmp {
        server {
            listen 1935;
            chunk_size 4096;

            application live {
                    live on;
                    record off;
                    exec ffmpeg -i rtmp://localhost/live/$name -threads 1 -c:v libx264 -profile:v baseline -b:v 350K -s 640x360 -f flv -c:a aac -ac 1 -strict -2 -b:a 56k rtmp://localhost/live360p/$name;
            }
            application live360p {
                    live on;
                    record off;
        }
    }
}

Miután hozzáadta a konfigurációs szöveget, testreszabhatja a beállításokat, például a videó bitsebességét, a hang bitsebességét és a felbontást. Ezek a változtatások csak a gyengébb minőségű adatfolyamra vonatkoznak. További minőségek hozzáadásához másolja ki és illessze be az exec FFmpeg sort, és módosítsa a beállításokat. Új alkalmazást is létre kell hoznia. Ezt a mellékelt live360 példa másolásával és beillesztésével teheti meg. Ne felejtse el frissíteni az exec FFmpeg sort az új alkalmazás címével. Ezt úgy teheti meg, hogy megváltoztatja a végső RTMP-címet az exec FFmpeg sorban.

Megjegyzés: Az érték módosítása után -b:vmegváltozik a videó bitsebessége. Ezt kilobit per másodpercben mérik. Az érték későbbi -b:amódosítása megváltoztatja az audio bitrátát. Ezt kilobit per másodpercben mérik. Az érték későbbi -smódosítása megváltoztatja a felbontást.

Mentse el a fájlt a CTRL+ gomb megnyomásával X.

Indítsa újra az Nginxet.

sudo service nginx restart

Megjegyzés: A legjobb teljesítmény érdekében minden konvertálandó adatfolyamnak saját CPU-maggal kell rendelkeznie. Például, ha két minőséget, a 360P-t és a 480P-t hoz létre egy 720P-s adatfolyamból, akkor legalább két CPU-maggal rendelkező Vultr-példányt kell használni.

Biztonsági megjegyzés

Ha tűzfalat használ, meg kell győződnie arról, hogy TCP 1935ez engedélyezett.

A jelenlegi konfiguráció lehetővé teszi, hogy bárki streameljen a szerverére. Ezt úgy tudjuk megoldani, hogy csak bizonyos IP-címekhez adunk közzétételi engedélyt. Nyissa meg az Nginx konfigurációját.

sudo nano /usr/local/nginx/conf/nginx.conf

Keresse meg a következő sorokat.

live on;
record off;

Adja hozzá a következőket a fenti sorok mindegyikéhez. Változtassa 0.0.0.0meg a tényleges IP-címét.

allow publish 127.0.0.1;
allow publish 0.0.0.0;
deny publish all;

A konfiguráció most valahogy így fog kinézni.

rtmp {
    server {
        listen 1935;
        chunk_size 4096;

        application live {
                live on;
                record off;
                allow publish 127.0.0.1;
                allow publish 0.0.0.0;
                deny publish all;
                exec ffmpeg -i rtmp://localhost/live/$name -threads 1 -c:v libx264 -profile:v baseline -b:v 350K -s 640x360 -f flv -c:a aac -ac 1 -strict -2 -b:a 56k rtmp://localhost/live360p/$name;
        }
        application live360p {
                live on;
                record off;
                allow publish 127.0.0.1;
                allow publish 0.0.0.0;
                deny publish all;
        }
    }
}

Mentse el a fájlt a CTRL+ gomb megnyomásával X.

Indítsa újra az Nginxet.

sudo service nginx restart

Szoftver konfigurálása az Nginx-RTMP használatához

A streaming alkalmazásoknak általában két mezője van a kapcsolati információk számára. Az első mező általában a kiszolgáló információit tartalmazza, a második mező pedig általában az adatfolyam nevét vagy kulcsát. Az egyes mezőkbe elhelyezendő információk listája. A stream neve vagy kulcsa bármire beállítható.

Field 1: rtmp://your.vultr.ip/live/
Field 2: stream-key-you-set

A streamek megtekintéséhez nyissa meg a következő hivatkozásokat egy RTMP-t támogató lejátszóban.

rtmp://your.vultr.ip/live/stream-key-you-set
rtmp://your.vultr.ip/live360p/stream-key-you-set

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.