WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας

WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας

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

Το σύστημα μετάδοσης ήχου και βίντεο μέσω του Διαδικτύου δεν θα πρέπει να εξαρτάται από τον εξοπλισμό, τους πελάτες Web και τα πρότυπα που υποστηρίζουν, και επίσης να λειτουργεί σωστά παρουσία Μεταφραστών Διευθύνσεων Δικτύου και τείχη προστασίας. Ένας χρήστης παρακολούθησης βίντεο cloud θέλει να έχει πρόσβαση στην υπηρεσία, ακόμα κι αν χρησιμοποιεί αναλογικές κάμερες, και προτιμά να παρακολουθεί ζωντανή μετάδοση βίντεο στην πιο σύγχρονη συσκευή.

Είναι πολύ σημαντικό ότι ο χρήστης θέλει να παρακολουθήσει βίντεο με ελάχιστη καθυστέρηση. Σχεδόν ο μόνος τρόπος εμφάνισης βίντεο με χαμηλό λανθάνοντα χρόνο σε ένα πρόγραμμα περιήγησης είναι να χρησιμοποιήσετε το WebRTC (επικοινωνίες ιστού σε πραγματικό χρόνο). Το WebRTC είναι ένα σύνολο τεχνολογιών για peer-to-peer μετάδοση βίντεο και ήχου σε προγράμματα περιήγησης, αρχικά σχεδιασμένο για μετάδοση και αναπαραγωγή ροών βίντεο με χαμηλή καθυστέρηση. Για το σκοπό αυτό, μεταξύ άλλων, χρησιμοποιείται το πρωτόκολλο UDP.

Πριν σας πούμε τι προσφέρει ο νέος κινητήρας στον χρήστη, θα σας υπενθυμίσουμε γιατί και γιατί υποστηρίζουμε τεχνολογίες HLS και γιατί αποφασίσαμε να προχωρήσουμε.

Κινητήρας HLS: πλεονεκτήματα και μειονεκτήματα

WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας
(c)

Η τεχνολογία HLS (HTTP Live Streaming) αναπτύχθηκε από την Apple, επομένως δεν αποτελεί έκπληξη το γεγονός ότι υποστηρίχθηκε για πρώτη φορά σε συσκευές Apple. Σήμερα, το βίντεο HLS υποστηρίζεται επίσης από σχεδόν όλους τους αποκωδικοποιητές και πολλές συσκευές που χρησιμοποιούν το λειτουργικό σύστημα. Android.

Ο κινητήρας HLS χρησιμοποιεί τον γνωστό κωδικοποιητή βίντεο H264 σε συνδυασμό με ροές ήχου AAC ή MP3 για τη ροή δεδομένων βίντεο. Ολόκληρη η ροή δεδομένων ήχου και βίντεο συσκευάζεται σε ένα κοντέινερ μεταφοράς MPEG-TS. Για μετάδοση μέσω του πρωτοκόλλου HTTP, οι πληροφορίες που περιέχονται στη ροή χωρίζονται σε τμήματα που περιγράφονται στις λίστες αναπαραγωγής m3u8. Και μόνο τότε αυτά τα τμήματα, μαζί με λίστες αναπαραγωγής, μεταδίδονται μέσω HTTP. Το τεμάχιο σημαίνει αυτόματα καθυστέρηση σε δευτερόλεπτα. Αυτό είναι ένα χαρακτηριστικό του κοντέινερ MPEG-TS.

Ο κινητήρας HLS υποστηρίζει επίσης ροές πολλαπλών bitrate, Live/VOD.

Τα κύρια πλεονεκτήματα του HLS:

  • ενσωματωμένη υποστήριξη σε όλα τα μεγάλα προγράμματα περιήγησης.
  • ευκολία υλοποίησης (σε σύγκριση με το WebRTC).
  • Είναι πολύ βολικό και αποτελεσματικό να οργανώνετε όλα τα είδη εκπομπών σε ένα μεγάλο κοινό λόγω του γεγονότος ότι τα τμήματα μπορούν να μεταφορτωθούν σε ένα CDN μία φορά.

