V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nikoo
V2EX  ›  问与答

优酷、youtube 这类视频网站,当你切换[普清]、[高清]时,是要对应多个视频源文件吗?

  •  
  •   nikoo · 2016-07-02 14:35:54 +08:00 · 2761 次点击
    这是一个创建于 3096 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如一个片子上传至优酷,他会将片子压缩成多个不同码率的文件对应[普清]、[高清]的播放
    还是只有一个文件,在用户选择[普清]、[高清]时即时转换成不同码率的流?
    10 条回复    2016-07-02 22:31:16 +08:00
    abelyao
        1
    abelyao  
       2016-07-02 14:46:33 +08:00 via iPhone
    那很多用户同时看的时候,全部都在即时转码?那复杂得多大
    abelyao
        2
    abelyao  
       2016-07-02 14:47:17 +08:00 via iPhone
    更正:负载
    crystom
        3
    crystom  
       2016-07-02 14:52:46 +08:00   ❤️ 1
    youku 不是即时转码,
    你上传过视频就知道了。上传完毕开始只有标清版本能看到
    nikoo
        4
    nikoo  
    OP
       2016-07-02 14:54:33 +08:00
    @abelyao @crystom 谢谢

    也就是说,我要提供给用户[普清] [高清] [超清] 三个选择的话,一个视频要储存三份对应的文件?
    shoaly
        5
    shoaly  
       2016-07-02 14:57:19 +08:00   ❤️ 1
    都是 一次性输出成多个视频, 然后剩下的时候交给 cdn 去保证客户那边看着爽
    New2016
        6
    New2016  
       2016-07-02 15:23:38 +08:00   ❤️ 1

    youtube 的音、视频都压成很多种
    notgod
        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 轉碼是分離的
    TheCure
        8
    TheCure  
       2016-07-02 16:18:30 +08:00   ❤️ 1
    @New2016 这个`list`是什么工具?

    对视频而言,资源可能会使用多种比特率编码和存储,然后切割为多个部分(比 如,YouTube 视频会分成多个 5~10 s 的块)。然后,在客户端下载视频流期间,客 户端或服务器可以监控每个视频块的下载速度,必要时根据带宽的变化调整要下 载的下一个视频块的比特率。事实上,现实中的视频服务,开始一般是低比特率 的视频块,以便视频播放能更快开始。然后,再根据可用带宽的动态变化调整后 续视频块的比特率。
    每个资源要分别创建多少个比特率版本呢?取决于你的应用!不过,我可以告诉 你,Net ix 为适应不同的屏幕大小和可用带宽,为每个视频流都创建了超过 120 个版本!让用户有流畅感、实时感,可真不是件简单的事儿。
    摘自 web 高性能权威指南
    New2016
        9
    New2016  
       2016-07-02 16:24:00 +08:00
    @callofmx
    就是 youtube-dl
    我给“ youtube-dl --list-formats ”设置的别名
    nikoo
        10
    nikoo  
    OP
       2016-07-02 22:31:16 +08:00
    @callofmx 一个视频 120 个版本。。。硬盘是真不值钱啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3099 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:26 · PVG 21:26 · LAX 05:26 · JFK 08:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.