淘宝直播里的智能互动是怎么做的?

简介: 跨端方案成为唯一选择,为了提高运营、设计和玩法开发人员的制作效率,我们也必须有配套的素材生产工具和玩法编辑工具,解决素材制作-效果调试和预览-素材上传-素材投放全链路的问题,同时我们也希望玩法能结合权益产生更大价值。

image.png


image.png


背景

随着带宽成本的降低和端上算力的提升,在直播、短视频中基于流的互动玩法也将越来越丰富;无论是基于人脸、手势、分割算法的智能化贴纸,还是结合算法的小游戏有了越来越好的舞台;业界短视频和直播主要针对的娱乐性的场景,更是将娱乐化的玩法用到了极致,例如抖音的仿flappy bird潜水艇小游戏,最气的漫画风格的拍摄玩法都引爆成为热点。抖音有PC的玩法生产工具EffectCreater生产工具和移动端的玩法社区特效君,已经打打造了一个支持数以万计的设计师的生态圈。

淘宝直播和短视频更偏向电商场景,我们也在探索这些玩法在直播和短视频中的应用,对提升直播间停留时长,丰富直播间和短视频内容;其中在视频流里面渲染和算法调用几乎都是Native的能力,如果用iOS和Android上分别实现,性能较难把控,开发成本、上线和下线成本高,必须在活动前很长时间开发,然后随着版本发版,活动结束后为了减少包大小,又需要将代码删除,玩法也无法沉淀。

跨端方案成为唯一选择,为了提高运营、设计和玩法开发人员的制作效率,我们也必须有配套的素材生产工具和玩法编辑工具,解决素材制作-效果调试和预览-素材上传-素材投放全链路的问题,同时我们也希望玩法能结合权益产生更大价值。

跨平台渲染计算引擎

首先在底层渲染层,我们开发了基于C++的跨平台渲染计算引擎RACE,除了为传统的视频前处理、画质增强、美颜美型美妆外,也提供了动画系统、玩法系统等游戏化的能力,在一个渲染引擎里面将媒体渲染和游戏化渲染结合起来。

我们采用了游戏行业经典的ECS系统,加以简化和改进,来解决渲染关系,渲染逻辑和玩法逻辑的组织。

image.png

玩法往往需要多个算法的配合,同时视频美颜、前处理等等也需要算法的能力,端上算力有限,合理的算力管理调度也必不可少,所以我们开发了PixelAI统一的算法计算框架,一个是用来进行算法生命周期模型管理、还有算法调度,性能监控,同时也提供了多平台的算法运行时统一的基建设施,这样算法同学只要做好模型推理和算法实现,所有工程化的东西一站式解决。


脚本系统设计


在玩法方面,我们希望玩法可以动态下发,这就需要能用脚本去做玩法,我们希望将渲染计算的能力全部导出到脚本系统里面,这样就可以在脚本里面利用底层强大的能力;同时玩法里面可以方便的调用业务接口,做好玩法和业务的关联,业务逻辑主要在Weex和H5环境,同时我们也希望脚本能力能够使用在编辑器上,供跨端的前端框架如Electron 或Flutter直接调用,这样节省了大量的编辑器开发工作量。

我们在不同JS引擎上封装了一层JS Wrapper层,抹平不同JS引擎的JSBinding问题,利用LLVM分析c++头文件,利用python工具编写JSBinding模板全自动化导出C++到JS的接口;对原有的渲染计算框没有做任何修改,这样在不需要玩法的情况下,不影响稳定性;

同时我们也导出了一份OpenGL到WebGL的接口,这样完全可以在JS侧能在视频流里面实现更丰富的渲染能力。

MediaAI素材玩法编辑器


编辑器我们和前端和设计师合作,采用Electron方案,编辑器预览和编辑窗口的显示核心由RACE渲染计算统一提供,Electron底层是NodeJS,NodeJS的JS引擎是V8,只要将RACE的JSBinding接口直接注入到V8里面,编辑就可以调用全部的RACE接口做窗口预览和编辑,这样编辑器开发就节省了大量的开发工作量;

编辑器中接入素材平台,运营和开发人员编辑好素材和玩法之后,上传到素材管理平台,由素材管理平台进行分发,玩法类由有相应权益的主播或者运营设置好参数,如玩法对应的权益,下载玩法到推流端或者播放端,在端上的JS环境中解析JS脚本,加载素材和玩法逻辑,渲染和计算部分底层统一由JS binding调用到跨平台的RACE引擎完成,完整链路如下:

image.png

编辑器既可以面向设计师制作各种人脸手势触发贴纸、视频文字模板等等,又可以面向前端开发者制作互动小游戏:

image.png

部分落地

春节期间淘宝直播推出的春节氛围:

image.png

直播后面比较乱,利用分割算法来个背景模糊,或者来个抱抱宝宝的小怪兽:

image.png

商家希望主播和达人能够拍摄短视频对商品进行介绍推广,主播和达人也能够从短视频的购买中分佣,对广大中小主播和达人而言,将商品寄送到每个可能会推广的主播和达人成本高昂,我们360度的拍摄一个商品,然后利用主播可以用手势控制缩放旋转商品别介绍,这样就可以极低成本无接触式的生产商品推广短视频;

