2009-09-09 3 views
0

나는 완전히 미쳐 있을지 모르지만 처음에는 YouTube 비디오의 다운로드/버퍼 속도가 빠르며 버퍼 포인트가 현재 재생중인 마크에서 느리게 버퍼링되는 것처럼 보입니다 간다.플래시에서 YouTube 스타일 스로틀

나는 미친가요? 그렇지 않으면 다른 사람들을 위해 이런 식으로 작동합니까?

후자를 가정하면, 그들이 어떻게하는지에 대한 이론은 무엇입니까? 그것은 서버 측 또는 클라이언트 측입니까? 클라이언트 측이어야한다고 생각 하겠지만 누가 알겠습니까? 나 아니, 그래서 내가 묻는거야!

답변

1

wireshark 덤프에서 볼 수 있듯이 서버에 대한 여러 요청 (매개 변수 "범위"사용)을 수행하여 콘텐츠를 버퍼링합니다. 고객은 필요할 때만 다음 부품을 요청합니다. (: 유튜브 점진적 다운로드 예), 또는 정기적으로 서버에게 클라이언트가 서버, 즉 이상 '컨트롤을 가지고'하나 그가 필요가 아는 것을 요청하면

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 

그렇지 않으면, 대역폭 조절의이 종류는 행할 (예 : RTCP/RTMP/RTP 스트리밍).

1

이것은 서버 측에서 수행되며 클라이언트 측에서 수행 할 방법이 없습니다.

동영상을 제공하는 방법에는 여러 가지가 있으므로 사용자가 직접 설정하려는 서버 기술이나 사용하는 서버 기술에 따라 달라 지거나 RTMP와 같은 것을 사용할 수 있습니다 (Flash 미디어 서버 또는 Red 5, 기타.).