如何让用户回放视频更清晰?——对话在线音乐教育平台Finger CTO林荣坤

距离阿里云窄带高清2.0版本在云栖大会上正式发布,已经过去近1个月的时间了,这期间有很多客户已经陆续在接入使用,其中就包括杭州妥妥网络科技有限公司。其旗下产品Finger是一款专注于在线音乐教育的移动APP,它向需要专业音乐教育的用户提供线上课程与服务,帮助他们实现音乐梦想,目前产品用户总量1300万,长期位于APP STORE音乐榜前20。本文,我们对话了Finger的联合创始人和CTO林荣坤,听他来分享下与阿里云之间的故事。

视频教育起家 倾心阿里视频云

当谈到Finger创办初期时,林荣坤说到:“那是在2014年,因为那时的音视频播放器和处理远没有今天这么丰富完善,所以遇到了不少的挑战。当时服务端只有开源的ffmpeg可以选择,后来,在云端部分阿里云OSS功能才逐渐开放起来。期间团队还了解过一个商用的播放器Vitamio,试用下问题较多而且授权费很高就放弃了。所以,在当时的情况下,iOS选择团队自研了,Android是基于谷歌的开源播放器exoplayer来定制的。”

正是在这种困难和挑战并存的情况下,技术也历经了市场和用户的层层考验。 Finger主打的是针对不同需求的用户免费提供多种乐器的线上视频教学,视频服务就成了产品最基本、最关键的所在。所以林荣坤的团队一直在寻找一种既能够提升用户观看体验、又能够节省视频带宽成本的办法。当他们看到阿里视频云推出了窄带高清2.0的时候,就觉得机会来了,于是马上试用在了回放课程上,发现对于原本被压缩的教学课程视频修复的效果相当不错,所以直接决定正式接入。

林荣坤说到:“窄带高清的主要场景是我们的视频点播服务可以节省CDN费用,画质重生是用于我们的回放视频录制的时候比较模糊,希望通过画质重生转高清让我们给予我们用户更好的服务体验。据我们了解,现在市面上提供这项服务的公司非常少,阿里视频云能开放这项能力,很难得。”

接入窄带高清2.0 还原清晰画质 提升用户体验

Finger的视频内容处理流程包括水印、截图、转码、多码率切片,我们是在转码部分使用画质重生功能。接入前后架构没有太大区别,因为画质重生只是视频,所以基本上没有耦合。正式接入用了一周左右的时间,通过开通媒体转码服务、设置输入和输出媒体Bucket、配置媒体工作流,并在转码节点选择窄带高清2.0转码模板等几个步骤陆续操作接入。关于整体的体验,林荣坤说到:“也会有一些定制化的东西需要联系阿里云技术人员配置。整个流程挺顺利,没出现什么问题。”

Finger接入的是窄带高清2.0,它的原理是从人眼视觉模型出发,将编码器的优化目标从经典的“保真度最高”调整为“主观体验最好”。凭借独有算法,在节省码率的同时也能提供更清晰的视频观看体验。针对Finger的业务场景,窄带高清2.0的画质重生——片源修复功能,可以将被过度压缩的网络视频,自动检测片源情况,去除视频画面中的毛刺和马赛克,生成更高清晰度的修复重制版,还原低质量片源的用户观感。

聊到接入之后的效果,林荣坤则表示,接入之后这段时间,经常有用户反馈回放视频更清楚了,体验好了很多。而且,使用之后相当于通过技术手段减少了公司的CDN带宽成本,同时不损失用户体验。

将产品构建在阿里云众多云计算产品之上

因为Finger是音视频业务场景,需要对内容进行分发加速,所以除了阿里视频云的窄带高清2.0产品外,团队还选择了阿里云的CDN服务,它的节点多,而且稳定性好。另外,因为对于教育行业来说,版权内容十分重要,所以Finger也采用了https安全加速,保护视频内容不被盗取盗用。

同时,我们也了解到,Finger产品基本上是构建在阿里云众多云计算产品之上的,比如ECS、RDS、SLB、VPC等。这和大部分杭州的互联网公司相同。凭借阿里云的基础设施,或者选取符合自己需求的产品或解决方案,来快速实现产品能力,把握住这个快速变化的时代。在对话的最后,我们聊到对企业上云的看法,林荣坤说:“这一点我的看法是未来底层技术设施和云计算产品会越来越丰富和稳定以及廉价,企业可以更多的资源关注在核心业务价值实现上,不是在拥抱云计算就是在去拥抱云计算的路上。”

确实如林荣坤所说,当你的业务处于快速发展的阶段,技术和产品团队更需要将精力花在解决核心业务需求和产品逻辑之上,同时通过市面上成熟的第三方解决方案来保障业务稳定和提升服务质量。对于视频教育行业来说,视频内容的带宽成本和用户体验是企业最为关注的两个部分。那么,使用了阿里视频云窄带高清2.0,这两点就可以达到平衡状态。目前,窄带高清2.0已经在阿里云官网开放公测,如有需要可以登录并申请试用。同时我们也相信,在未来阿里云和Finger将会通过更加深度和紧密的合作,为用户提供观感更好的视频内容。

上一篇:《嵌入式C编程:PIC单片机和C编程技术与应用》一1.7 语句和表达式


下一篇:《嵌入式C编程:PIC单片机和C编程技术与应用》一1.2 注释