Sto cercando di capire come creare un'app Web che consenta a più utenti di visualizzare lo stesso video di YouTube in sincronizzazione sui propri computer. Ad esempio, synchtube.com o watch2gether.comCome riprodurre i video di YouTube sincronizzati su più client?
che sto cercando un approccio semplice che può essere implementato utilizzando tecnologie comuni come PHP
, jQuery
e Apache
. Attualmente sto pensando lungo le linee del polling (o del polling lungo cometa ma richiede una configurazione del server più complessa che spero di evitare), simile a come sono implementate le app di chat Ajax
- ovvero i client controllano continuamente con il server per vedere quale video sta giocando. Tuttavia, sospetto che qui ci saranno problemi di latenza, quindi i video non saranno completamente sincronizzati. Non riesco a pensare ad un approccio migliore ancora.
Alla comunità di sviluppatori, qualsiasi aiuto sulla metodologia o frammenti di codice sono estremamente apprezzati!
L'unica cosa che posso pensare è di avere ogni utente selezionato pronto. Una volta che tutti sono pronti, sposta il video su tutti loro. Guarderei in un pub/sottoservizio usando php. Non sono sicuro di quale supporto browser stai guardando, ma ho trovato che varie tecnologie websocket sono piuttosto utili per pub/sub. Che è supportato nella maggior parte dei browser moderni. – agmcleod
Utilizzare un server per sincronizzare i client. Quindi, utilizza l'API del player JavaScript di YouTube per riprodurre un video. Vedi [questa risposta] (http://stackoverflow.com/questions/7443578/youtube-iframe-api-how-do-i-control-a-iframe-player-thats-already-in-the-html#7513356) per un metodo semplice e facile da capire per riprodurre un video. Per chiamate più complesse, come ottenere lo stato e gli eventi del giocatore, vedere [questa risposta] (http://stackoverflow.com/questions/7988476/listening-for-youtube-event-in-jquery/7988536#7988536). –
Anche se tutti gli utenti avviano il video esattamente nello stesso momento, cosa succede se alcuni hanno una connessione più lenta che può tenere il passo con il flusso video solo se le altre app non utilizzano una parte della larghezza di banda? Fai mettere in pausa tutti i clienti in modo che nessuno cada dietro? – nnnnnn