android fmod,Android采用fmod库实现变声效果
本文代码在https://github.com/czl0325/VoiceChange-Andorid
1.下载fmode库
前往 https://www.fmod.com/ 下载fmod库,上方有个download,点击进去,选择安卓版本。
2.加入库
Android studio3.1.4,新建一个工程,勾选include c/c++ support,把异常检测和安全转换也勾选上。
打开下载之后解压的fmod目录,我们使用目录 api/lowlevel的库,先把inc的文件都拷贝到cpp文件夹里进去,再把so库和jar包也加载到libs文件夹里。
jar文件要右键 ,add as library
3. 配置CMakeLists.txt文件cmake_minimum_required(VERSION 3.4.1)
#把系统的log库导入进来
find_library( log-lib
log )
set(distribution_DIR ../../../../libs)
#把libfmod.so预加载进来
add_library( fmod
SHARED
IMPORTED)
set_target_properties( fmod
PROPERTIES IMPORTED_LOCATION
${distribution_DIR}/${ANDROID_ABI}/libfmod.so)
#把libfmodL.so预加载进来
add_library( fmodL
SHARED
IMPORTED)
set_target_properties( fmodL
PROPERTIES IMPORTED_LOCATION
${distribution_DIR}/${ANDROID_ABI}/libfmodL.so)
add_library( native-lib
SHARED
src/main/cpp/native-lib.cpp )
include_directories(src/main/cpp/inc)
target_link_libraries( native-lib
fmod
fmodL
${log-lib} )
需要先把两个动态库预加载进来,然后修改build.gradle的文件,红色部分
编译时候发现提示不支持armeabi库,把libs文件夹的armeabi删除了。
至此编译全部成功。
4.编写代码
在MainActivity里面创建一个native的方法public native static int playSound(String path,int type);
有两个参数,一个是播放的音频所在的路径,一个是type用萝莉声音或者大叔声音来播放。
在native-lib里面实现方法。
播放声音分5个步骤:
1.System_Create创建一个system
2.init初始化
3.createSound创建一个声音
4.playSound播放声音
5.system->update();执行后声音才能播放出去。
第四步->第五步之间可以添加一些声音的特殊处理。
android fmod,Android采用fmod库实现变声效果相关推荐
- [项目总结]在ios中使用soundtouch库实现变声
这篇文章是项目总结了. 做了段时间的项目,过程中也遇到了很多麻烦,但是好在终于都解决了,这里是这里是项目之后凭着记忆总结出来,大家有遇到同样的问题,希望能参考了,但是我记忆可能不太好了,要是实践中有什 ...
- 在ios中使用soundtouch库实现变声
这篇文章是项目总结了. 做了段时间的项目,过程中也遇到了很多麻烦,但是好在终于都解决了,这里是这里是项目之后凭着记忆总结出来,大家有遇到同样的问题,希望能参考了,但是我记忆可能不太好了,要是实践中有什 ...
- IOS中使用SoundTouch库实现变声
IOS中使用SoundTouch库实现变声 void AQRecorder::StartRecord(CFStringRef inRecordFile) { mSoundTouch.setSample ...
- [修正]IOS中使用SoundTouch库实现变声
之前写过一片文章" IOS中使用SoundTouch库实现变声". 最后有很多朋友在博客上说发出来的代码在模拟器上运行可以,不能在真机上运行,前段时间一直也很忙,没时间翻代码出来查 ...
- Web Audio API实现简单变声效果
前言 想在网页中实现实时音频变声效果该如何实现呢,之前遇到这种处理音视频的需求,可能会想到需要借助C代码实现.但是现在随着浏览器性能的提升.web API的丰富,通过浏览器原生的API也可以操作音频数 ...
- NDK开发——Android Studio+CMake实现QQ变声效果
项目演示 Github:https://github.com/AndroidHensen/NDKVoice 项目分析 项目采用Fmod开源库,一个非常简单通用的音频引擎,对原始声音进行音效的处理即可做 ...
- SoundTouch开源库实现变声
类似于TOM猫,实现了录音并且通过参数调节播放变声 开源库可以在 http://www.surina.net/soundtouch/ 下载 tempo;// Change sound tempo ...
- android fmod,Android ndk开发:fmod语音学习(二)
在上一篇文章中,介绍以及搭建了FMOD的Android示例,这篇文章是在上一篇文章的基础上写的.所以建议首先读一下我的这篇文章. 本文使用FMOD来实现变声效果,直接使用<Android ndk ...
- android变声后的文件,仿QQ语音变声功能实现(二)---移植到android studio 并解决部分问题...
版权声明:转载必须注明本文转自张鹏辉的博客: http://blog.csdn.net/qingtiangg 大家好,距离上一篇博客半年过去了,关于上一篇博客很多人加我QQ留言问了几个问题,最近不忙决 ...
- Android 开发之 QQ变声功能实现
1.简介 在QQ中我们使用到的一个功能就是变声,QQ是使用FMOD实现的,那么同样的我们也使用FMOD让自己的应用可以变音 2.FMOD简介 fmod Ex 声音系统是为游戏开发者准备的革命性音频引擎 ...
最新文章
- cmd中运行python文件,并带参数
- 从AppStore提取ipa
- 【LeetCode】4.寻找两个正序数组的中位数
- Codeforces Round #618 (Div. 2)-C. Anu Has a Function
- 数据库 CURD测试题【简单】
- netstat 相关命令解析
- Sublime Text 3无法安装Package Control插件的解决
- Java笔记-Java通过JNI调用Linux上so文件
- jq执行2次同样的方法怎么让第一次执行的不触发_你不知道的CMS GC
- 大佬教你如何写出更好的CSS,分享web前端资料
- cannot add new member解决方法
- wps python 自动化_请教下 Python 高手,如何用 Python 自动化操作 Excel?
- 在IDEA中创建Maven项目和添加tomcat
- 车广告讲堂之 广告设计字体美身
- IAST技术进阶系列(四):DevOps流水线敏捷实践
- rpm安装java_【CentOS】rpm包安装Jdk
- 活性基因免疫靶向细胞疗法
- acm竞赛java很少,Java多线程在ACM竞赛中的应用
- 王牌战士服务器维修,王牌战士开服时间表 开服时间一览[多图]
- 一个线上运营着3000+人的游戏,因为我不小心一个DROP DATABASE,全没了。 怎么办??跟我HOLD住!!!...