您的位置:首页 > 其它

anyRTC Flutter SDK :全面实现跨平台音视频互动

anyRTC SDK新增支持Flutter跨平台移动框架的方式接入,开发者基于anyRTC Flutter SDK可以简单高效的实现跨平台音视频和实时消息功能。下面先给大家介绍一下什么是Flutter。

什么是Flutter

Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。

简单来说Flutter是Google一个新的用于构建跨平台的手机App的SDK。写一份代码,在Android 和iOS平台上都可以运行。

Flutter使用Dart语言开发,Dart可以被编译(AOT)成不同平台的本地代码,让Flutter可以直接和平台通讯而不需要一个中间的桥接过程,从而提高了性能。

Flutter的现状及优点

现状

Flutter 是开放的,它是一个完全开源的项目。全球的开发者都可以免费使用和拓展 Flutter 的源代码,并为 Flutter 的生态和文档作贡献。我们已经看到许多中国开发者活跃在社区中,并为 Flutter 做出了坚实的贡献。在 StackOverflow 2019 年的全球开发者问卷调查中,Flutter 被选为最受开发者欢迎的框架之一,超过了 TensorFlow 和 Node.js。

全球已经有很多大家熟悉的品牌采用了 Flutter,包括很多国内的知名公司。如下图所示:

优势

  • 快速开发

    毫秒级的热重载,修改后,您的应用界面会立即更新。使用丰富的、完全可定制的widget在几分钟内构建原生界面。

  • 富有表现力和灵活的UI

    快速发布聚焦于原生体验的功能。分层的架构允许您完全自定义,从而实现难以置信的快速渲染和富有表现力、灵活的设计。

  • 原生性能

    Flutter包含了许多核心的widget,如滚动、导航、图标和字体等,这些都可以在iOS和Android上达到原生应用一样的性能。

Flutter上如何实现实时音视频

Flutter上提供了2种方式进行视频渲染,分别是Texture Widget和PlatformView。

方法一:Texture Widget

首先我们要知道视频是由一帧帧图像组成的。Flutter的Texture 提供了一个可以放在 Layer Tree 里的组件,组件中的数据源需要由你通过 Native 端来提供。

我们以 iOS 为例,iOS 就需要提供 CVPixelBufferRef。这是一个数据,对应的就是视频中的一帧画面。把这个数据作为数据源提供给Texture Widget,然后Texture Widget就可以把你提供的这些数据显示出来,最终就变成了一个视频。

方法二:PlatformView

由于 Texture 会涉及到很多渲染的流程,所以很多人都会觉得它有些复杂。所以在 Flutter 1.0版本中,Google 给出了一个新的东西,叫做 PlatformView。

PlatformView提供了一种方法,让我们可以创建 UI View,并加到 Dart 的 LayerTree 里。在 Dart 中的类对应到 iOS 和 Android 平台分别是UIKitView 和 AndroidView。

PlatformView的使用方法:在 PluginRegistar 中新增了 ViewFactory,ViewFactory 只有 CreateView 这一个方法需要实现。你可以在这个方法里首先提供一个 Identifier,在实现该方法后,可以返回一个你想要的 PlatformView,并与 Dart 组件绑定在一起。因为anyRTC的SDK支持传递 Native 的 Vie 10422 w,然后将视频渲染到上面,就可以播放了。

anyRTC Flutter SDK 集成指引及示例DEMO

参考地址:https://github.com/anyRTC/Flutter-SDK

anyRTC考虑到了用户的应用创建了实时消息Flutter-RTM

参考地址:https://github.com/anyRTC/Flutter-RTM

应用场景

Flutter SDK

社交娱乐方面

可以应用在视频群聊:朋友吐槽,家庭会议、闺蜜八卦、同学同事交流、轻松将小伙伴们紧密联系一起。

主播连麦PK:主播PK就是一个主播在直播时,可以对另一个直播间的主播发起挑战。一旦挑战接受,两个直播间的主播就开始进行连麦互动,直播界面一分为二,同时显示两个主播的画面,两方粉丝也会进入到同一个直播间中。

在线KTV:在线KTV,异地用户可排麦、点歌、轮流演唱或合唱;主播、玩家随时语音连麦,进行PK。

教育方面

一对一小班课:学校内部局域网沟通;视频家访;一对一教学;轻松实现跨区域交流互动。一对一在线教育模式也是具个性化的,可以全方面把控教学过程。一对一在线教育因材施教,全方位为学生制定学习计划,从而更具针对学生的特质并对症下药。更重视学习方法,为学生营造了一种全新的学习氛围,通过相互感染,使学生在学习过程中产生学习的动力和强烈的学习意识,让学生更加关注学习。

在线金融

金融贷款:从递交申请材料到贷款发放,移动端即可轻松实现,在线审核办理贷款,同步录制控制贷款风险。

视频客服:一对一专属视频客服,可普遍运用于银行客服、线上审核服务等业务,可在线确认客户情况,办理业务,提高业务办理速度,节约资源,也为客户提供更为便捷的服务。视频客服通过协调沟通、支持情感表达以及实时分享内容,为客户提供了更丰富的存在感、个性化体验,配备了录音/录屏工具,主管/经理可以检查每个视频交互,以查看客服中心座席是否对客户有同情心和情感反应。

Flutter-RTM

  • 社交沟通

    音视频呼叫:一对一及多人音视频通话信令

    聊天互动:一对一文字消息、群文字消息等

  • 直播聊天室

    聊天互动:群聊消息、弹幕、礼物、点赞等

    直播间状态维护:上下麦状态、直播间人数、名单管理等

  • 游戏交流

    团队组队、游戏解说、游戏直播间消息、礼物等

总结

anyRTC Flutter SDK 为开发者们提供了更多的开发选择性,同时anyRTC跨平台框架已支持APICloud(https://www.apicloud.com/mod_detail/115685),anyRTC也将紧跟时代,创造出更多应用来服务于各位用户,Electron和uni-app已在内测路上,请大家拭目以待!

anyRTC创业扶持计划

即日起-2020年12月30日,anyRTC创业扶持计划正式启动,anyRTC致力于为创业团队提供专家指导及技术、资金、发行等全面扶持,一站式解决从产品立项到上线的所有问题。帮助中小型企业在音视频领域轻松打造爆款应用。

更多关于创业扶持计划的信息请前往anyRTC官网进行查阅:

anyRTC创业扶持计划网址:https://www.anyrtc.io/activity

anyRTC官网:https://www.anyrtc.io/

标签: