{"id":32314,"date":"2019-10-31T21:46:17","date_gmt":"2019-10-31T18:46:17","guid":{"rendered":"https:\/\/prohoster.info\/blog\/webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer\/"},"modified":"2019-10-31T21:46:17","modified_gmt":"2019-10-31T18:46:17","slug":"webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer","title":{"rendered":"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere\" src=\"\/wp-content\/uploads\/2019\/04\/d185b546f5fc4c15021481c0cc2fedbd.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSin dai primi giorni di lavoro sul sistema di videosorveglianza cloud, ci siamo imbattuti in un problema la cui soluzione sembrava impossibile: era la nostra Everest, la cui scalata ci ha richiesto enormi sforzi, ma ora finalmente abbiamo piantato la piccozza sulla vetta di questo rompicapo multipiattaforma.<\/p>\n<p>Il sistema di trasmissione audio e video su Internet non dovrebbe dipendere dall'hardware, dai client Web e dagli standard supportati, e dovrebbe funzionare correttamente anche in presenza di Network Address Translators e firewall. L'utente della videosorveglianza cloud desidera accedere al servizio anche se utilizza telecamere analogiche e preferisce visualizzare la trasmissione di un video in diretta su un dispositivo all'avanguardia. <\/p>\n<p>\u00c8 molto significativo che l'utente voglia guardare video con la minima latenza. L'unica possibilit\u00e0 per mostrare video a bassa latenza nel browser \u00e8 utilizzare WebRTC (web real-time communications). WebRTC \u00e8 un insieme di tecnologie per la trasmissione peer-to-peer di video e audio nei browser, originariamente progettato per la trasmissione e riproduzione di flussi video a bassa latenza. Questo, tra l'altro, utilizza il protocollo UDP.<\/p>\n<p>Prima di spiegarti cosa offre all'utente il nuovo motore, ti ricorderemo perch\u00e9 e per quale motivo supportiamo le tecnologie HLS e perch\u00e9 abbiamo deciso di andare avanti.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Motore HLS: pro e contro<\/h2>\n<p>\n<img decoding=\"async\" alt=\"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere\" src=\"\/wp-content\/uploads\/2019\/04\/f025d08eb22f7785090b8bc60194643c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n(<noindex><a rel=\"nofollow\" href=\"https:\/\/www.encoding.com\/http-live-streaming-hls\/\">c<\/a><\/noindex>)<\/p>\n<p>La tecnologia HLS (HTTP Live Streaming) \u00e8 stata sviluppata da Apple, quindi non sorprende che inizialmente il suo supporto sia apparso sui dispositivi di questo marchio. Oggi, il video in formato HLS \u00e8 supportato praticamente da tutte le TV set-top box e molti dispositivi che utilizzano il sistema operativo Android.<\/p>\n<p>Il motore HLS utilizza il ben noto codec video H264 insieme a flussi audio AAC o MP3 per la trasmissione in streaming dei dati video. L'intero flusso di dati audio e video viene imballato in un contenitore MPEG-TS. Per la trasmissione tramite il protocollo HTTP, le informazioni contenute nel flusso vengono suddivise in segmenti descritti nelle playlist m3u8. Solo allora questi segmenti vengono trasmessi insieme alle playlist tramite HTTP. La suddivisione in segmenti implica automaticamente un ritardo in secondi. Questa \u00e8 una caratteristica del contenitore MPEG-TS. <\/p>\n<p>Il motore HLS supporta anche flussi multibit-rate, Live\/VOD. <\/p>\n<p><b>Principali vantaggi dell'HLS:<\/b><\/p>\n<ul>\n<li>supporto integrato in tutti i principali browser;<\/li>\n<li>semplicit\u00e0 di implementazione (rispetto a WebRTC);<\/li>\n<li>\u00e8 molto comodo ed efficace organizzare vari eventi per un grande pubblico grazie al fatto che si possono caricare segmenti una sola volta su CDN.<\/li>\n<\/ul>\n<p>\nNonostante la semplicit\u00e0 del motore, non tutto \u00e8 cos\u00ec fluido come sembra. Il principale problema \u00e8 che gli sviluppatori di lettori di terze parti si sono discostati dalle raccomandazioni di Apple, ad esempio per quanto riguarda i formati audio supportati. In particolare, molti sviluppatori hanno iniziato ad aggiungere la possibilit\u00e0 di lavorare con flussi audio popolari: mpeg2 video, mpeg2 audio, ecc. Di conseguenza, \u00e8 stato necessario creare diversi formati di playlist per lettori diversi.<\/p>\n<p>Ma uno dei maggiori problemi del motore HLS \u00e8 l'alto ritardo nella trasmissione dei dati.<\/p>\n<h2>Le origini dei \"lag\"<\/h2>\n<p>\nLa principale causa dell'alto ritardo in HLS risiede nel fatto che i programmatori hanno creato il motore per ottenere la massima qualit\u00e0 dell'immagine. Pertanto, i parametri dell'intervallo di frame e il volume del buffer di riproduzione non sono adatti per le trasmissioni video in diretta. Questo porta a un ritardo piuttosto elevato nella trasmissione video, che pu\u00f2 raggiungere i 5-7 secondi.<\/p>\n<p>Da un lato, questo \u00e8 poco, ad esempio, per chi guarda un film da un server di video hosting. Ma per i sistemi di videosorveglianza il ritardo nella trasmissione video pu\u00f2 essere molto rilevante.<\/p>\n<p>Se stai monitorando un ufficio dove i dipendenti si allontanano dallo schermo ogni ora, allora un ritardo di 5 secondi non ha alcun valore. Ma le persone hanno iniziato a lamentarsi che, ad esempio, durante la trasmissione di una partita di calcio, nel chat hanno gi\u00e0 scritto GOOOOOL, mentre nel video questo non \u00e8 ancora apparso :). Abbiamo gi\u00e0 diversi casi d'uso in cui Ivideon deve praticamente sostituire Skype.<\/p>\n<p>Si pu\u00f2 eliminare il ritardo in HLS? La risposta a questa domanda suona come un discorso di un esperto cacciatore di ratti in una lezione per nuovi derattizzatori: \"Non si possono estirpare i ratti, ma la loro popolazione pu\u00f2 essere ridotta a un minimo ragionevole.\" Cos\u00ec \u00e8 con il ritardo in HLS, non sar\u00e0 possibile ridurlo a zero, ma sul mercato ci sono soluzioni che consentono di ridurre notevolmente il ritardo.<\/p>\n<h2>Segmentazione fine<\/h2>\n<p>\nUn altro svantaggio del motore \u00e8 l'uso di file di dimensioni ridotte per la trasmissione dei dati. Sembra che non ci sia nulla di male in questo?<\/p>\n<p>Chiunque abbia cercato di copiare un gran numero di piccoli file da un'unit\u00e0 a un'altra avr\u00e0 sicuramente notato che la velocit\u00e0 di scrittura di un insieme del genere \u00e8 notevolmente inferiore a quella di un singolo grande file di pari dimensioni. Inoltre, l'intensit\u00e0 delle operazioni sul disco rigido aumenta notevolmente, il che influisce negativamente sulle prestazioni complessive del computer. Pertanto, la trasmissione di dati video sotto forma di piccoli frammenti di 10 secondi contribuisce anche ad aumentare la latenza del motore.<\/p>\n<p>Riassumiamo brevemente tutti i pro e contro della tecnologia HLS.<\/p>\n<p><b>Vantaggi dell'HLS:<\/b><\/p>\n<ol>\n<li>Possibilit\u00e0 di lavorare con qualsiasi dispositivo. Puoi guardare video su qualsiasi dispositivo moderno, sia esso uno smartphone, un tablet, un laptop o un PC desktop. L'importante \u00e8 che il browser web sia di una versione recente e compatibile con HTML5 e Media Source Extensions.<\/li>\n<li>Ottima qualit\u00e0 delle immagini. La funzione di streaming adattivo consente di modificare dinamicamente la qualit\u00e0 del video trasmesso in base alla larghezza di banda della connessione Internet, cercando di mantenere la massima qualit\u00e0.<\/li>\n<li>Nessuna necessit\u00e0 di una configurazione complessa dell'hardware da parte dell'utente.<\/li>\n<\/ol>\n<p>\n<b>Svantaggi:<\/b><\/p>\n<ol>\n<li>Supporto limitato per il funzionamento del motore su alcuni dispositivi.<\/li>\n<li>Alte latenze nella trasmissione delle immagini.<\/li>\n<li>Aumento significativo delle inefficienze e complessit\u00e0 di ottimizzazione a causa dell'uso di file di piccole dimensioni. A causa delle caratteristiche del contenitore, non saremo mai in grado di ottenere una latenza inferiore alla dimensione del segmento.<\/li>\n<\/ol>\n<p>\nGli svantaggi dell'HLS hanno superato i suoi vantaggi e ci hanno costretti a cercare alternative.<\/p>\n<h2>Cos'\u00e8 WebRTC<\/h2>\n<p>\n<img decoding=\"async\" alt=\"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere\" src=\"\/wp-content\/uploads\/2019\/04\/0cf3c13dba71f6b268113af77841e521.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n(<noindex>c<\/noindex>)<\/p>\n<p>La piattaforma WebRTC \u00e8 stata sviluppata da Google nel 2011 per la trasmissione di dati video e audio in streaming tra browser e app mobili con latenza minima. Per questo viene utilizzato il protocollo standard UDP e algoritmi speciali di gestione del flusso. Oggi \u00e8 un progetto open source, attivamente supportato e sviluppato da Google.<\/p>\n<p>WebRTC \u00e8 un insieme di tecnologie per la trasmissione peer-to-peer di video e audio. Ci\u00f2 significa che, ad esempio, i browser degli utenti possono utilizzare WebRTC per inviare dati direttamente l'uno all'altro, senza bisogno di server remoti per l'archiviazione e l'elaborazione dei dati. Tutte le informazioni vengono gestite dai browser e dalle applicazioni mobili degli utenti finali.<\/p>\n<p>Le comodit\u00e0 e le grandi potenzialit\u00e0 di questa tecnologia sono state apprezzate dagli sviluppatori di tutti i browser popolari. Oggi, il supporto per WebRTC \u00e8 implementato in Mozilla Firefox, Opera, Google Chrome (e in tutti i browser basati su Chromium), oltre che nelle applicazioni mobili per Android e iOS.<\/p>\n<p>Nonostante i suoi indiscutibili vantaggi, WebRTC presenta alcuni svantaggi significativi. <\/p>\n<h2>Difficolt\u00e0 di scelta<\/h2>\n<p>\nLa tecnologia WebRTC \u00e8 molto pi\u00f9 complessa in termini di interazioni di rete poich\u00e9 si basa sul P2P. \u00c8 difficile da debug, da testare, e pu\u00f2 comportarsi in modo imprevedibile. Inoltre, dobbiamo superare NAT e firewall, e garantire il funzionamento in reti dove l'UDP \u00e8 bloccato.<\/p>\n<p>L'implementazione di WebRTC da parte di Google \u00e8 molto difficile da utilizzare. Esiste persino un'intera azienda che offre servizi di assemblaggio SDK. Inoltre, \u00e8 stato molto complesso integrare l'implementazione di Google con il nostro sistema senza dover ricodificare tutto il video.<\/p>\n<p>Tuttavia, volevamo da tempo offrire agli utenti la possibilit\u00e0 di lavorare con un video \u2018live\u2019 completo e minimizzare il ritardo dell'immagine sullo schermo rispetto agli eventi stessi. Inoltre, avevamo la volont\u00e0 di rendere pi\u00f9 confortevole l'uso di telecamere PTZ, dove i ritardi hanno un\u2019importanza critica.<\/p>\n<p>Considerando che altre implementazioni per combattere il lag hanno ancora funzionalit\u00e0 limitate e funzionano visibilmente peggio, abbiamo deciso di utilizzare WebRTC. <\/p>\n<h2>Cosa abbiamo fatto<\/h2>\n<p>\n<img decoding=\"async\" alt=\"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere\" src=\"\/wp-content\/uploads\/2019\/04\/714f94de43114e552e4d818e9ec927ae.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nImplementare correttamente la piattaforma WebRTC \u00e8 un compito complicato. Ogni errore o imprecisione pu\u00f2 comportare un aumento dei ritardi nella trasmissione del video, anzich\u00e9 una loro riduzione rispetto ad altre piattaforme.<\/p>\n<p>Per il corretto funzionamento di WebRTC, \u00e8 fondamentale effettuare un ammodernamento tecnologico dello stack per la gestione video web. E questo \u00e8 esattamente ci\u00f2 che abbiamo fatto.<\/p>\n<p>Inizialmente abbiamo implementato un server di segnalazione del protocollo WebRTC sopra Websocket e abbiamo anche distribuito un server peer WebRTC nel cloud basato su SDK webrtc.org. Il suo compito \u00e8 quello di distribuire flussi video ai peer WebRTC client in formato H.264 + Opus\/G.711 senza riconversione video.<\/p>\n<p>Abbiamo scelto Websocket come protocollo di segnalazione perch\u00e9 offre gi\u00e0 un supporto di qualit\u00e0 in tutti i browser web pi\u00f9 diffusi. Questo ci consente di ridurre notevolmente sia i costi di sviluppo che il tempo e le risorse spesi per ripetere handshake TCP e TLS rispetto ad AJAX.<\/p>\n<p>Il fatto \u00e8 che, per impostazione predefinita, WebRTC non fornisce un protocollo di segnalazione necessario per configurare, mantenere e interrompere correttamente le videochiamate in tempo reale tra le applicazioni sorgenti e client.<\/p>\n<p>E per implementare autonomamente la tecnologia di segnalazione, era necessario sviluppare il nostro server di segnalazione con supporto per pi\u00f9 protocolli web (Websocet, WebRTC). Inoltre, con la capacit\u00e0 di gestire in modo sicuro le sessioni e le notifiche in tempo reale, la gestione video e molti altri parametri.<\/p>\n<p>Abbiamo superato le limitazioni P2P riducendo la latenza non a causa del P2P, ma attraverso UDP e gestione del flusso, mirata a ridurre la latenza. Questo \u00e8 anche integrato in WebRTC, poich\u00e9 il caso d'uso principale sono le conversazioni p2p attraverso il browser.<\/p>\n<p>Nel client mobile abbiamo implementato un lettore utilizzando l'SDK webrtc.org, poich\u00e9 solo in esso \u00e8 gestita correttamente la gestione del flusso, sono presenti tutti i noti schemi di Forward Error Correction (FEC) e il meccanismo di ritrasmissione dei pacchetti \u00e8 ben implementato per tutti i browser. Non \u00e8 trascurabile il fatto che l'SDK webrtc.org \u00e8 attivamente sviluppato da Google.<\/p>\n<h2>Qual \u00e8 il risultato dell'implementazione di WebRTC?<\/h2>\n<p>\n<center><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/vk.com\/video_ext.php\" frameborder=\"0\" allowfullscreen><\/iframe><\/center><br \/>\nPer la visione di video in diretta dalle telecamere, abbiamo aggiunto nel pannello personale un nuovo lettore ottimizzato basato su WebRTC. Questo garantisce un'alta velocit\u00e0 di caricamento del video e elimina completamente il problema dell'accumulo di ritardo man mano che aumenta il tempo di visione.<\/p>\n<p>Dopo l'implementazione del supporto WebRTC nel servizio cloud di Ivideon, possiamo affermare con piena certezza che i nostri clienti possono ora accedere alla visione di un video in diretta completo. Attualmente, il ritardo nella trasmissione del video non supera un secondo! Per confronto, il precedente motore HLS garantiva la consegna del video con un ritardo di 5-7 secondi. La differenza nella velocit\u00e0 di visualizzazione del video \u00e8 molto significativa e l'utente la notr\u00e0 subito dopo aver iniziato a utilizzare il nostro servizio video.<\/p>\n<p>Come prevedevamo, l'implementazione del nuovo lettore ha migliorato la reattivit\u00e0 del PTZ e della comunicazione vocale con la telecamera.<\/p>\n<p><img decoding=\"async\" alt=\"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere\" src=\"\/wp-content\/uploads\/2019\/04\/b6775b11fbc6d97a7cede32cccc471ab.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nC'\u00e8 solo un dettaglio sottile a cui vogliamo richiamare l'attenzione. Il nuovo lettore WebRTC \u00e8 attualmente in fase di test. Ecco perch\u00e9 non lo colleghiamo a tutti i nostri clienti di default. Ma puoi attivarlo autonomamente, attivando l'apposita opzione nelle impostazioni della telecamera (per fare ci\u00f2, devi andare nel <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.ivideon.com\/my\/\">panello di controllo<\/a><\/noindex>).<\/p>\n<h2>Caratteristiche dell'implementazione di WebRTC nel servizio Ivideon<\/h2>\n<p>\n<img decoding=\"async\" alt=\"WebRTC e videosorveglianza: come abbiamo superato il ritardo video delle telecamere\" src=\"\/wp-content\/uploads\/2019\/04\/247e640fa9334a0c144cc6b4296dc23b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWebRTC \u00e8 ancora una tecnologia sperimentale. Il suo supporto non \u00e8 ancora implementato correttamente in tutti i browser e dispositivi utente, cos\u00ec come in tutte le telecamere.<\/p>\n<p>\u00c8 proprio per questo che non abbiamo ancora reso il lettore WebRTC il predefinito per tutti gli utenti.<\/p>\n<p>Per ora, ti consigliamo di utilizzare WebRTC solo nei browser Google Chrome. Le ultime versioni di Firefox e Safari supportano anche questa tecnologia, ma purtroppo sono ancora instabili. <\/p>\n<p>Non abbiamo ancora implementato il supporto WebRTC per i browser sui dispositivi mobili. Attualmente, se accedi da un dispositivo mobile e attivi WebRTC, questa modalit\u00e0 non funzioner\u00e0. Tuttavia, WebRTC \u00e8 presente nelle nostre applicazioni mobili per <noindex><a rel=\"nofollow\" href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.ivideon.client&amp;hl=ru\">Android<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/itunes.apple.com\/ru\/app\/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE%D0%BD%D0%B0%D0%B1%D0%BB%D1%8E%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-ivideon\/id464234175?mt=8\">iOS<\/a><\/noindex>.<\/p>\n<p>E concludendo la nostra esposizione delle caratteristiche dell'implementazione di WebRTC nel nostro servizio, evidenziamo ulteriori due dettagli sottili.<\/p>\n<p>In primo luogo, la tecnologia \u00e8 orientata alla trasmissione di video in diretta in tempo reale. Pertanto, se la larghezza di banda del tuo canale non sar\u00e0 sufficiente per la trasmissione del video, noterai delle cadute di frame (con l'HLS noterai congelamenti del video e un aumento del ritardo, mentre i frame non cadranno), ma il video continuer\u00e0 comunque a essere trasmesso in tempo reale.<\/p>\n<p>In secondo luogo, poich\u00e9 la tecnologia \u00e8 progettata per funzionare specificamente con video dal vivo in tempo reale, non la utilizziamo per lavorare con dati video archiviati.<\/p>\n<h2>Altre modifiche al servizio<\/h2>\n<p>\nAttualmente, Flash non \u00e8 pi\u00f9 coinvolto nel meccanismo di selezione automatica del motore. \u00c8 ancora possibile utilizzare un lettore di questo tipo, ma \u00e8 necessario selezionarlo manualmente nelle impostazioni dell'account o della telecamera. Non \u00e8 una questione di moda, ma semplicemente per statistiche del nostro servizio, praticamente non ci sono pi\u00f9 utenti che utilizzano Flash. E per l'eventuale tentativo di determinare se il browser dell'utente supporta Flash, perdiamo circa 2 secondi di tempo prezioso. <\/p>\n<p>Ecco un breve riassunto delle modifiche che vi aspettano nel nostro sistema di videosorveglianza cloud e nel vostro pannello di controllo. Rimanete con noi e seguite le novit\u00e0!<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ivideon\/blog\/449326\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421 \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0433\u043e \u0432\u0438\u0434\u0435\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u044f \u043c\u044b \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439, \u0431\u0435\u0437 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430 Ivideon \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0440\u0435\u0441\u0442 \u2013 \u044d\u0442\u043e \u0431\u044b\u043b \u043d\u0430\u0448 \u042d\u0432\u0435\u0440\u0435\u0441\u0442, \u0432\u043e\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0442\u043d\u044f\u043b\u043e \u0443\u0439\u043c\u0443 \u0441\u0438\u043b, \u043d\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043c\u044b, \u043d\u0430\u043a\u043e\u043d\u0435\u0446-\u0442\u043e, \u0432\u043e\u0442\u043a\u043d\u0443\u043b\u0438 \u043b\u0435\u0434\u043e\u0440\u0443\u0431 \u0432 \u043c\u0430\u043a\u0443\u0448\u043a\u0443 \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u0431\u0443\u0441\u0430. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0437\u0432\u0443\u043a\u0430 \u0438 \u0432\u0438\u0434\u0435\u043e \u0447\u0435\u0440\u0435\u0437 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f, Web-\u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":24131,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-32314","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421 \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47WebRTC \u0438 \u0432\u0438\u0434\u0435\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435: \u043a\u0430\u043a \u043c\u044b \u043f\u043e\u0431\u0435\u0434\u0438\u043b\u0438 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0443 \u0432\u0438\u0434\u0435\u043e \u0441 \u043a\u0430\u043c\u0435\u0440 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421 \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:46:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:46:17+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47WebRTC e videosorveglianza: come abbiamo vinto il ritardo video dalle telecamere | ProHoster","description":"Fin dai primi giorni di lavoro su.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47WebRTC \u0438 \u0432\u0438\u0434\u0435\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435: \u043a\u0430\u043a \u043c\u044b \u043f\u043e\u0431\u0435\u0434\u0438\u043b\u0438 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0443 \u0432\u0438\u0434\u0435\u043e \u0441 \u043a\u0430\u043c\u0435\u0440 | ProHoster","og:description":"\u0421 \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434.","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/webrtc-i-videonablyudenie-kak-my-pobedili-zaderzhku-video-s-kamer","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:46:17+00:00","article:modified_time":"2019-10-31T18:46:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"32314","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 10:17:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:17:44","updated":"2026-01-21 10:17:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/32314","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=32314"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/32314\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/24131"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=32314"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=32314"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=32314"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}