22 November 2021 [Programming, Tech]
Siaran langsung RTMP menggunakan NGINX
Saya ingin orang-orang dapat menonton streaming langsung coding Matrix dan Rust saya menggunakan perangkat lunak gratis, jadi saya ingin melakukan siaran langsung ke PeerTube dan juga Twitch.
Hal ini dimungkinkan dengan menggunakan NGINX dan modul RTMP-nya. Ini memang melibatkan pembuatan NGINX dari sumber, tetapi menurut saya itu cukup mudah dilakukan.
Mengapa Oracle cloud?
Saya tidak akan merekomendasikan penggunaan Oracle untuk apa pun, tetapi mereka menyediakan hingga dua mesin virtual di cloud mereka secara gratis, dan mesin yang saya gunakan selalu tersedia dengan konektivitas yang sangat baik, di pusat data London sejak saya menyiapkannya beberapa bulan lalu.
Jadi, kami membuat hidup kami lebih sulit dengan mencoba melakukan ini di Oracle Linux, yang merupakan turunan dari RHEL.
Membangun NGINX dan modul RTMP-nya di Oracle Linux
Saya menjalankan perintah ini pada instance cloud Oracle saya (menjalankan Oracle Linux):
sudo yum install git pcre-devel openssl-devel mkdir nginx cd nginx wget git clone cd nginx-1.21.4 ./configure --add-module=../nginx-rtmp-module/ make sudo make install
Setelah semua NGINX ini diinstal ke /usr/local/nginx/.
Membuat file konfigurasi NGINX untuk siaran langsung RTMP
Selanjutnya saya edit file konfigurasi NGINX dengan mengetik:
sudo nano /usr/local/nginx/conf/nginx.conf
Dan tempelkan konfigurasi ini di bagian bawah file:
rtmp {
server {
listen 2036;
chunk_size 4096;
application live {
live on;
record off;
push rtmp://live.twitch.tv/app/live_INSERT_TWITCH_STREAM_KEY;
push rtmp://diode.zone/live/INSERT_PEERTUBE_STREAM_KEY;
}
}
}
Perhatikan bahwa Anda perlu mendapatkan kunci aliran Twitch Anda dari Twitch -> Dasbor Pembuat -> Pengaturan -> Aliran, lalu Salin di sebelah Kunci Aliran Utama.
Untuk mendapatkan ID streaming PeerTube, Anda harus membuka halaman PeerTube dan klik Publikasikan, lalu Tayangkan, pilih saluran Anda dan pilih Tayangkan. Perhatikan bahwa jika Anda ingin streaming direkam dan tersedia nanti, Anda harus membuat kunci streaming baru setiap kali memulai streaming, dan mengubahnya di nginx.conf.
Jika Anda menggunakan server PeerTube yang berbeda (saya menggunakan diode.zone) maka Anda juga perlu mengubah nama server pada file konfigurasi di atas.
Pastikan file konfigurasi Anda disimpan dengan URL yang benar di dalamnya.
Membuka port
Untuk mengirim lalu lintas RTMP ke server saya, saya perlu membuka port yang tepat ke instance cloud Oracle. Hal ini melibatkan pembuatan aturan ingress dan penambahan aturan firewall.
Membuat aturan masuknya
Di antarmuka web, saya membuka menu di kiri atas, mengklik Compute, lalu Instances.
Saya mengklik nama instance saya, lalu mengklik nama subnet di detailnya (di sebelah kanan).
Saya mengklik Daftar keamanan default untuk…, lalu Tambahkan Aturan Ingress.
Saya membuat aturan ingress dengan Source Type=CIDR, Source CIDR=0.0.0.0/0, IP Protocol=TCP, Source Port Range=(kosong, artinya semua), Destination Port Range=2036
Menambahkan aturan firewall
Lalu saya masuk ke mesin dan menjalankan perintah ini untuk membuat aturan firewall yang mengizinkan lalu lintas:
sudo firewall-cmd --zone=public --permanent --add-port=2036/tcp sudo firewall-cmd --reload
Hentikan dan Mulai NGINX
Setelah membuat file konfigurasi dan membuka port yang tepat, saya perlu memulai NGINX.
Setiap kali saya mengubah file konfigurasi, saya harus memulai ulang.
Jika sudah berjalan, saya hentikan dengan:
sudo /usr/local/nginx/sbin/nginx -s stop
dan kemudian saya memulainya lagi dengan
sudo /usr/local/nginx/sbin/nginx
Saya dapat memeriksa apakah puas dengan melihat file log, misalnya untuk melihat kesalahan apa pun:
less /usr/local/nginx/logs/error.log
Memulai streaming
Sekarang saya masuk ke OBS dan pergi ke File -> Pengaturan -> Stream dan pilih jenisnya sebagai Kustom, dan Server sebagai rtmp://1.1.1.1:2036/live. (Tetapi alih-alih 1.1.1.1, saya memasukkan alamat IP publik dari instance saya, yang saya temukan dengan mengklik nama instance di konsol manajemen cloud Oracle.)
News
Berita
News Flash
Blog
Technology
Sports
Sport
Football
Tips
Finance
Berita Terkini
Berita Terbaru
Berita Kekinian
News
Berita Terkini
Olahraga
Pasang Internet Myrepublic
Jasa Import China
Jasa Import Door to Door
Download Film
Gaming center adalah sebuah tempat atau fasilitas yang menyediakan berbagai perangkat dan layanan untuk bermain video game, baik di PC, konsol, maupun mesin arcade. Gaming center ini bisa dikunjungi oleh siapa saja yang ingin bermain game secara individu atau bersama teman-teman. Beberapa gaming center juga sering digunakan sebagai lokasi turnamen game atau esports.
