Инсталирање Нгинк-а и Нгинк-РТМП-а
Инсталирање ФФмпег
Конфигурисање Нгинк-РТМП и ФФмпег
Сигурносна напомена
Конфигурисање софтвера за рад са Нгинк-РТМП
РТМП је одличан за сервирање садржаја уживо. Када је РТМП упарен са ФФмпег, токови се могу конвертовати у различите квалитете. Вултр је одличан за ове апликације јер пружају брзе и наменске перформансе процесора. Вултрова глобална мрежа такође осигурава да можете испоручити висококвалитетни садржај уживо са минималним кашњењем. Хајде да почнемо!
Инсталирање Нгинк-а и Нгинк-РТМП-а
Инсталирајте алате потребне за компајлирање Нгинк-а и Нгинк-РТМП-а из извора.
sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev
Направите радни директоријум и пређите на њега.
mkdir ~/working
cd ~/working
Преузмите Нгинк и Нгинк-РТМП извор.
wget http://nginx.org/download/nginx-1.7.5.tar.gz
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
Инсталирајте Унзип пакет.
sudo apt-get install unzip
Извуците Нгинк и Нгинк-РТМП извор.
tar -zxvf nginx-1.7.5.tar.gz
unzip master.zip
Пребаците се на Нгинк директоријум.
cd nginx-1.7.5
Додајте модуле са којима ће Нгинк бити преведен. Нгинк-РТМП је укључен.
./configure --with-http_ssl_module --add-module=../nginx-rtmp-module-master
Компилирајте и инсталирајте Нгинк са Нгинк-РТМП.
make
sudo make install
Инсталирајте Нгинк инит скрипте.
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
Покрените и зауставите Нгинк да бисте генерисали конфигурационе датотеке.
sudo service nginx start
sudo service nginx stop
Инсталирање ФФмпег
Додајте ФФмпег ППА.
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
Ажурирајте листе пакета.
sudo apt-get update
Инсталирајте ФФмпег.
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.
Конфигурисање Нгинк-РТМП и ФФмпег
Отворите Нгинк конфигурациону датотеку.
sudo nano /usr/local/nginx/conf/nginx.conf
Додајте следеће.
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;
}
}
}
Након што додате горе наведено, можете да прилагодите подешавања као што су брзина преноса видеа, брзина звука и резолуција. Ове промене ће се применити само на стрим нижег квалитета. Да бисте додали више квалитета, копирајте и налепите линију екец ффмпег и промените подешавања. Такође ћете морати да креирате нову апликацију. То можете учинити тако што ћете копирати и налепити ливе360 пример који је укључен. Не заборавите да ажурирате линију екец ффмпег адресом нове апликације. То можете да урадите тако што ћете променити коначну РТМП адресу у линији екец ффмпег.
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.
Сачувајте датотеку тако што ћете притиснути Цонтрол и Кс заједно. Поново покрените Нгинк.
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.
Сигурносна напомена
Ако користите заштитни зид, мораћете да се уверите да је ТЦП 1935 дозвољен.
Тренутна конфигурација дозвољава свакоме да стримује на ваш сервер. Ово можемо да поправимо тако што ћемо дозволити само одређеним ИП адресама дозволу за објављивање. Отворите Нгинк конфигурацију.
sudo nano /usr/local/nginx/conf/nginx.conf
Потражите следеће редове.
live on;
record off;
Додајте следеће у сваки скуп горњих редова. Промените 0.0.0.0 у своју ИП адресу.
allow publish 127.0.0.1;
allow publish 0.0.0.0;
deny publish all;
Конфигурација би сада требала изгледати отприлике овако.
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;
}
}
}
Сачувајте датотеку тако што ћете притиснути Цонтрол и Кс заједно. Поново покрените Нгинк.
sudo service nginx restart
Конфигурисање софтвера за рад са Нгинк-РТМП
Апликације за стримовање обично имају два поља за информације о вези. Прво поље је обично за информације о серверу, а друго поље је обично за назив тока или кључ. Наведене су информације које треба да ставите у свако поље. Назив тока или кључ се може подесити на било шта.
Field 1: rtmp://your.vultr.ip/live/
Field 2: stream-key-you-set
Да бисте видели стримове, отворите следеће везе у плејеру који подржава РТМП.
rtmp://your.vultr.ip/live/stream-key-you-set
rtmp://your.vultr.ip/live360p/stream-key-you-set
Подешавање плејера за приказивање видеа уживо на веб локацији је ван оквира овог водича. Тражење термина „РТМП веб плејер“ може вам помоћи.