在直播连麦或者粉丝连麦中做个flappy bird的小游戏?或者主播在发放红包后,粉丝通过玩游戏通过游戏得分才能领取红包,这样既有趣,又将粉丝留在直播间;

image.png

来点可爱又萌的美妆贴纸(原谅一个程序员全程友情出镜);

image.png


后记

一个好的媒体互动产品能给业务带来更多的活力,但往往需要创意设计师、算法、底层和业务开发共同完成,端上算力有限,特别是在淘宝直播,手淘短视频等场景下,其他业务已经占用了很高的性能,需要灵活高效的架构,很好的性能,针对高中低端机的分级体验。在电商场景下,挖掘更适合电商玩法的互动能给业务带来更大的价值,好玩的互动再跟权益绑定,为商家、主播提供更多更好玩的运营工具;在大促活动提供更有趣的玩法、日常活动里面提供更好的留存手段。

我们近期会新增很多的渲染能力和算法能力,打造好基础,这样才会更大的发挥大家的创意;我们近期也将举办一个素材设计比赛,激活大家的创造力,等配套工具更完善,我们也会将工具开放给外部的商家、主播等,打造更好玩的直播短视频生态。


本篇内容来自阿里巴巴淘系技术部张伟。

相关文章
|
应用服务中间件 Linux 网络安全
Linux 安装 Nginx 并配置为系统服务(超详细)
Linux 安装 Nginx 并配置为系统服务(超详细)
|
2月前
|
XML API Android开发
自动点击精灵, 手机自动点击器,屏幕自动点击器
完整的Android自动点击器应用,包含了基础点击功能、多点触控和手势滑动等高级特性。如需进一步
|
Kubernetes 负载均衡 调度
在K8S中,K8S外部节点访问Pod有哪些方式?
在K8S中,K8S外部节点访问Pod有哪些方式?
|
消息中间件 Java API
解析Java微服务架构:从零构建高性能系统
解析Java微服务架构:从零构建高性能系统
|
人工智能 运维 监控
实现全景化应用监控——关联分析
【2月更文挑战第29天】智能化应用运维借助AI算法处理复杂系统问题,需要数据治理平台整合分散的监控系统,形成统一的全景监控视图。关键方法包括:1) 读取CMDB信息以理解IT组件关系;2) 监控网络流量解析服务交互;3) 使用APM追踪代码链路;4) 应用AI算法挖掘隐藏关联关系,通过时间序列分析和因果推理模型识别异常和故障原因。
|
监控 关系型数据库 MySQL
MySQL性能调优与监控:优化查询与实时监测
本文深入探讨了MySQL数据库的性能调优与监控,通过详细的代码示例,介绍了优化器与执行计划、查询性能调优策略,以及性能监控工具与指标。优化查询性能是数据库管理中的关键环节,通过合理的查询设计、索引的使用和避免不必要的操作,可以显著提升数据库操作效率。性能监控工具如MySQL Performance Schema和MySQL Enterprise Monitor能够实时监测数据库的性能指标,帮助管理员及时发现和解决性能问题。
1584 0
MySQL性能调优与监控:优化查询与实时监测
|
SQL 分布式计算 DataWorks
DataWorks开发ODPS SQL开发生产环境自动补全ProjectName
DataWorks标准模式下,支持开发环境和生产环境隔离,开发环境和生产环境的数据库表命名有所区别,如果需要在开发环境访问生产环境的数据库表或者跨项目空间访问其他项目空间的表,需要根据projectA.tablename命名规范严格区分数据库表名,避免误操作生产环境。 开发环境SQL任务中需要使用【开发环境空间.表名】来使用表,发布到生产环境时,需要手动把开发环境空间改成生产环境空间名称才能发布。本文针对此类场景实现在DataWorks能够自动识别任务在开发环境使用开发环境的名称,在生产环境使用生产环境的名称。
1205 0
|
存储 机器学习/深度学习 人工智能
阿里云GPU云服务器gn6v、gn6i、vgn6i-vws、gn6e购买和选择教程
本文介绍了阿里云gup云服务器是什么?gn6v、gn6i、vgn6i-vws、gn6e实例的最新价格和实例特点、适用场景、实例规格的指标数据。仅供大家了解和选择阿里云gup云服务器时参考。
2143 0
阿里云GPU云服务器gn6v、gn6i、vgn6i-vws、gn6e购买和选择教程
十分钟掌握分类算法的评估指标(上)
什么是评估指标? 评估指标是针对模型性能优劣的一个定量指标。一种评价指标只能反映模型一部分性能,如果选择的评价指标不合理,那么可能会得出错误的结论,故而应该针对具体的数据、模型选取不同的的评价指标。 针对不同类型的学习任务,我们有不同的评估指标,这里我们来介绍最常见的分类算法的一些评估指标。常用的分类任务评价指标有准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1 Score、P-R曲线(Precision-Recall Curve)、ROC、AUC等。