问题:
我的服务器上有多个60分钟的视频(共享主机)。我需要立即有效地向用户提供这些视频中的任何一个视频的单帧。预期的最大负载大约是每分钟100个请求。
备注:
可能的解决方案:
答案 0 :(得分:0)
我相信你的问题的答案是“在资源有限的情况下这是不可能的”。
要“实时”执行此操作,服务器或客户端必须加载&筛选视频并找到所需的时间停止和帧。
鉴于“即时”要求,这似乎不可能 - 并且任何实时搜索都不会有效。
如何从每个视频中提取每秒1帧(60 * 60 =每个视频3600帧)。
然后保存这些提取的帧并将保存的静止图像的子集提供给客户端?
如果每个视频3600个静止图像对于服务器存储来说太重,那么每3或5秒保存1帧以使存储容忍。每分钟5帧,您的存储要求降至每60分钟视频720张图像。并且您可以将图像存储为.jpg以节省更多存储空间和交付时间。
用户可以“浏览”静止图像的一部分,直到找到所需的时间范围。在找到所需的时间范围后,您可以花费更多昂贵的服务器资源,在所选时间范围内提供帧。这个想法是通过仅在用户给出确切的感兴趣的时间范围时通过执行昂贵的服务来节省资源。