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

背景

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

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

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

跨平台渲染计算引擎

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

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


玩法往往需要多个算法的配合,同时视频美颜、前处理等等也需要算法的能力,端上算力有限,合理的算力管理调度也必不可少,所以我们开发了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引擎完成,完整链路如下:

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


部分落地

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

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

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

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

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

后记

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

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

原文链接
本文为阿里云原创内容,未经允许不得转载。

淘宝直播在智能互动领域的探索及落地相关推荐

  1. 详解淘宝直播背后的技术!

    在移动网络.云计算.人工智能等技术发展的驱动下,直播成为当今时代的一个电商新物种.而该领域发展至今,无论是从量级上,还是技术上,作为行业中的佼佼者--淘宝直播,一直以来,都备受技术人的关注. 在阿里文 ...

  2. 详解淘宝直播背后的技术

    在移动网络.云计算.人工智能等技术发展的驱动下,直播成为当今时代的一个电商新物种.而该领域发展至今,无论是从量级上,还是技术上,作为行业中的佼佼者--淘宝直播,一直以来,都备受技术人的关注. 在阿里文 ...

  3. 淘宝直播零代码弹窗生产方案总结

    本文将介绍,淘宝直播前端团队为提升业务触达效率而设计的零代码弹窗动态化方案. 业务背景 众所周知,产品有三宝:弹窗,红点和引导.在淘宝直播业务里面,每当有功能上新.活动邀约.系统消息.奖励发放等事件发 ...

  4. 淘宝直播技术分享:如何打造体验优秀的“直播+”产品?

    声明:本文为阿里投稿,版权为原作者所有. 2016年是移动直播爆发年,不到半年的时间内无数移动直播 App 掀起了全民直播的热潮.很多不同产品都在自己的应用里面增加了直播模块,希望能趁着这波移动直播的 ...

  5. 淘宝直播:多媒体终端智能互动实践

    随着直播市场,特别是移动直播的繁荣,直播里冒出非常多的形态,形成了千团直播.直播以超强互动的形式也深入各行各业,例如教育行业中,实时通话的技术在小班授课的应用,极大地改变了教育行业时空形态:比如说直播 ...

  6. 媒体智能-淘宝直播流媒体互动实践 | D2 分享视频+文章

    背景:今天给大家带来的分享主题是<媒体智能-淘宝直播流媒体互动实践>,内容分为5个部分,首先看看在淘宝直播的直播间里主播可以怎样给用户拜年:然后具体讲如何制作一个手势拜年的特效:接着介绍我 ...

  7. 经典干货 | 淘宝直播在双11的互动实践

    2016年中国的智能手机覆盖率已达58%,移动网络接入中4G+Wifi的占比也接近90%,这是移动直播能迅速爆发的一个重要的前提条件.在当前全民参与全民娱乐的大背景下,移动直播能随时随地的发起和参与的 ...

  8. 第八章 交互技术,8.2 淘宝直播在双11的互动实践(作者:丰火)

    8.2 淘宝直播在双11的互动实践 1. 简介 2016年中国的智能手机覆盖率已达58%,移动网络接入中4G+Wifi的占比也接近90%,这是今年移动直播能迅速爆发的一个重要的前提条件.在当前全民参与 ...

  9. 淘宝直播的电商互动之路

    如今直播行业发展迅猛,泛娱乐直播方式得到大众认可.淘宝直播产品历程:4月上线,5月打通导购链路,6月互动打赏上线,7月实现直播内容和互动,8月商业化和粉丝互动. ROI ( Region Of Int ...

最新文章

  1. LINUX中断学习笔记【转】
  2. Java-GUI编程实战之管理系统 Day2【Swing(组件介绍、布局管理器、事件类及监听器类)、基础组件按钮和输入框的用法】
  3. jmeter性能分析_使用JMeter和Yourkit进行REST / HTTP服务的性能分析
  4. 新型监控告警工具prometheus(普罗米修斯)入门使用(附视频讲解)
  5. jinja Template Synopsis
  6. apache通过AD验证
  7. JavaScript比较是否在某时间段内
  8. java response 输出word_java导出数据到word(一)
  9. DenseNet详解
  10. robot---百度百科
  11. C语言烟花代码,C语言实现烟花表白代码
  12. matlab学霸表白公式,学霸的数学表白公式
  13. Meatycake,51nod2117,树状数组
  14. 五一就要到了,我用Python制作一款钉钉低价机票提示器!
  15. HashMap之链表转红黑树(树化 )-treefyBin方法源码解读(所有涉及到的方法均有详细解读,欢迎指正)
  16. 一个实践梦想的传奇人物
  17. Android广告轮播图效果实现
  18. 用于长延迟多径衰落环境下的强化UF-OFDM
  19. 独孤九剑:算法模型训练的一般流程
  20. 我是用的是NetBeans8.0急需一个jsp上传图片到网站并保存路径到数据库的实例。求大神解答,给点赞!

热门文章

  1. http://www.od85c.com.cn/html/,OllyDbg script for unpacking Enigma 4.xx and 5.xx
  2. activiti前端画图转化_记Activiti入门使用-2 流程绘制、导入及开始一个流程
  3. linux祖先进程,Linux下的几种特殊进程
  4. github 私有化部署_2019,GitHub 宣布私有代码仓库从此免费!
  5. 在python中、正确的函数定义格式为_Python函数的定义与实现
  6. 清华大学全面审查文科博士论文!
  7. 硬核!这所大学包下高铁,接滞留湖北的学生返校!
  8. “光纤之父”高锟辞世!但他的诺奖演讲辞, 青年不可不读!
  9. 大数学家陶哲轩谈时间管理与高效工作的方法
  10. java 对象引用 弱引用吗_谈谈Java对象的强引用,软引用,弱引用,虚引用分别是什么...