Παρά την απλότητα του κινητήρα, δεν είναι όλα τόσο ομαλά όσο φαίνονται. Το κύριο πρόβλημα είναι ότι οι προγραμματιστές προγραμμάτων αναπαραγωγής τρίτων έχουν απομακρυνθεί από τις συστάσεις της Apple, για παράδειγμα όσον αφορά τις υποστηριζόμενες μορφές ήχου. Συγκεκριμένα, πολλοί προγραμματιστές άρχισαν να προσθέτουν τη δυνατότητα να δουλεύουν με δημοφιλείς ροές ήχου: βίντεο mpeg2, ήχος mpeg2 κ.λπ. Ως αποτέλεσμα, έπρεπε να δημιουργήσουν διαφορετικές μορφές λίστας αναπαραγωγής για διαφορετικούς παίκτες.

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

Η προέλευση των «φρένων»

Ο κύριος λόγος για τον υψηλό λανθάνοντα χρόνο του HLS έγκειται στο γεγονός ότι οι προγραμματιστές δημιούργησαν τον κινητήρα για να αποκτήσουν εικόνες υψηλής ποιότητας. Επομένως, οι παράμετροι του διαστήματος καρέ που χρησιμοποιείται και το μέγεθος του buffer αναπαραγωγής απλά δεν είναι κατάλληλες για ζωντανές μεταδόσεις βίντεο. Εξαιτίας αυτού, υπάρχει μια αρκετά μεγάλη καθυστέρηση στη μετάδοση του βίντεο, η οποία μπορεί να είναι 5-7 δευτερόλεπτα.

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

Εάν παρακολουθείτε ένα γραφείο όπου οι υπάλληλοι κοιτάζουν από τις οθόνες τους μία φορά την ώρα, τότε η καθυστέρηση 5 δευτερολέπτων δεν έχει καμία απολύτως σημασία. Αλλά οι άνθρωποι άρχισαν να παραπονιούνται ότι, για παράδειγμα, κατά τη μετάδοση ενός αγώνα ποδοσφαίρου, έγραψαν ήδη GOOOOL στη συνομιλία, αλλά αυτό δεν είναι ακόμα στο βίντεο :). Έχουμε ήδη μια σειρά από περιπτώσεις χρηστών όπου το Ivideon θα πρέπει πρακτικά να αντικαταστήσει το Skype.

Είναι δυνατόν να ξεπεραστεί η καθυστέρηση στο HLS; Η απάντηση σε αυτή την ερώτηση μοιάζει με την ομιλία ενός έμπειρου εξολοθρευτή αρουραίων σε μια διάλεξη σε αρχάριους ειδικούς ελέγχου παρασίτων: «Οι αρουραίοι δεν μπορούν να εξοντωθούν, αλλά ο αριθμός τους μπορεί να μειωθεί στο λογικό ελάχιστο». Το ίδιο με την καθυστέρηση στο HLS, δεν θα είναι δυνατό να μηδενιστεί, αλλά υπάρχουν λύσεις στην αγορά που μπορούν να μειώσουν σημαντικά την καθυστέρηση.

Ψιλά κοψίματα

Ένα άλλο μειονέκτημα του κινητήρα είναι η χρήση μικρών αρχείων για μεταφορά δεδομένων. Φαίνεται ότι τι είναι λάθος με αυτό;

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

Ας συνοψίσουμε εν συντομία όλα τα πλεονεκτήματα και τα μειονεκτήματα της τεχνολογίας HLS.

Πλεονεκτήματα του HLS:

  1. Δυνατότητα εργασίας με οποιαδήποτε συσκευή. Μπορείτε να παρακολουθήσετε βίντεο σε οποιαδήποτε σύγχρονη συσκευή, είτε πρόκειται για smartphone, tablet, φορητό υπολογιστή ή επιτραπέζιο υπολογιστή. Το κύριο πράγμα είναι ότι το πρόγραμμα περιήγησης ιστού είναι ενημερωμένο και συμβατό με HTML5 και επεκτάσεις πηγής πολυμέσων.
  2. Εξαιρετική ποιότητα εικόνας. Η προσαρμοστική λειτουργία μετάδοσης δεδομένων που χρησιμοποιείται σάς επιτρέπει να αλλάζετε δυναμικά την ποιότητα του μεταδιδόμενου βίντεο ανάλογα με το εύρος ζώνης της σύνδεσης στο Διαδίκτυο, ενώ ο αλγόριθμος προσπαθεί να διατηρήσει τη μέγιστη ποιότητα.
  3. Δεν χρειάζεται πολύπλοκη διαμόρφωση του εξοπλισμού του χρήστη.

