背景:业务上有一个需求,可以对特定事件进行回放,回放的内容包括有视频信息( 20s-几分钟不等),以及视频每一帧对应的业务参数等。数据源位于腾讯 COS 对象存储中,一个原始视频大约 5 分钟,但是一个视频包含若干事件,也就是说一个事件只占原始视频的其中 20 秒左右,用户点击每一条事件时,后端会返回上述的业务参数,用于前端和视频帧匹配,视频经常变化,每天都会有新的大量视频上传到对象存储中,大概就是这种。
需求点:
技术栈:Go + vue3
小弟之前未接触过视频播放的实现,一头雾水,想请教一下有什么成熟的方案可以解决吗?搜了一圈,大多数都是在提 m3u8 、videojs 、flvjs 、http range 之类的。不知道具体要实现上面的 5 点需求,需要有哪些技术点组合。
希望有经验的前辈指点迷津,比如说是否需要后端把 COS 中的视频先拉取到本地,然后切片成 m3u8 存储?还是说直接可以读取 COS 中的视频?再比如说后端会记录这条事件在原视频中的位置,比如说第 400 帧到 1000 帧之间,那怎么和切片或者 range 搭配使用呢?
或许以上就是很简单的视频播放需求,但是没接触过这方面的架构设计,所以一时找不到方向,希望 v 佬们指点下~
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.