Domanda

I può essere completamente pazzo su questo, ma sembra che la velocità di download / tampone di video di YouTube è più veloce all'inizio e l'ulteriore punto di buffer ottiene dal marchio attualmente in riproduzione, il buffer più lento va.

Sono pazzo, o funziona in questo modo per tutti gli altri?

Supponendo che questi ultimi, eventuali teorie su come lo fanno? E 'sul lato server o client-side? Vorrei pensare che sarebbe dovuto essere sul lato client, ma chi lo sa? Non io, è per questo che sto chiedendo!

È stato utile?

Soluzione

Da quello che vedo da una discarica wireshark, essi tampone contenuto facendo più richieste (con un "range" di parametri) al server. Il client richiede solo la parte successiva quando ne ha bisogno.

GET /videoplayback?
sver=3&
key=yt1&
sparams=algorithm%2Cburst%2Ccp%2Cfactor%2Cid%2Cip%2Cipbits%2Citag%2Csource%2Cupn%2Cexpire&
algorithm=throttle-factor&
upn=L4m-ID0n0V0&
expire=1334882299&
factor=1.25&
ipbits=8&
ip=77.0.0.0&
fexp=912300%2C919303%2C911623&
source=youtube&
range=8908800-10690559&
cp=U0hSSVhTUF9OU0NOMl9QTVRDOjhGTXRjbEpBNzls&
burst=40&
signature=20F9219AACD9249B3517F56ECFE8B12C6B001D2F.BDDD25B61745E0F6E0BBAC7E792C121AA67A4C7C&
keepalive=yes&
itag=34&
cm2=0&
id=9cc8ae37c50b77f7 HTTP/1.1

In caso contrario, questo tipo di larghezza di banda è fattibile solo se il cliente 'ha il controllo' sopra il server, cioè o chiede ciò che sa di cui ha bisogno (es: Youtube download progressivo), o dire il server regolarmente dove si trova ( es:. RTCP / RTMP / RTP streaming)

Altri suggerimenti

Questo viene fatto sul lato server, non c'è modo di farlo sul lato client.

Ci sono molti modi diversi di servire i video, in modo che dipenderà da ciò che la tecnologia server che si utilizza se si desidera impostare su voi stessi, o si potrebbe utilizzare qualcosa come RTMP (tramite Flash Media Server o Red 5, ecc .).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top