CentOS 7de Nginx-RTMP Kurulumu

RTMP, canlı içerik sunmak için mükemmeldir. RTMP, FFmpeg ile eşleştirildiğinde akışlar çeşitli niteliklere dönüştürülebilir. Vultr, hızlı ve özel CPU performansı sağladıkları için bu uygulamalar için mükemmeldir. Vultr'un küresel ağı, minimum gecikmeyle yüksek kaliteli canlı içerik sunabilmenizi sağlar. Başlayalım!

Nginx ve Nginx-RTMP Kurulumu

Nginx ve Nginx-RTMP'yi kaynaktan derlemek için gerekli araçları yükleyin.

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

Çalışan bir dizin oluşturun ve bu dizine geçin.

mkdir ~/working
cd ~/working

Nginx ve Nginx-RTMP kaynaklarını indirin.

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

Sıkıştırılmış paketi yükleyin.

sudo yum install unzip

Nginx ve Nginx-RTMP kaynağını ayıklayın.

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

Nginx dizinine geçin.

cd nginx-1.9.7

Nginx'e derlemek için modüller ekleyin. Nginx-RTMP dahildir.

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

Nginx'i derleyin ve Nginx-RTMP ile yükleyin.

make
sudo make install

Nginx için bir SystemD birim dosyası oluşturun.

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

Dosyayı aşağıdaki içerikle doldurun.

[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

Nginx hizmetini başlatın ve etkinleştirin.

sudo systemctl start nginx.service

SystemD'e Nginx hizmetlerini önyükleme sırasında otomatik olarak başlatmasını söyleyin.

systemctl enable nginx.service

FFmpeg'i Yükleme

epel-releaseSistemi kurun ve güncelleyin.

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

Nux deposunu takın.

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

FFmpeg ve geliştirme paketlerini kurun.

sudo yum install ffmpeg ffmpeg-devel -y

Nginx-RTMP ve FFmpeg'i Yapılandırma

Nginx yapılandırma dosyasını açın.

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

Konfigürasyona aşağıdakileri ekleyin.

    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;
        }
    }
}

Bu yapılandırma metnini ekledikten sonra video bit hızı, ses bit hızı ve çözünürlük gibi ayarları özelleştirebilirsiniz. Bu değişiklikler yalnızca daha düşük kaliteli akışa uygulanacaktır. Daha fazla kalite eklemek için exec FFmpeg satırını kopyalayıp yapıştırın ve ayarları değiştirin. Ayrıca yeni bir uygulama oluşturmanız gerekir. Bunu, dahil edilen live360 örneğini kopyalayıp yapıştırarak yapabilirsiniz. Exec FFmpeg satırını yeni uygulamanın adresiyle güncellemeyi unutmayın. Exec FFmpeg satırındaki son RTMP adresini değiştirerek bunu yapabilirsiniz.

Not: Sonra değeri -b:vdeğiştirmek video bit hızını değiştirir. Bu saniyede kilobit cinsinden ölçülür. Sonra değeri -b:adeğiştirmek ses bit hızını değiştirir. Bu saniyede kilobit cinsinden ölçülür. Sonra değeri -sdeğiştirmek çözünürlüğü değiştirir.

CTRL+ Tuşuna basarak dosyayı kaydedin X.

Nginx'i yeniden başlatın.

sudo service nginx restart

Not: En iyi performans için, dönüştürülen her akışın kendi CPU çekirdeği olmalıdır. Örneğin, bir 720P akışından iki kalite, 360P ve 480P oluşturuluyorsa, en az iki CPU çekirdeği olan bir Vultr örneği kullanılmalıdır.

Güvenlik Notu

Güvenlik duvarı kullanıyorsanız TCP 1935, izin verildiğinden emin olmanız gerekir .

Geçerli yapılandırma, herkesin sunucunuza akış gerçekleştirmesine olanak tanır. Bunu yalnızca belirli IP adreslerine yayınlama izni vererek düzeltebiliriz. Nginx yapılandırmasını açın.

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

Aşağıdaki satırları arayın.

live on;
record off;

Yukarıdaki satırların her birine aşağıdakini ekleyin. Değişim 0.0.0.0gerçek IP adresine.

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

Konfigürasyon şimdi aşağıdaki gibi görünecektir.

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;
        }
    }
}

CTRL+ Tuşuna basarak dosyayı kaydedin X.

Nginx'i yeniden başlatın.

sudo service nginx restart

Yazılımı Nginx-RTMP ile Çalışacak Şekilde Yapılandırma

Akış uygulamalarının bağlantı bilgileri için genellikle iki alanı vardır. İlk alan genellikle sunucu bilgileri ve ikinci alan genellikle akış adı veya anahtarı içindir. Her bir alana girmeniz gereken bilgiler listelenir. Akış adı veya anahtarı herhangi bir şeye ayarlanabilir.

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

Akışları görüntülemek için, RTMP'yi destekleyen bir oynatıcıda aşağıdaki bağlantıları açın.

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

Yorum bırak

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.