Το LOLS IRL μιλά τυπικό srtla συμβατό με BELABOX, οπότε ο δικός σου receiver συμπεριφέρεται ακριβώς όπως τα hosted relays μας. Εδώ είναι τι να τρέξεις, ποιες θύρες μετράνε και το ένα λάθος που εμποδίζει μια σύνδεση κινητής να φτάσει ποτέ στο μηχάνημά σου.
Δεν χρειάζεται να φιλοξενήσεις τίποτα: τα δωρεάν relays του LOLS Cloud υπάρχουν για να δουλεύει το bonding αμέσως, ή μπορείς να στήσεις δικό σου receiver και να μην εξαρτάσαι από κανέναν. Οι άνθρωποι επιλέγουν να φιλοξενούν για καλούς λόγους. Θες το stream να προσγειώνεται σε υποδομή που ελέγχεις, θες μηχάνημα φυσικά κοντά σου εκεί που δεν έχουμε relay κοντά, δεν θες κανένα όριο να σκέφτεσαι, ή απλά προτιμάς να τρέχεις τα δικά σου. Τίποτα στην εφαρμογή δεν είναι δεμένο με τους servers μας, οπότε η αλλαγή είναι αλλαγή hostname και τίποτα άλλο.
τηλέφωνο (wifi + κινητή)
|
| srtla, UDP, ένα socket ανά δίκτυο
v
srtla_rec ακούει σε δημόσια θύρα UDP, ξανασυνθέτει τις συνδέσεις
|
| απλό SRT, UDP, στο localhost
v
media server MediaMTX ή αντίστοιχο
|
+--> OBS, ή αναμετάδοση προς Twitch / Kick / YouTube
Δύο κομμάτια, και το καθένα έχει μία δουλειά. Το srtla_rec, από το project BELABOX, είναι το κομμάτι που καταλαβαίνει το bonding: κάθε σύνδεση που ανοίγει το κινητό σου εγγράφεται σε αυτό ως μέρος μιας ομάδας, και αυτό μετατρέπει την ομάδα ξανά σε ένα συνηθισμένο stream SRT. Μετά το προωθεί σε έναν SRT listener, εκεί που αναλαμβάνει ένας media server. Το MediaMTX είναι η συνηθισμένη επιλογή και μπορεί να δώσει το stream στο OBS, να το αναμεταδώσει ή να το καταγράψει, αλλά κάθε τι που δέχεται SRT κάνει.
Ο receiver πρέπει να είναι προσβάσιμος από κάθε δίκτυο μέσω του οποίου κάνει stream το κινητό σου, που στην πράξη σημαίνει δημόσια διεύθυνση. Ένα μικρό VPS αρκεί: αυτό είναι προώθηση πακέτων, όχι transcoding, οπότε μετράνε πολύ περισσότερο τα megabits και ένας μέτριος επεξεργαστής από τους πυρήνες. Βάλ' το γεωγραφικά κοντά στο μέρος που κάνεις stream, για τον ίδιο λόγο που διαλέγεις το πιο κοντινό relay: η απόσταση είναι καθυστέρηση που δεν παίρνεις πίσω, και πληρώνεται ξανά σε κάθε αναμετάδοση.
Ένας receiver στο δίκτυο του σπιτιού σου, σε κάτι σαν 192.168.1.50, φτάνει από το Wi-Fi σου και από τίποτα άλλο. Η σύνδεση κινητής δεν μπορεί να δρομολογηθεί προς ιδιωτική διεύθυνση, οπότε δεν εγγράφεται ποτέ και δεν έχεις bonding, κάνεις stream μέσω Wi-Fi με επιπλέον βήματα, και τα στατιστικά θα σου δείχνουν μία σύνδεση αντί για δύο.
Είτε φιλοξένησέ τον σε μηχάνημα με δημόσια διεύθυνση, είτε προώθησε τη θύρα UDP στο router σου προς το μηχάνημα στο δίκτυό σου και δείξε την εφαρμογή στη δημόσια διεύθυνση του router. Ένα δυναμικό όνομα DNS σε γλιτώνει από το να το ξαναγράφεις κάθε φορά που αλλάζει η διεύθυνσή σου.
| Port | Για τι χρησιμεύει |
|---|---|
| UDP, η θύρα srtla σου, εισερχόμενη από το internet | Η μόνη θύρα που αγγίζει το κινητό. Το 5000 είναι η σύμβαση. Κάθε bonded σύνδεση φτάνει από τη δική της διεύθυνση και θύρα πηγής, οπότε δεν υπάρχει τίποτα ανά σύνδεση να ανοίξεις ή να ρυθμίσεις. |
| UDP, ο SRT listener σου, τοπικά | Εκεί που το srtla_rec προωθεί το συναρμολογημένο stream. Το MediaMTX ακούει για SRT στο 8890 από προεπιλογή. Δεν χρειάζεται να εκτεθεί στο internet εκτός αν θες να δημοσιεύουν σε αυτό και απλοί SRT clients. |
| Ό,τι σερβίρει ο media server σου | RTMP, RTSP, HLS ή WebRTC προς το OBS ή προς θεατή, εξ ολοκλήρου δικό σου θέμα και όχι μέρος της διαδρομής bonding. |
Τα firewalls, τα cloud security groups και οι κανόνες προώθησης των routers πολύ συχνά έχουν ως προεπιλογή το TCP. Μια εγγραφή srtla που στέλνεται σε κανόνα μόνο για TCP εξαφανίζεται χωρίς κανένα σφάλμα πουθενά, κάτι που μοιάζει ακριβώς με receiver που είναι κάτω. Αν μια σύνδεση δεν εγγράφεται, έλεγξε το πρωτόκολλο στον κανόνα πριν ελέγξεις οτιδήποτε άλλο.
Το srtla_rec περνά το stream id του SRT όπως είναι, οπότε αυτό που μπαίνει στο πεδίο Stream id της εφαρμογής είναι ό,τι περιμένει ο server πίσω από αυτό. Με το MediaMTX αυτό είναι η μορφή publish, μια διαδρομή και προαιρετικά διαπιστευτήρια όταν είναι ενεργό το authentication:
publish:mypath
publish:mypath:username:password
Ενεργοποίησε το authentication αν η θύρα είναι ανοιχτή στο internet. Ένα publish endpoint χωρίς authentication σε δημόσια διεύθυνση θα το βρει κάποτε κάποιος που δεν είσαι εσύ.
srtla_rec.srtla_rec καταγράφει μία εγγραφή σύνδεσης ανά σύνδεση, όλες κάτω από μία ομάδα. Δύο συνδέσεις πρέπει να δώσουν δύο εγγραφές στην ίδια ομάδα. Αν βλέπεις πάντα μόνο μία, το δεύτερο δίκτυο δεν φτάνει στο host: ιδιωτική διεύθυνση, κανόνας firewall μόνο για TCP, ή VPN που τρέχει στο κινητό.Κόλλησες σε κάποιο βήμα, ή θες δεύτερη ματιά σε έναν receiver που δεν δέχεται τη δεύτερη σύνδεση; Ρώτα στο Discord ή στείλε email στο support@lols.gg. Φέρε την περιοχή που βρίσκεσαι, τι δείχνει το overlay στατιστικών και τι κατέγραψε ο receiver, και συνήθως λύνεται με δύο μηνύματα.
Σχετικά: bonding σε πέντε λεπτά για την πλευρά της εφαρμογής και πώς διαβάζεις τις ενδείξεις, χρήση των δωρεάν relays αν προτιμάς να μη φιλοξενήσεις, και όλοι οι οδηγοί.