Flash 中的 YouTube 风格限制
我对此可能完全疯了,但 YouTube 视频的下载/缓冲速率似乎一开始就更快,并且缓冲点距离当前播放标记越远,缓冲速度就越慢。
我是疯了,还是其他人都这样?
假设是后者,有关于他们如何做到这一点的理论吗?是服务器端还是客户端?我认为它必须是客户端,但谁知道呢?不是我,所以我才问!
I may be completely insane on this one, but it seems like the download/buffer rate of YouTube videos is faster at the beginning and the further the buffer point gets from the currently playing mark, the slower buffering goes.
Am I crazy, or does it work this way for everyone else?
Assuming the latter, any theories on how they do it? Is it server-side or client-side? I would think it would have to be client-side, but who knows? Not me, that's why I'm asking!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
从我从wireshark转储中看到的情况来看,它们通过向服务器发出多个请求(带有参数“范围”)来缓冲内容。客户只有在需要时才请求下一部分。
否则,这种带宽限制只有在客户端“控制”服务器时才可行,即要么请求他知道自己需要的内容(例如:Youtube 渐进式下载),要么定期告诉服务器他在哪里(例如:RTCP) /RTMP/RTP 流)。
From what I see from a wireshark dump, they buffer content by doing multiple requests (with a parameter "range") to the server. The client only requests the next part when he needs it.
Otherwise, this kind of bandwidth throttling is only doable if the client 'has the control' over the server, i.e. either requests what he knows he needs (ex: Youtube progressive download), or tell the server regularly where he is (ex: RTCP/RTMP / RTP streaming).
这是在服务器端完成的,没有办法在客户端完成。
提供视频服务的方式有很多种,因此,如果您想自己设置,则取决于您使用的服务器技术,或者您可以只使用 RTMP 之类的技术(通过 Flash 媒体服务器或 Red 5 等)。
This is done on the server side, there is no way to do it on the client side.
There are many different ways to serve videos, so it will depend on what server technology you are using if you want to set it up yourself, or you could just use something like RTMP (via Flash media server or Red 5, etc.).