Μειονεκτήματα:

  1. Περιορισμένη υποστήριξη για εργασία με τον κινητήρα σε ορισμένες συσκευές.
  2. Υψηλές καθυστερήσεις στη μετάδοση εικόνας.
  3. Σημαντική αύξηση των γενικών εξόδων και πολυπλοκότητα της βελτιστοποίησης λόγω της χρήσης μικρών αρχείων. Λόγω της φύσης του κοντέινερ, δεν θα μπορέσουμε ποτέ να λάβουμε καθυστέρηση μικρότερη από το μέγεθος του τμήματος.

Τα μειονεκτήματα του HLS ξεπέρασαν τα πλεονεκτήματά του για εμάς και μας ανάγκασαν να αναζητήσουμε εναλλακτικές επιλογές.

Τι είναι το WebRTC

WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας
(c)

Η πλατφόρμα WebRTC αναπτύχθηκε από την Google το 2011 για τη ροή δεδομένων βίντεο και ήχου μεταξύ προγραμμάτων περιήγησης και εφαρμογών για κινητές συσκευές με ελάχιστο λανθάνοντα χρόνο. Για αυτό, χρησιμοποιούνται το τυπικό πρωτόκολλο UDP και οι ειδικοί αλγόριθμοι ελέγχου ροής. Σήμερα είναι έργο ανοιχτού κώδικα, υποστηρίζεται ενεργά από την Google και βρίσκεται υπό ανάπτυξη.

Το WebRTC είναι ένα σύνολο τεχνολογιών για peer-to-peer μετάδοση βίντεο και ήχου. Δηλαδή, για παράδειγμα, τα προγράμματα περιήγησης χρηστών που χρησιμοποιούν WebRTC μπορούν να μεταφέρουν δεδομένα το ένα στο άλλο απευθείας, χωρίς να χρησιμοποιούν απομακρυσμένους διακομιστές για την αποθήκευση και την επεξεργασία δεδομένων. Όλες οι πληροφορίες επεξεργάζονται επίσης τα προγράμματα περιήγησης των τελικών χρηστών και τις εφαρμογές για κινητά.

Η ευκολία και οι εκτεταμένες δυνατότητες αυτής της τεχνολογίας έχουν εκτιμηθεί από τους προγραμματιστές όλων των δημοφιλών προγραμμάτων περιήγησης. Η υποστήριξη WebRTC είναι προς το παρόν διαθέσιμη στα Mozilla Firefox, Opera, Google Chrome (και σε όλα τα προγράμματα περιήγησης που βασίζονται στο Chromium), καθώς και σε εφαρμογές για κινητά που εκτελούνται. Android και iOS.

Παρά όλα τα αναμφισβήτητα πλεονεκτήματά του, το WebRTC έχει αρκετά σημαντικά μειονεκτήματα.

Δυσκολίες επιλογής

Η τεχνολογία WebRTC είναι πολύ πιο περίπλοκη όσον αφορά τις αλληλεπιδράσεις δικτύου λόγω του γεγονότος ότι πρόκειται για P2P. Είναι δύσκολο να διορθώσετε σφάλματα, να δοκιμάσετε και να συμπεριφέρεστε απρόβλεπτα. Ταυτόχρονα, πρέπει να ξεπεράσουμε το NAT και το τείχος προστασίας, πρέπει να διασφαλίσουμε τη λειτουργία σε δίκτυα όπου το UDP είναι αποκλεισμένο.

Η εφαρμογή WebRTC της Google είναι πολύ δύσκολη στη χρήση. Υπάρχει ακόμη και μια ολόκληρη εταιρεία που παρέχει υπηρεσίες συναρμολόγησης SDK. Επιπλέον, η υλοποίηση της Google ήταν πολύ δύσκολο να ενσωματωθεί στο σύστημά μας χωρίς να επανακωδικοποιηθεί ολόκληρο το βίντεο.

Ωστόσο, από καιρό θέλαμε να δώσουμε στους χρήστες την ευκαιρία να εργαστούν με πλήρες "ζωντανό" βίντεο και να ελαχιστοποιήσουμε την υστέρηση μεταξύ της εικόνας στην οθόνη και των ίδιων των γεγονότων. Επιπλέον, είχαμε την επιθυμία να κάνουμε τη χρήση των καμερών PTZ, όπου οι καθυστερήσεις είναι κρίσιμες, πιο άνετη.

