InfoQ Geekathon 大模型技术应用创新大赛 了解详情
写点什么

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

  • 2016-10-27
  • 本文字数:2349 字

    阅读完需:约 8 分钟

2016 年是移动直播爆发年,不到半年的时间内无数移动直播 App 掀起了全民直播的热潮。很多不同产品都在自己的应用里面增加了直播模块,希望能趁着这波移动直播的风潮能快速推进自己的产品。而在电商类的 APP 中,淘宝率先在手机直播里面试水电商直播,并用实际的数据证明了这是一种非常具备前景的新模式。

本文将重点介绍淘宝直播在业务模式上的探索、移动直播背后的技术难点、优化用户体验等方面的内容。主要内容出自阿里巴巴高级技术专家陈举锋(丰火)在 2016 杭州云栖大会上的分享。

淘宝直播的产品探索

淘宝直播项目,于 2015 年 11 月立项,在今年 4 月份正式在手机淘宝上线。之后除了对基础的直播体验持续打磨,在产品形态和互动玩法上也进行了很多的探索,如导购链路、互动打赏、粉丝连麦等,极大提升了用户在直播场景下购买体验。

不过回到淘宝直播的产品设计上来,在原有产品能力加上直播功能,并不只是简单的加一个功能,还要考虑如何与产品原有能力融合、是否对业务数据有提升等问题,这些都是要重点关注的点。

第一个面临的就是内容整合的问题,直播如何与商品结合,与商家的能力结合、与整个生态上的各个角色结合。在这方面淘宝有很强的优势,有大量活跃在整个淘宝生态上的模特、淘女郎,她们自己的粉丝,有自己的流量来源,而粉丝也有在日常购买习惯上跟随这类草根明星(网红)的习惯,除此之外,她们也有与粉丝交流、直接给粉丝推送商品的场景,而直播作为一个实时的互动平台,正是连接这三方的一个很好的产品形态。

(淘宝直播产品形式)

在淘宝直播内,主播能随时的根据粉丝的反馈利用商品橱窗、优惠券、红包、抽奖等有趣的玩法来拉倒整体直播间的氛围,同时借助后台的商品实时识别能力,我们会直接在视频上叠加相关的热区标识。这样粉丝看到商品后直接点击就能进入商品详情页面,很好的缩短了导购链路,受到了主播和店家的欢迎。

据统计,通过淘宝直播做营销,成交转化率 4%,进店率 30%,关注率 9%.

同时,结合直播 + 电商的特殊性,淘宝直播支持实时对直播内容进行分片,并和商品内容进行关联,无论是作为点播内容或者作为商品的介绍视频,也是很好的素材来源,主播也可以根据沉淀下来的直播内容持续分佣。

淘宝直播技术架构

这是目前一些主流直播 App 产品的技术架构,包括各种 SDK、HTTPDNS、CDN、视频流处理、推流、播放等等模块。淘宝直播在架构上也参考了业界的思路。

这是淘宝直播目前主要的核心架构,分为上下两层:

上层是客户端,左边是推流,右边是播放,采用了常见的编解码和推流协议。下层是服务端,包括 TCP 接入、CDN、数据分发、录像生成等等。淘宝自主研发了 CDN 分发方案,完成整个直播链路的传输。另外和业界典型方案不同的还有一个点,就是双向互动通道,用于互动营销方案,主播跟粉丝进行一些互动,这是基于阿里自研的支持亿级日活的 ACCS 网络通道来做的。

直播体验优化

做一个直播平台,用户体验的关键基本上就七个字、三个点就可以概括:“不卡、不掉、不延迟”,分别对应播放流畅、交互稳定、内容实时。具体到业务上,大概有这些方面:

  • 首屏秒开
  • 带宽成本优化
  • ROI 优化
  • 时延优化

下面分别介绍淘宝直播的做法。

首屏秒开优化

直播的首屏秒开指的是点击一个直播就能立即播放,目前业界也做得比较成熟,淘宝直播在其基础上对细节进行了分类,包括业务逻辑、网络、缓冲、渲染等优化:

  1. 并行处理:列表页、获取播放地址、房间状态、连接消息通道 整体时延超过 3s
  2. 请求合并:房间状态、地址、主播信息层、点赞数量、观看人数、在线列表
  3. 传统 DNS 基于 UDP,解析时间过长。使用 HTTPDNS:预解析、防止域名劫持、精准调度(就近接入)、避免延迟
  4. 收流服务器主动推送 GOP 至边缘节点,边缘节点缓存 GOP,播放端则可以快速加载,减少回源延迟
  5. 根据 TCP 拥塞窗口做智能调度,当拥塞窗口过小说明丢包率过高,需要切换节点和故障排查
  6. 增加上行、下行带宽探测接口,当带宽不满足时降低视频质量,即降低码率

通过这些优化手段,能够做到 95% 的直播点击后在 900ms 以内能够播放。

带宽成本优化

带宽成本优化主要是对音视频解码进行优化。直播是一个很烧钱的事情,淘宝直播上线以后,带宽消耗非常巨大。降低成本的手段第一是窄带高清,降低整体码率的消耗,还有一个重要的是采用了 H265 编解码,在画质上,其带宽消耗要远远低于 H264,但带来附加上的技术问题是首先后台要有转码,我们在端上的解码用 H265 来看,但在主播端是用 H264 的编码来传,通过云端的集群将 H264 转成 H265,需要阿里云的集群转码能力才能实现,对于 H265 的解码进行定制化的方案,目前做到的效果要比自带解码器的效率提升 30% 以上。

ROI 优化

ROI 是指 Region Of Interest,根据视频画面不同区域的重要程度分配相应的码率,基于人脸识别,需要实时的对视频流进行处理。其实现在业界直播有一些美颜、实时装饰技术,原理上大家都差不多,只是 ROI 技术优化的目的在于优化码率。。

时延优化

在做首屏秒开优化的时候,会预加载关键帧,但这个预加载会造成一定的时延,这时需要用算法进行决策加速、正常还是放慢播放,自动追帧丢帧,让主播和观众之间的时间差尽量小。

直播互动技术架构

淘宝直播的互动包括留言、礼物、红包、商品橱窗等等。这些互动都是基于 Weex 开发而来。

从业务的类型而言,淘宝直播是一个很典型的淘系的业务。在构建整个逻辑体系的时候,采用 Weex 经过了多方面的考虑,因为初始团队比较小,很难同时兼顾多平台的开发,另外工期短,要求开发效率要高,使用 Weex 达成了覆盖多平台的目的,并且能满足团队在功能和性能上的需求。

淘宝直播的下一步是打造开放平台,实现技术、内容上集团内共享,提供完备的直播服务。未来,阿里百川还将基于淘宝直播的技术,向开发者提供直播 SDK,不仅提供常规的直播和推流技术支撑,也将把淘宝直播在电商互动方面的积累开放给广大开发者。

活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2016-10-27 20:385261

评论

发布
暂无评论
发现更多内容

程序员这样准备面试,拿到Offer的概率准会上升。

android 程序员 移动开发

站在巨人肩上操作CAS(一):CAS的原理

android 程序员 移动开发

第五章:paging使用

android 程序员 移动开发

给你一个全自动的屏幕适配方案(基于SW方案)!

android 程序员 移动开发

继承的基本使用

android 程序员 移动开发

程序员还不会这6个面试技巧,活该你拿不到offer和高薪?

android 程序员 移动开发

程序员非要去大一线城市不可吗?小三线的我有话说

android 程序员 移动开发

站在巨人肩上操作CAS(三):原子操作类的正确使用实战

android 程序员 移动开发

简易弹球游戏 (2)(1)

android 程序员 移动开发

线程池基本参数解析

android 程序员 移动开发

模块八作业

Geek_fc100d

「架构实战营」

经验分享:上传视频到优酷客户端

android 程序员 移动开发

网易被裁后,68天吃透这份阿里学长甩我的Android面试笔记,竟让我收到字节跳动和小米offer

android 程序员 移动开发

美团外卖Flutter动态化实践

android 程序员 移动开发

简单易用!快速改善用户界面的10个技巧!

android 程序员 移动开发

光的进化曲:电力承载网的升级之路

脑极体

经济下行趋势明显,Android开发者出路在哪?7成Android开发者月薪不足6千

android 程序员 移动开发

编写-Android-Library-的最佳实践-1

android 程序员 移动开发

耗时118天爆肝【1296页】的“Android高级开发面试题(1)

android 程序员 移动开发

算法----字符串

android 程序员 移动开发

约束布局(ConstraintLayout)1

android 程序员 移动开发

线程池系列 - (4)工作流程

android 程序员 移动开发

模块三作业及总结

Thomas

架构训练营

程序员真的有35岁危机这样的年龄危机吗?有些程序员是如何悄无声息渡过中年危机的?

android 程序员 移动开发

算法太TM重要了!刷完这些题,我拿到了梦寐以求的字节跳动和腾讯双offer!

android 程序员 移动开发

绝了,华为大神耗费5个月21天,打造这份714页PDF的鸿蒙学习笔记,2020终于火爆全网

android 程序员 移动开发

老板答应给我升职得前夕,34岁的我被优化了?3个月沉淀后迎来转折入职字节跳动!

android 程序员 移动开发

耗时118天爆肝【1296页】的“Android高级开发面试题

android 程序员 移动开发

什么是碳交易?

石云升

碳中和 11月日更 碳交易

第一次面大厂就拿到了腾讯的 offer ,同事笑着骂我是搞 Android 的“狗托”

android 程序员 移动开发

简易弹球游戏 (2)

android 程序员 移动开发

  • 扫码添加小助手
    领取最新资料包
淘宝直播技术分享:如何打造体验优秀的“直播+”产品?_移动_丰火_InfoQ精选文章