Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Cara nginx menggunakan modul nginx-rtmp-module untuk melaksanakan fungsi bilik siaran langsung

Cara nginx menggunakan modul nginx-rtmp-module untuk melaksanakan fungsi bilik siaran langsung

WBOY
WBOYke hadapan
2023-05-19 08:13:051512semak imbas

Persekitaran sistem

wujianjun@wujianjun-work ~ $ uname -a
linux wujianjun-work 4.10.0-37-generic #41~16.04.1-ubuntu smp fri oct 6 22:42:59 utc 2017 x86_64 x86_64 x86_64 gnu/linux

Persekitaran perisian

obs(perisian penyiar terbuka) v20.0.1 (linux)

versi nginx: nginx/1.13.6

dibina oleh gcc 5.4.0 20160609 (ubuntu 5.4.0-6ubuntu1~16.04.5)

dibina dengan openssl 1.0.2g 1 mac 2016

tl enable 🎜>konfigurasikan hujah: –with-pcre=pcre-8.38 –add-module=nginx-rtmp-module-1.1.11

pemasangan nginx+obs dan obs pemasangan konfigurasi

wujianjun@wujianjun-work ~ $ sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
wujianjun@wujianjun-work ~ $ sudo apt-get update && sudo apt-get install ffmpeg
wujianjun@wujianjun-work ~ $ sudo apt-get install obs-studio
wujianjun@wujianjun-work ~ $ sudo add-apt-repository ppa:obsproject/obs-studio
wujianjun@wujianjun-work ~ $ sudo apt-get update && sudo apt-get install obs-studio
nginx memasang modul rtmp

nginx-rtmp-module ( )

wujianjun@wujianjun-work ~ $ sudo apt-get install build-essential
wujianjun@wujianjun-work ~ $ wget wget http://nginx.org/download/nginx-1.13.6.tar.gz
wujianjun@wujianjun-work ~/nginx-1.13.6 $ wget https://github.com/arut/nginx-rtmp-module/archive/v1.1.11.tar.gz
wujianjun@wujianjun-work ~/nginx-1.13.6 $ tar -xvf v1.1.11.tar.gz
wujianjun@wujianjun-work ~/nginx-1.13.6 $ wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz
wujianjun@wujianjun-work ~/nginx-1.13.6 $ tar -xvf pcre-8.38.tar.gz
wujianjun@wujianjun-work ~/nginx-1.13.6 $ ls -all
总用量 748
drwxr-xr-x 9 wujianjun wujianjun 4096 10月 15 11:39 .
drwxr-xr-x 63 wujianjun wujianjun 4096 10月 15 11:33 ..
drwxr-xr-x 6 wujianjun wujianjun 4096 10月 15 11:33 auto
-rw-r--r-- 1 wujianjun wujianjun 282456 10月 10 23:22 changes
-rw-r--r-- 1 wujianjun wujianjun 430416 10月 10 23:22 changes.ru
drwxr-xr-x 2 wujianjun wujianjun 4096 10月 15 11:33 conf
-rwxr-xr-x 1 wujianjun wujianjun 2502 10月 10 23:22 configure
drwxr-xr-x 4 wujianjun wujianjun 4096 10月 15 11:33 contrib
drwxr-xr-x 2 wujianjun wujianjun 4096 10月 15 11:33 html
-rw-r--r-- 1 wujianjun wujianjun 1397 10月 10 23:22 license
drwxr-xr-x 2 wujianjun wujianjun 4096 10月 15 11:33 man
drwxrwxr-x 6 wujianjun wujianjun 4096 2月 13 2017 nginx-rtmp-module-1.1.11
drwxr-xr-x 7 wujianjun wujianjun 4096 11月 23 2015 pcre-8.38
-rw-r--r-- 1 wujianjun wujianjun  49 10月 10 23:22 readme
drwxr-xr-x 9 wujianjun wujianjun 4096 10月 15 11:33 src
wujianjun@wujianjun-work ~/nginx-1.13.6 $ ./configure --with-pcre=pcre-8.38 --add-module=nginx-rtmp-module-1.1.11
wujianjun@wujianjun-work ~/nginx-1.13.6 $ make && sudo make install
wujianjun@wujianjun-work ~/nginx-1.13.6 $ ls -all /usr/local/nginx/
总用量 24
drwxr-xr-x 6 root root 4096 10月 15 16:11 .
drwxr-xr-x 11 root root 4096 10月 15 16:11 ..
drwxr-xr-x 2 root root 4096 10月 15 16:11 conf
drwxr-xr-x 2 root root 4096 10月 15 16:11 html
drwxr-xr-x 2 root root 4096 10月 15 16:11 logs
drwxr-xr-x 2 root root 4096 10月 15 16:11 sbin