Λαμβάνοντας υπόψη ότι άλλες εφαρμογές anti-lag εξακολουθούν να έχουν περιορισμένη λειτουργικότητα και λειτουργούν αισθητά χειρότερα, αποφασίσαμε να χρησιμοποιήσουμε το WebRTC.

Τι καναμε

WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας

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

Για να λειτουργήσει σωστά το WebRTC, πρώτα απ 'όλα, είναι απαραίτητο να πραγματοποιηθεί μια τεχνολογική αναβάθμιση της στοίβας για εργασία με βίντεο web. Αυτό κάναμε.

Αρχικά, εφαρμόσαμε έναν διακομιστή πρωτοκόλλου σηματοδότησης WebRTC πάνω από το Websocket και επίσης αναπτύξαμε έναν διακομιστή ομότιμων WebRTC στο cloud που βασίζεται στο webrtc.org SDK. Η αποστολή του είναι να διανέμει ροές βίντεο σε ομότιμους WebRTC-πελάτες σε μορφή H.264 + Opus/G.711 χωρίς διακωδικοποίηση βίντεο.

Επιλέξαμε το Websocket ως πρωτόκολλο σηματοδότησης επειδή έχει ήδη υποστήριξη υψηλής ποιότητας σε όλα τα δημοφιλή προγράμματα περιήγησης ιστού. Λόγω αυτού, μπορείτε να μειώσετε σημαντικά όχι μόνο τα έξοδα ανάπτυξης, αλλά και να αποφύγετε τη σπατάλη χρόνου και πόρων σε επαναλαμβανόμενες χειραψίες TCP και TLS σε σύγκριση με το AJAX.

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

Και για να εφαρμόσουμε ανεξάρτητα την τεχνολογία σηματοδότησης, χρειάστηκε να αναπτύξουμε τον δικό μας διακομιστή σηματοδότησης με υποστήριξη για πολλά πρωτόκολλα Ιστού (Websocet, WebRTC). Και με τη δυνατότητα ασφαλούς διαχείρισης περιόδων σύνδεσης και ειδοποιήσεων σε πραγματικό χρόνο, διαχείριση βίντεο και πολλά άλλα.

Ξεπεράσαμε τους περιορισμούς του P2P μειώνοντας τον λανθάνοντα χρόνο όχι μέσω του P2P, αλλά μέσω του UDP και του ελέγχου ροής με στόχο τη μείωση της καθυστέρησης. Αυτό είναι επίσης ενσωματωμένο στο WebRTC, καθώς η κύρια περίπτωση χρήσης είναι οι συνομιλίες p2p μέσω ενός προγράμματος περιήγησης.

Στο πρόγραμμα-πελάτη για κινητά, εφαρμόσαμε το πρόγραμμα αναπαραγωγής χρησιμοποιώντας το webrtc.org SDK, αφού μόνο αυτό εφαρμόζει σωστά τον έλεγχο ροής, έχει όλα τα γνωστά σχήματα Forward Error Correction (FEC) και εφαρμόζει σωστά τον μηχανισμό για την εκ νέου αποστολή πακέτων για όλα τα προγράμματα περιήγησης. Είναι επίσης σημαντικό ότι το webrtc.org SDK αναπτύσσεται ενεργά από την Google.

Ποιο είναι το αποτέλεσμα της εφαρμογής WebRTC;


Για να δείτε ζωντανά βίντεο από κάμερες, προσθέσαμε στον προσωπικό σας λογαριασμό ένα νέο βελτιστοποιημένο πρόγραμμα αναπαραγωγής βασισμένο στο WebRTC. Παρέχει γρήγορες ταχύτητες φόρτωσης βίντεο και εξαλείφει εντελώς το πρόβλημα της συσσώρευσης καθυστέρησης καθώς αυξάνεται ο χρόνος προβολής.

Μετά την εισαγωγή της υποστήριξης WebRTC στην υπηρεσία cloud Ivideon, μπορούμε να πούμε με απόλυτη σιγουριά ότι οι πελάτες μας μπορούν πλέον να βλέπουν πλήρες ζωντανό βίντεο. Τώρα η καθυστέρηση μετάδοσης σεκάνς βίντεο δεν ξεπερνά το ένα δευτερόλεπτο! Για σύγκριση, η προηγούμενη μηχανή HLS παρείχε παράδοση βίντεο με καθυστέρηση 5-7 δευτερολέπτων. Η διαφορά στην ταχύτητα επίδειξης βίντεο είναι πολύ σημαντική και ο χρήστης θα την παρατηρήσει αμέσως μετά την έναρξη της εργασίας με την υπηρεσία βίντεο.

