Ρύθμιση του Nginx-RTMP στο Ubuntu 14.04

Το RTMP είναι εξαιρετικό για την προβολή ζωντανού περιεχομένου. Όταν το RTMP συνδυάζεται με το FFmpeg, οι ροές μπορούν να μετατραπούν σε διάφορες ποιότητες. Το Vultr είναι εξαιρετικό για αυτές τις εφαρμογές καθώς παρέχουν γρήγορη και αποκλειστική απόδοση της CPU. Το παγκόσμιο δίκτυο της Vultr διασφαλίζει επίσης ότι μπορείτε να παρέχετε ζωντανό περιεχόμενο υψηλής ποιότητας με ελάχιστη καθυστέρηση. Ας αρχίσουμε!

Εγκατάσταση Nginx και Nginx-RTMP

Εγκαταστήστε τα εργαλεία που απαιτούνται για τη μεταγλώττιση των Nginx και Nginx-RTMP από την πηγή.

sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev

Δημιουργήστε έναν κατάλογο εργασίας και μεταβείτε σε αυτόν.

mkdir ~/working
cd ~/working

Κάντε λήψη της πηγής Nginx και Nginx-RTMP.

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

Εγκαταστήστε το πακέτο Unzip.

sudo apt-get install unzip

Εξαγάγετε την πηγή Nginx και Nginx-RTMP.

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

Μεταβείτε στον κατάλογο Nginx.

cd nginx-1.7.5

Προσθέστε ενότητες με τις οποίες θα μεταγλωττιστεί το Nginx. Το Nginx-RTMP περιλαμβάνεται.

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

Μεταγλώττιση και εγκατάσταση του Nginx με Nginx-RTMP.

make
sudo make install

Εγκαταστήστε τα σενάρια init Nginx.

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

Εκκινήστε και σταματήστε το Nginx για τη δημιουργία αρχείων διαμόρφωσης.

sudo service nginx start
sudo service nginx stop

Εγκατάσταση FFmpeg

Προσθέστε το FFmpeg PPA.

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

Ενημερώστε τις λίστες πακέτων.

sudo apt-get update

Εγκαταστήστε το FFmpeg.

sudo apt-get install ffmpeg

Note: The apt-add-repository command may not be installed in some cases. To install it run sudo apt-get install software-properties-common.

Διαμόρφωση Nginx-RTMP και FFmpeg

Ανοίξτε το αρχείο διαμόρφωσης Nginx.

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

Προσθέστε τα ακόλουθα.

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

Αφού προσθέσετε τα παραπάνω, μπορείτε να προσαρμόσετε ρυθμίσεις όπως ρυθμό μετάδοσης bit βίντεο, ρυθμό μετάδοσης bit ήχου και ανάλυση. Αυτές οι αλλαγές θα εφαρμοστούν μόνο στη ροή χαμηλότερης ποιότητας. Για να προσθέσετε περισσότερες ποιότητες, αντιγράψτε και επικολλήστε τη γραμμή exec ffmpeg και αλλάξτε τις ρυθμίσεις. Θα χρειαστεί επίσης να δημιουργήσετε μια νέα εφαρμογή. Μπορείτε να το κάνετε αυτό αντιγράφοντας και επικολλώντας το παράδειγμα live360 που έχει συμπεριληφθεί. Μην ξεχάσετε να ενημερώσετε τη γραμμή exec ffmpeg με τη διεύθυνση της νέας εφαρμογής. Μπορείτε να το κάνετε αυτό αλλάζοντας την τελική διεύθυνση RTMP στη γραμμή exec ffmpeg.

Note: Changing the value after -b:v will change the video bitrate. This is measured in kilobits per second. Changing the value after -b:a will change the audio bitrate. This is measured in kilobits per second. Changing the value after -s will change the resolution.

Αποθηκεύστε το αρχείο πατώντας Control και X μαζί. Επανεκκινήστε το Nginx.

sudo service nginx restart

Note: For best performance, each stream being converted should have its own CPU core. For example two qualities, 360P and 480P are being created from a 720P stream. A Vultr instance with at least two CPU cores should be used.

Σημείωση ασφαλείας

Εάν χρησιμοποιείτε τείχος προστασίας, θα πρέπει να βεβαιωθείτε ότι επιτρέπεται το TCP 1935.

Η τρέχουσα διαμόρφωση επιτρέπει σε οποιονδήποτε να κάνει ροή στον διακομιστή σας. Μπορούμε να το διορθώσουμε επιτρέποντας μόνο σε συγκεκριμένες διευθύνσεις IP την άδεια δημοσίευσης. Ανοίξτε τη διαμόρφωση Nginx.

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

Αναζητήστε τις παρακάτω γραμμές.

                live on;
                record off;

Προσθέστε τα ακόλουθα σε κάθε σύνολο των παραπάνω γραμμών. Αλλάξτε το 0.0.0.0 στη διεύθυνση IP σας.

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

Η διαμόρφωση θα πρέπει τώρα να μοιάζει κάπως έτσι.

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 και X μαζί. Επανεκκινήστε το Nginx.

sudo service nginx restart

Διαμόρφωση λογισμικού ώστε να λειτουργεί με το Nginx-RTMP

Οι εφαρμογές ροής έχουν συνήθως δύο πεδία για πληροφορίες σύνδεσης. Το πρώτο πεδίο είναι συνήθως για τις πληροφορίες διακομιστή και το δεύτερο πεδίο είναι συνήθως για το όνομα ή το κλειδί ροής. Οι πληροφορίες που πρέπει να τοποθετήσετε σε κάθε πεδίο παρατίθενται. Το όνομα ή το κλειδί ροής μπορεί να οριστεί σε οτιδήποτε.

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

Για να δείτε ροές ανοίξτε τους παρακάτω συνδέσμους σε μια συσκευή αναπαραγωγής που υποστηρίζει RTMP.

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

Η ρύθμιση ενός προγράμματος αναπαραγωγής για προβολή ζωντανού βίντεο σε έναν ιστότοπο είναι πέρα ​​από το πεδίο εφαρμογής αυτού του οδηγού. Η αναζήτηση του όρου «RTMP web player» μπορεί να σας βοηθήσει.

Οδηγοί Linux, Ubuntu, Διακομιστές Ιστού

Αφήστε ένα σχόλιο

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα