请问有大佬知道 twitch/虎牙 的直播看牌功能的技术原理么

2021-08-02 22:34:48 +08:00
 Augi

RT,发现虎牙的网页版和 App 都支持了直播看牌,就是在观看直播的过程中,将鼠标悬浮或者手按住视频中卡牌所在的区域就会显示出对应卡牌的介绍。感觉很炫酷,有大佬知道怎么实现的么。

网页端看了下,视频的上方会有遮罩层,对应到视频的卡片位置,hover 会显示对应的介绍,所以关键是视频中每一帧都生成卡片的位置信息以及对应的卡牌信息是如何同步给前端的,我看还是挺实时的。

补充功能介绍图:

1503 次点击
所在节点    视频技术
5 条回复
toyassb
2021-08-02 22:47:04 +08:00
本地有插件,直接将信息传给服务器
Dididadada
2021-08-03 00:00:07 +08:00
看了一下控制台,发现虎牙的 log 输出挺丰富的,有一条是 监听炉石卡片数据,里面有卡片 id 和宽高位置,后边怎么做就比较简单了。卡片数据应该是从每帧图像里识别出来的吧,应该也不是很复杂,不过确实挺有想法的。
另外发现个小 bug,我没登录过了一会弹出登录框的时候,无法点击,还是会识别到下层的卡片,看起来这个功能应该也是刚刚加上
noe132
2021-08-03 08:40:11 +08:00
https://github.com/HearthSim/twitch-hdt-frontend

主播安装一个本地插件读取数据上传到服务器,然后服务器再广播给所有观众。

这个在 twitch 已经很成熟了,早 2 年就有这样的功能了。
Augi
2021-08-03 08:57:51 +08:00
@Dididadada 嗯嗯,最近才加上的
Augi
2021-08-03 09:16:55 +08:00
@noe132 流批,就是卡牌的位置信息是主播端根据插件生成然后广播出去的是吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/793255

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX