Categorie
Domande di Internet

In che modo i programmi di conferenza come Zoom gestiscono così tanti schermi diversi così rapidamente, quando a volte i singoli video in altre app sono in ritardo?

Bentornati ad un'altra eccezionale edizione delle domande di cultura generale !

8733 utenti della rete avevano questa curiosità : Spiegami: Come fanno i programmi di conferenza come Zoom a gestire così tanti schermi diversi così velocemente? quando a volte singoli video in altre app sono in ritardo?
Spiegami: in che modo i programmi di conferenza come Zoom gestiscono così tanti schermi diversi così rapidamente, quando a volte singoli video in altre app sono in ritardo?

Ed ecco le risposte:

I primi post sono tutti incompleti o sbagliati, quindi fammi provare. Questo è probabilmente più simile a un ELI 10 che a un Spiegami, ma è il meglio che posso fare.

Innanzitutto, parliamo di ciò che vogliamo da un buon sistema di videoconferenza :

  1. Alta risoluzione (immagini nitide)
  2. Artefatti a bassa compressione (chiara , immagini non distorte)
  3. Bassa latenza (nessun ritardo tra te e gli altri partecipanti)
  4. Larghezza di banda sufficientemente bassa (non utilizzare più larghezza di banda di Internet può supportare)
  5. Costo della CPU abbastanza basso (non usa più potenza della CPU di quella del tuo computer)

Questi parametri sono in conflitto tra loro. Una maggiore risoluzione richiede più larghezza di banda e CPU. La compressione riduce la larghezza di banda, ma aumenta il costo e la latenza della CPU. Una parte importante di un buon sistema video è la selezione e la regolazione di questi parametri. È difficile perché il computer di solito non sa quanto sia veloce la tua CPU o quanta larghezza di banda hai, quindi deve indovinare e regolare.

La parte principale della tua domanda riguarda il modo in cui Zoom può funzionare così bene per le chat video di gruppo di grandi dimensioni. Ci sono due trucchi extra applicati qui:

  1. Il video viene tutto inviato a un server centrale
  2. Il server centrale può transcodificare il video (regolare i parametri sopra menzionati)

Il motivo del primo trucco è semplice; è più facile per il tuo computer inviare il video in un luogo invece che a ogni partecipante.

Il secondo uno è relativo all'impostazione dei parametri appropriati. Se qualcuno sta guardando 03 i partecipanti in una visualizzazione a griglia, probabilmente non lo fanno Non ho bisogno di tutti i video alla massima risoluzione poiché sono così piccoli sullo schermo. Il client può richiedere un video a risoluzione inferiore e risparmiare CPU e larghezza di banda. Allo stesso modo la compressione può essere adattata per ogni partecipante. Dispositivi e connessioni più lenti possono ottenere video ridimensionati Il server ha molta potenza della CPU e può cambiare i formati video più facilmente di quanto il tuo personal computer possa generare tutte le opzioni.

Affrontare alcune informazioni errate altrove:

  1. In genere, non vedrai tutti i video codificati in un unico flusso. Puoi vederlo facilmente con Google Meets, dove puoi utilizzare javascript per riposizionare i video dove preferisci. Non è flessibile e i confini rigidi tra i partecipanti si comprimono male.
  2. il server centrale non elimina la possibilità di disporre della crittografia end-to-end, ma la necessità di transcodificare il video sì. Questo è il più grande vantaggio di questa strategia, quindi una videoconferenza crittografata end-to-end richiederebbe più risorse o avrebbe una qualità meno costante di quella che lo zoom può fornire.

Quando hai un cattiva connessione o qualcosa sta andando storto, YouTube (streaming) e Zoom (live streaming) lo gestiscono in modo diverso:

YouTube rallenta con il buffering, perché chi se ne frega

Lo zoom rallenta facendo cadere i frame e qualità che si degrada in modo casuale in modo che tu possa tenere il passo con lo streaming, perché è “live” e generalmente non vuoi perderti ciò di cui parla l'altra persona, o essere dietro allo streaming

Non sono sicuro di aver capito la tua domanda, ma forse semplicemente non noti i cali di qualità in Zoom perché non si sentono dirompente come il buffering?

FWIW anche lo streaming non live ha iniziato a farlo. Se guardi qualcosa con una cattiva connessione su prime o imposti un video di YouTube sulla qualità “automatica”, verrà regolato al volo per ridurre il buffering.

Non ti stai connettendo direttamente ad altre 9 persone, come 9 diverse connessioni peer-to-peer.

Ognuno ha una connessione ai server centrali di Zoom. Zoom li mette tutti insieme in un unico grande composito e invia un singolo flusso a te ea tutti gli altri.

Quindi, dal punto di vista del tuo dispositivo, non sta facendo altro lavoro che la videoconferenza con una sola altra persona. Sta caricando un flusso video, scaricandone e visualizzandone un altro.

A proposito, Zoom è entrato problemi per la pubblicità che la loro videoconferenza è crittografata “end-to-end”. Ovviamente no. Decodificano tutti i flussi video sui loro server per metterli insieme. Potrebbero facilmente spiarti se lo volessero.

Modifica: beh, questo è esploso! Stavo basando le mie informazioni su articoli come questo che parlavano di quanto recentemente fa, Zoom non ha eseguito la crittografia end-to-end, e in effetti sono stati di fronte a cause legali per la loro pubblicità ingannevole. Tuttavia, sembra che per lo più mi sia sbagliato riguardo alla mia implicazione che Zoom elabori il video sul server: sembra che in realtà ti inviino solo più flussi video di bassa qualità, tutti impacchettati insieme in una connessione.

Sebbene non sia la spiegazione più tecnica, vale anche la pena considerarlo le prestazioni del software sono molto di casi di vita reale limitati dalla quantità di ottimizzazione necessaria per renderlo veloce, non dalle limitazioni hardware effettive. Quindi c'è un pregiudizio che rende tutte le applicazioni abbastanza veloci in modo che funzionino “bene”.

MS I team impiegano più di un secondo per passare da una scheda della chat, contenente venti righe di testo statico, a un'altra, contenente anch'essa venti righe di testo statico. Nel frattempo, i giochi per computer moderni disegnano milioni e milioni di triangoli 3d sullo schermo in meno di 0. 02 secondi. Non c'è una spiegazione tecnica per questo. È solo pigrizia da parte degli sviluppatori.

I computer sono follemente veloci in questi giorni. Penso che la maggior parte degli utenti finali non si renda conto di quanto siano effettivamente veloci, dal momento che molte applicazioni preferiscono tenerne molto per sé, per facilità di sviluppo.

È molto più vicino a un singolo video rispetto a 100 video per 100 zoom partecipanti alla conferenza.

Consideralo come un multi -player videogioco online.

Tutti i giocatori sono collegati a un server “gioco dal vivo”; e ogni giocatore vede il gioco e gli altri giocatori dal proprio punto di vista come un unico flusso video.

quindi non stai trasmettendo in streaming un video per ogni partecipante, stai trasmettendo in streaming 1 video su ciò che il server ha preparato come punto di vista della conferenza.

2020 xlunce