Instalimi i Nginx dhe Nginx-RTMP
Instalimi i FFmpeg
Konfigurimi i Nginx-RTMP dhe FFmpeg
Shënim sigurie
Konfigurimi i softuerit për të punuar me Nginx-RTMP
RTMP është e shkëlqyeshme për të shërbyer përmbajtje të drejtpërdrejtë. Kur RTMP çiftohet me FFmpeg, transmetimet mund të konvertohen në cilësi të ndryshme. Vultr është i shkëlqyeshëm për këto aplikacione pasi ato ofrojnë performancë të shpejtë dhe të përkushtuar të CPU-së. Rrjeti global i Vultr siguron gjithashtu që ju të mund të ofroni përmbajtje live me cilësi të lartë me vonesë minimale. Le të fillojmë!
Instalimi i Nginx dhe Nginx-RTMP
Instaloni mjetet e nevojshme për të përpiluar Nginx dhe Nginx-RTMP nga burimi.
sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev
Krijoni një drejtori pune dhe kaloni në të.
mkdir ~/working
cd ~/working
Shkarkoni burimin Nginx dhe Nginx-RTMP.
wget http://nginx.org/download/nginx-1.7.5.tar.gz
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
Instaloni paketën Unzip.
sudo apt-get install unzip
Ekstraktoni burimin Nginx dhe Nginx-RTMP.
tar -zxvf nginx-1.7.5.tar.gz
unzip master.zip
Kaloni në drejtorinë Nginx.
cd nginx-1.7.5
Shtoni module me të cilat do të përpilohet Nginx. Nginx-RTMP përfshihet.
./configure --with-http_ssl_module --add-module=../nginx-rtmp-module-master
Përpiloni dhe instaloni Nginx me Nginx-RTMP.
make
sudo make install
Instaloni skriptet init Nginx.
sudo wget https://raw.github.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
sudo update-rc.d nginx defaults
Filloni dhe ndaloni Nginx për të gjeneruar skedarë konfigurimi.
sudo service nginx start
sudo service nginx stop
Instalimi i FFmpeg
Shtoni FFmpeg PPA.
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
Përditësoni listat e paketave.
sudo apt-get update
Instaloni FFmpeg.
sudo apt-get install ffmpeg
Note:
The apt-add-repository command may not be installed in some cases. To install it run sudo apt-get install software-properties-common.
Konfigurimi i Nginx-RTMP dhe FFmpeg
Hapni skedarin e konfigurimit Nginx.
sudo nano /usr/local/nginx/conf/nginx.conf
Shtoni sa vijon.
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;
}
}
}
Pasi të keni shtuar sa më sipër, mund të personalizoni cilësime të tilla si shpejtësia e biteve të videos, shpejtësia audio dhe rezolucioni. Këto ndryshime do të zbatohen vetëm për transmetimin me cilësi më të ulët. Për të shtuar më shumë cilësi, kopjoni dhe ngjisni linjën exec ffmpeg dhe ndryshoni cilësimet. Do t'ju duhet gjithashtu të krijoni një aplikacion të ri. Ju mund ta bëni këtë duke kopjuar dhe ngjitur shembullin live360 që është përfshirë. Mos harroni të përditësoni linjën exec ffmpeg me adresën e aplikacionit të ri. Ju mund ta bëni këtë duke ndryshuar adresën përfundimtare RTMP në linjën exec ffmpeg.
Note:
Changing the value after -b:v will change the video bitrate. This is measured in kilobits per second.
Changing the value after -b:a will change the audio bitrate. This is measured in kilobits per second.
Changing the value after -s will change the resolution.
Ruani skedarin duke shtypur Control dhe X së bashku. Rinisni Nginx.
sudo service nginx restart
Note:
For best performance, each stream being converted should have its own CPU core. For example two qualities, 360P and 480P are being created from a 720P stream. A Vultr instance with at least two CPU cores should be used.
Shënim sigurie
Nëse jeni duke përdorur një mur zjarri, do t'ju duhet të siguroheni që TCP 1935 të lejohet.
Konfigurimi aktual lejon këdo që të transmetojë në serverin tuaj. Ne mund ta rregullojmë këtë duke lejuar vetëm disa adresa IP lejen e publikimit. Hapni konfigurimin Nginx.
sudo nano /usr/local/nginx/conf/nginx.conf
Kërkoni rreshtat e mëposhtëm.
live on;
record off;
Shtoni sa vijon në çdo grup të rreshtave të mësipërm. Ndryshoni 0.0.0.0 në adresën tuaj IP.
allow publish 127.0.0.1;
allow publish 0.0.0.0;
deny publish all;
Konfigurimi tani duhet të duket diçka si kjo.
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;
}
}
}
Ruani skedarin duke shtypur Control dhe X së bashku. Rinisni Nginx.
sudo service nginx restart
Konfigurimi i softuerit për të punuar me Nginx-RTMP
Aplikacionet e transmetimit zakonisht kanë dy fusha për informacionin e lidhjes. Fusha e parë është zakonisht për informacionin e serverit dhe fusha e dytë është zakonisht për emrin ose çelësin e transmetimit. Informacioni që duhet të vendosni në secilën fushë është renditur. Emri ose çelësi i transmetimit mund të vendoset në çdo gjë.
Field 1: rtmp://your.vultr.ip/live/
Field 2: stream-key-you-set
Për të parë transmetimet hapni lidhjet e mëposhtme në një luajtës që mbështet RTMP.
rtmp://your.vultr.ip/live/stream-key-you-set
rtmp://your.vultr.ip/live360p/stream-key-you-set
Vendosja e një luajtësi për të shfaqur video të drejtpërdrejta në një faqe interneti është përtej qëllimit të këtij udhëzuesi. Kërkimi i termit 'RTMP ueb player' mund t'ju ndihmojë.