Tambah konfigurasi protokol rtmp

wujianjun@wujianjun-work ~/nginx-1.13.6 $ sudo vi /usr/local/nginx/conf/nginx.conf

Tambah protokol rtmp berikut pada penghujung nginx. conf Konfigurasi fail

rtmp {
 server {
  listen 1935;
  chunk_size 4096;

  application live {
   live on;
   record off;
  }
 }
}

Mula & Uji

Mula nginx

wujianjun@wujianjun-work ~/nginx-1.13.6 $ sudo /usr/local/nginx/sbin/nginx

Mulakan obs

Buka perisian obs yang baru anda pasang, dalam sumber Konfigurasikan sumber tolak imej (saya pilih tangkapan tetingkap di sini), klik "Tetapan" di penjuru kanan sebelah bawah, dan konfigurasikan alamat tolak strim seperti yang ditunjukkan di bawah

Cara nginx menggunakan modul nginx-rtmp-module untuk melaksanakan fungsi bilik siaran langsungSelepas konfigurasi selesai, klik "Mulakan" "Strim tolak"

Mulakan pemain video yang menyokong main balik penstriman rangkaian (tunjuk cara menggunakan pemain vlc)

Konfigurasikan alamat untuk penstriman rangkaian main balik, seperti yang ditunjukkan di bawah:

Cara nginx menggunakan modul nginx-rtmp-module untuk melaksanakan fungsi bilik siaran langsungSelepas mengklik "Main", tunggu beberapa saat dan anda akan melihat pemain memaparkan imej yang ditangkap oleh obs.

Cara nginx menggunakan modul nginx-rtmp-module untuk melaksanakan fungsi bilik siaran langsungMemandangkan strim video perlu dihantar melalui rangkaian, imej langsung akan ditangguhkan selama beberapa saat.

http akses video langsung

1 Tukar konfigurasi dalam nginx.conf, tambah konfigurasi hls (hls ialah folder yang digunakan untuk menyimpan media penstriman dalam pelayan media penstriman), dan masukkan semula. direktori di mana hls terletak Hanya tetapkan protokol http untuk mengakses direktori Konfigurasi yang diubah adalah seperti berikut:

rtmp {
 server {
  listen 1935;
  chunk_size 4096;

  application live {
   live on;
   hls on;
   hls_path /usr/share/nginx/html/hls;
   hls_fragment 5s;
  }
 }
}

http {
 server {
 listen 80;
 .....
 location / {
   #root html;
   root /usr/share/nginx/html;
   index index.html index.htm;
 }
 .....
 }
}

Nota: Pengguna nginx dalam direktori tempat hls berada mesti mempunyai kebenaran menulis.

2. Perisian Obs mengkonfigurasi nama strim rakaman

Di bawah konfigurasi URL strim obs, terdapat tempat untuk menetapkan "nama strim" di sini (Saya isikan contoh di sini) "test")

3. Mulakan semula perisian nginx dan obs Kita boleh masukkan http://ip/hls/test.m3u8 dalam pelayar mudah alih untuk memainkan video secara langsung telefon bimbit itu. (Kelewatan siaran langsung agak besar, dan artikel akan dioptimumkan kemudian)

Atas ialah kandungan terperinci Cara nginx menggunakan modul nginx-rtmp-module untuk melaksanakan fungsi bilik siaran langsung. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam