Android 直播、短视频平台第三方宝宝特效SDK接入方式

2024-03-13 18:18

本文主要是介绍Android 直播、短视频平台第三方宝宝特效SDK接入方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目集成流程:

1.获取APPKEY:进入哎吖科技官网:http://www.aiyaapp.com/,提交接入申请,填入applicationId获取appKey。(可以免费申请试用)

2.添加Maven集成:在项目的build.gradle中添加引用,如图:


3. 添加依赖

compile 'com.aiyaapp.aiya:AyCore:v4.0.2'

compile 'com.aiyaapp.aiya:AyEffect:v4.0.2'

compile 'com.aiyaapp.aiya:AyBeauty:v4.0.2'

compile'com.aiyaapp.aiya:AyFaceTrack:v4.0.2

compile 'com.aiyaapp.aiya:AyShortVideoEffect:v4.0.2'

4、AiyaSDK认证。对于所有模块的认证,流程都是一致的。每个模块都有一个入口类,应用中要使用某个模块的功能时,需要调用AiyaEffects.registerComponent方法,注册这个模块。先设置监听器,在接收INIT消息时,注册需要使用的模块。AUTH消息为认证结果,如果无法使用特效,很多时候是因为认证失败。特效注册后,认证成功之前默认为模块可用,所以无需等待认证结果,可放心执行其他任务。

5.、使用流程:

利用CameraRecorder2来来预览相机并录制视频。

*其中mRecord.setRenderer(mFlinger);//添加渲染,其中的特效处理可以添加到mFinger中。
*CameraRecorder2是一个相机预览及录制工具类。

*AAVT是一个对视频的渲染库文件,其中包对mp4文件的处理,相机预览和视频录制的工具,还有YUV视频格式的导出等功能。

礼物贴图:引用so库

初始化AiyaGiftFilter类

*其中AiyaTracker表示的是加入人脸识别功能。

添加礼物贴图动画监听

*其中贴图资源可以放在项目的Assets目录中,若想减少apk的体积可以吧资源放入网络中获取。(资源可以从Demo中的Assets目录中获取)

*添加贴图资源和释放

*具体使用可以参考Demo中DefaultEffectFlinger类

人脸识别模块:可以与贴图配合使用,如上。同时也可以与美颜模块中的美型(大眼,瘦脸)配合使用。

*具体使用可以参考Demo中DefaultEffectFlinger类中的使用。

美颜模块:美颜共有AiyaBeauty.TYPE1,AiyaBeauty.TYPE2,AiyaBeauty.TYPE3,AiyaBeauty.TYPE4,

AiyaBeauty.TYPE5,AiyaBeauty.TYPE6,六种美颜形式。其引用的so文件如下

初始化AyBeautyFilter

*其中key表示的是美颜的六种类型

*mBeautyDegree:表示的是美颜的值,其取值范围在[0.0f, 1.0f]。

*其中每一种美颜模式都可以设置磨皮系数,红润度参数和美白参数,取值范围[0.0f, 1.0f]

设置美颜强度、设置磨皮强度、设置红润强度、设置美白强度

短视频模块:引用so库

其现总共有13中效果分别是:

无特效 ——————LazyFilter.class

灵魂出窍 ——————SvSpiritFreedFilter.class

抖动 —————— SvShakeFilter.class

黑魔法 —————— SvBlackMagicFilter.class

虚拟镜像 —————— SvVirtualMirrorFilter.class

荧光 —————— SvFluorescenceFilter.class

时光隧道 —————— SvTimeTunnelFilter.class

躁动 —————— SvDysphoriaFilter.class

终极变色 —————— SvFinalZeligFilter.class

动感分屏 —————— SvSplitScreenFilter.class

幻觉 —————— SvHallucinationFilter.class

70S —————— SvSeventysFilter.class

炫酷转动 —————— SvRollUpFilter.class

四分屏 —————— SvFourScreenFilter.class

三分屏 —————— SvThreeScreenFilter.class

黑白闪烁 —————— SvBlackWhiteTwinkleFilter.class

转场动画 —————— SvCutSceneFilter.class


添加混淆
-keep class com.aiyaapp.aiya.IEventListener{*;}
-keep class com.aiyaapp.aiya.WeakAnimListener{*;}
-keep class com.aiyaapp.aiya.render.AnimListener{*;}
-keep class com.aiyaapp.aiya.AiyaGiftEffect{*;}
-keep class com.aiyaapp.aiya.AiyaBeauty{*;}
-keep class com.aiyaapp.aiya.AiyaTracker{*;}
-keep class com.aiyaapp.aiya.AiyaShaderEffect{*;}

-keep class com.aiyaapp.aiya.AiyaEffects{*;}


项目的Demo: https://download.csdn.net/download/tanghongchang123/10323156

这篇关于Android 直播、短视频平台第三方宝宝特效SDK接入方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/805747

相关文章

Spring中配置ContextLoaderListener方式

《Spring中配置ContextLoaderListener方式》:本文主要介绍Spring中配置ContextLoaderListener方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录Spring中配置ContextLoaderLishttp://www.chinasem.cntene

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

AJAX请求上传下载进度监控实现方式

《AJAX请求上传下载进度监控实现方式》在日常Web开发中,AJAX(AsynchronousJavaScriptandXML)被广泛用于异步请求数据,而无需刷新整个页面,:本文主要介绍AJAX请... 目录1. 前言2. 基于XMLHttpRequest的进度监控2.1 基础版文件上传监控2.2 增强版多

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro

Win11安装PostgreSQL数据库的两种方式详细步骤

《Win11安装PostgreSQL数据库的两种方式详细步骤》PostgreSQL是备受业界青睐的关系型数据库,尤其是在地理空间和移动领域,:本文主要介绍Win11安装PostgreSQL数据库的... 目录一、exe文件安装 (推荐)下载安装包1. 选择操作系统2. 跳转到EDB(PostgreSQL 的

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

Android中Dialog的使用详解

《Android中Dialog的使用详解》Dialog(对话框)是Android中常用的UI组件,用于临时显示重要信息或获取用户输入,本文给大家介绍Android中Dialog的使用,感兴趣的朋友一起... 目录android中Dialog的使用详解1. 基本Dialog类型1.1 AlertDialog(

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放