Όπως περιμέναμε, η εφαρμογή του νέου προγράμματος αναπαραγωγής έχει βελτιώσει την ανταπόκριση του PTZ και την φωνητική επικοινωνία με την κάμερα.

WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας

Υπάρχει μόνο ένα λεπτό σημείο στο οποίο θέλουμε να επιστήσουμε την προσοχή. Το νέο πρόγραμμα αναπαραγωγής WebRTC λειτουργεί αυτήν τη στιγμή σε δοκιμαστική λειτουργία. Και γι' αυτό δεν το ενεργοποιούμε για όλους τους πελάτες μας από προεπιλογή. Αλλά μπορείτε να το ενεργοποιήσετε μόνοι σας ενεργοποιώντας το αντίστοιχο στοιχείο στις ρυθμίσεις της κάμερας (για να το κάνετε αυτό πρέπει να μεταβείτε στο προσωπικό λογαριασμό).

Χαρακτηριστικά της υλοποίησης του WebRTC στην υπηρεσία Ivideon

WebRTC και παρακολούθηση βίντεο: πώς νικήσαμε τον λανθάνοντα χρόνο βίντεο της κάμερας

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

Αυτός είναι ακριβώς ο λόγος που δεν έχουμε κάνει ακόμη το πρόγραμμα αναπαραγωγής WebRTC το προεπιλεγμένο πρόγραμμα αναπαραγωγής για όλους τους χρήστες.

Προς το παρόν, συνιστούμε να χρησιμοποιείτε το WebRTC μόνο σε προγράμματα περιήγησης Google Chrome. Οι τελευταίες εκδόσεις του Firefox και του Safari υποστηρίζουν επίσης αυτήν την τεχνολογία, αλλά, δυστυχώς, δεν είναι ακόμη σταθερή.

Δεν έχουμε ακόμη εφαρμόσει υποστήριξη WebRTC για προγράμματα περιήγησης σε κινητές συσκευές. Επί του παρόντος, εάν συνδεθείτε από μια κινητή συσκευή και ενεργοποιήσετε το WebRTC, αυτή η λειτουργία δεν θα λειτουργήσει. Ωστόσο, το WebRTC είναι διαθέσιμο στις εφαρμογές μας για κινητές συσκευές για Android и iOS.

Και ολοκληρώνοντας την ιστορία σχετικά με τα χαρακτηριστικά της εφαρμογής WebRTC στην υπηρεσία μας, ας σημειώσουμε δύο ακόμη λεπτά σημεία.

Πρώτον, η τεχνολογία επικεντρώνεται στη μετάδοση ζωντανού βίντεο σε πραγματικό χρόνο. Επομένως, εάν το κανάλι σας δεν έχει αρκετό εύρος ζώνης για τη μετάδοση του βίντεο, θα παρατηρήσετε πτώση καρέ (με το HLS θα παρατηρήσετε ξεθώριασμα και αυξημένο λανθάνοντα χρόνο, αλλά δεν θα υπάρχουν πτώσεις καρέ), αλλά το βίντεο θα συνεχίσει να μεταδίδεται σε πραγματικό φορά.

Δεύτερον, δεδομένου ότι η τεχνολογία έχει σχεδιαστεί για να λειτουργεί ειδικά με ζωντανό βίντεο σε πραγματικό χρόνο, δεν τη χρησιμοποιούμε για να εργαστούμε με αρχειοθετημένα δεδομένα βίντεο.

Άλλες αλλαγές στην υπηρεσία

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

Ακολουθεί μια σύντομη επισκόπηση των αλλαγών που σας περιμένουν στο σύστημα παρακολούθησης βίντεο cloud και στον προσωπικό μας λογαριασμό. Μείνετε μαζί μας και ακολουθήστε τα νέα!

Πηγή: www.habr.com

Αγοράστε αξιόπιστη φιλοξενία για ιστότοπους με προστασία DDoS, διακομιστές VPS VDS 🔥 Αγοράστε αξιόπιστη φιλοξενία ιστοσελίδων με προστασία DDoS, διακομιστές VPS VDS | ProHoster