Difference between revisions of "Nginx: Konfigurasi RTMP dengan HLS dan Dash"

From OnnoWiki
Jump to navigation Jump to search
Line 67: Line 67:
 
  }
 
  }
  
That is pretty much all we need. In his example configuration arut also shows us a simple ffmpeg configuration to stream a movie to either of the applications:
+
 
 +
Contoh sederhana untuk men-stream sebuah video .avi menggunakan ffmpeg:
  
 
  # ffmpeg -loglevel verbose -re -i movie.avi  -vcodec libx264
 
  # ffmpeg -loglevel verbose -re -i movie.avi  -vcodec libx264
Line 73: Line 74:
 
  #    -f flv rtmp://localhost:1935/hls/movie
 
  #    -f flv rtmp://localhost:1935/hls/movie
  
Now you are ready to go and test the stream on your mobile. There are different ways to playback the stream so you will probably want to google the best solution for your system (Android/iOS/WP).
 
  
Default playlist address in this setup is:
+
Default playlist address pada setup ini adalah:
  
 
  http://server.ip/hls/StreamKey.m3u8  
 
  http://server.ip/hls/StreamKey.m3u8  
  
The StreamKey in our example ffmpeg commandline was “movie”. Remember, the rtmp address is always rtmp://ip/ApplicationName/StreamKey. If you have questions, as always, post them below!
+
StreamKey pada contoh ffmpeg commandline di atas adalah “movie”. Ingat, address rtmp address selalu rtmp://ip/ApplicationName/StreamKey.
 +
 
  
  

Revision as of 13:42, 1 November 2014

Untuk mendukung HLS & Dash, kita perlu mengubah sedikit konfigurasi nginx.conf

vi /usr/local/nginx/conf/nginx.conf

ubah agar

http {

    server {

        listen      80;

        location /hls {
            # Serve HLS fragments
            types {
                application/vnd.apple.mpegurl m3u8;
                video/mp2t ts;
            }
            root /tmp;
            add_header Cache-Control no-cache;
        }

        location /dash {
            # Serve DASH fragments
            root /tmp;
            add_header Cache-Control no-cache;
        }
    }
}


Kita butuh menambahkan folder tmp/dash and tmp/hls di root folder untuk nginx.

mkdir /tmp/hls
mkdir /tmp/dash
chmod -Rf 777 /tmp/hls
chmod -Rf 777 /tmp/dash

Juga di bagian rtmp:

rtmp {

    server {

        listen 1935;
        chunk_size 4000;

        application live {
            live on;
            record off;
        }

        application hls {
            live on;
            hls on;
            hls_path /tmp/hls;
        }

        # MPEG-DASH is similar to HLS

        application dash {
            live on;
            dash on;
            dash_path /tmp/dash;
        }
    }
}


Contoh sederhana untuk men-stream sebuah video .avi menggunakan ffmpeg:

# ffmpeg -loglevel verbose -re -i movie.avi  -vcodec libx264
#    -vprofile baseline -acodec libmp3lame -ar 44100 -ac 1
#    -f flv rtmp://localhost:1935/hls/movie


Default playlist address pada setup ini adalah:

http://server.ip/hls/StreamKey.m3u8 

StreamKey pada contoh ffmpeg commandline di atas adalah “movie”. Ingat, address rtmp address selalu rtmp://ip/ApplicationName/StreamKey.




Referensi