1
abelyao 2016-07-02 14:46:33 +08:00 via iPhone
那很多用户同时看的时候,全部都在即时转码?那复杂得多大
|
2
abelyao 2016-07-02 14:47:17 +08:00 via iPhone
更正:负载
|
3
crystom 2016-07-02 14:52:46 +08:00 1
youku 不是即时转码,
你上传过视频就知道了。上传完毕开始只有标清版本能看到 |
4
nikoo OP |
5
shoaly 2016-07-02 14:57:19 +08:00 1
都是 一次性输出成多个视频, 然后剩下的时候交给 cdn 去保证客户那边看着爽
|
6
New2016 2016-07-02 15:23:38 +08:00 1
|
7
notgod 2016-07-02 15:31:36 +08:00 1
@nikoo
理解正確, YTB 的工作模式: 1. 用戶上傳視頻 2. Youtube 轉碼集群 接收文件 預定義規則 開始檢查內容 ID 和是不是有重複,生成視頻縮略圖 (這裡的集群是分攤的 一個文件 N 台服務器開始轉碼 每個機器轉碼一部分) 3. 開始轉碼 普通清晰度, 完成後寫入數據庫告知已完成 (這個時候 你在前台可以看到 360P 或 480P 的視頻 而 720P/1080P 的沒) 4. 根據片源的清晰度 看看是不是需要轉為其他版本 5. 如果有需求 繼續轉碼 (這個轉碼優先級比普通的低) 6. 完成 告訴數據庫 全部轉碼完成 7. 清除轉碼產生的緩存 Youtube 轉碼是分離的 |
8
TheCure 2016-07-02 16:18:30 +08:00 1
@New2016 这个`list`是什么工具?
对视频而言,资源可能会使用多种比特率编码和存储,然后切割为多个部分(比 如,YouTube 视频会分成多个 5~10 s 的块)。然后,在客户端下载视频流期间,客 户端或服务器可以监控每个视频块的下载速度,必要时根据带宽的变化调整要下 载的下一个视频块的比特率。事实上,现实中的视频服务,开始一般是低比特率 的视频块,以便视频播放能更快开始。然后,再根据可用带宽的动态变化调整后 续视频块的比特率。 每个资源要分别创建多少个比特率版本呢?取决于你的应用!不过,我可以告诉 你,Net ix 为适应不同的屏幕大小和可用带宽,为每个视频流都创建了超过 120 个版本!让用户有流畅感、实时感,可真不是件简单的事儿。 摘自 web 高性能权威指南 |