Ubuntu 14.04 Üzerinde 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 sunmanızı 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 apt-get install build-essential libpcre3 libpcre3-dev libssl-dev

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

mkdir ~/working
cd ~/working

Nginx ve Nginx-RTMP kaynağını indirin.

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

Unzip paketini kurun.

sudo apt-get install unzip

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

tar -zxvf nginx-1.7.5.tar.gz
unzip master.zip

Nginx dizinine geçin.

cd nginx-1.7.5

Nginx'in derleneceği modülleri ekleyin. Nginx-RTMP dahildir.

./configure --with-http_ssl_module --add-module=../nginx-rtmp-module-master

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

make
sudo make install

Nginx init komut dosyalarını yükleyin.

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

Yapılandırma dosyaları oluşturmak için Nginx'i başlatın ve durdurun.

sudo service nginx start
sudo service nginx stop

FFmpeg'i Yükleme

FFmpeg PPA'sını ekleyin.

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next

Paket listelerini güncelleyin.

sudo apt-get update

FFmpeg'i yükleyin.

sudo apt-get install ffmpeg

Not: apt-add-repository komutu bazı durumlarda yüklenmeyebilir. Kurmak için çalıştırın sudo apt-get install software-properties-common.

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

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

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

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

Yukarıdakileri 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.

Control ve X tuşlarına birlikte basarak dosyayı kaydedin. 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, 720P akışından 360P ve 480P olmak üzere iki kalite oluşturuluyor. 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'e 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 adreslerinin yayınlama iznine izin 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. 0.0.0.0'ı IP adresinizle değiştirin.

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

Yapılandırma şimdi böyle bir şeye benzemelidir.

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

Control ve X tuşlarına birlikte basarak dosyayı kaydedin. 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

Bir oynatıcıyı bir web sitesinde canlı video görüntüleyecek şekilde ayarlamak bu kılavuzun kapsamı dışındadır. 'RTMP web oynatıcısı' terimini aramak size yardımcı olabilir.



Leave a Comment

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

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.

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.

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.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

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.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun