Android JNI QQ 搞怪語音實戰 (含完整 Demo)

Android JNI QQ 語音實戰

其餘文章:android

Android JNI 入門(含完整Demo)git

Android JNI 進階(含完整 Demo)github

繼承 C++庫

想改變 語音音頻,那麼就得調用 C++的音頻庫 Fmodshell

Fmod 打開界面是這樣的:windows

\api

而後註冊,下載便可:markdown

  • 紅框:下載的時候我是 mac 因此下載 mac,這個是 Fmod 自帶的音頻調節軟件
  • 綠框:是Android 平臺的.so 文件等等

紅框下載後是這個樣子:架構

\oop

而後打開便可,打開的時候系統自帶了一些音頻:ui

\

選擇這個打開便可:

\

打開後是這樣的:一些簡單設置看文字便可
在這裏插入圖片描述

配置Fmod 在 Android 中的 C++環境

第一步:inc文件夾引入

打開下載的Fmod引擎

mac路徑爲:
fmodstudioapi20109android.api.core.inc

windows路徑基本相似
複製代碼

引入 inc 文件夾:
在這裏插入圖片描述

第二步:CMakeLists.txt 文件配置

在這裏插入圖片描述

include_directories("inc")
複製代碼

第三步:導入庫文件

在這裏插入圖片描述

# CMAKE_CXX_FLAGS 保留以前內容
# CMAKE_SOURCE_DIR CMakeLists.txt 所在路徑
# /../推出到上一級
# CMAKE_ANDROID_ARCH_ABI 獲取當前手機 CPU 架構
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_SOURCE_DIR}/../jniLibs/${CMAKE_ANDROID_ARCH_ABI}")
複製代碼

第四步:導入 jniLibs 文件

在這裏插入圖片描述

第五步:導入 jar 文件

在這裏插入圖片描述
記得添加依賴:

implementation files("libs\\fmod.jar") 複製代碼

第六步:配置 so 動態庫文件,連接到咱們的 so 庫

在這裏插入圖片描述

最後一步

在這裏插入圖片描述

  • 黃框:指定 CPU 架構 CMake本地庫
  • 紅框: 指定 CPU 架構,打入 apk文件

福利:
能夠使用 adb 命令看到本身手機使用的 CPU 架構是什麼

adb shell getprop ro.product.cpu.abi
複製代碼

效果圖爲:

走到這裏 Fmod 配置就所有完成了!

QQ 語音實戰思路

  • 經過消息引擎系統(System)來使用
  • 經過聲音(Sound)來配置聲音的進度
  • 經過音軌(Channel)來集成多種聲音混合使用
  • 最後經過 DSP(digital signal process 數字信號處理)來處理聲音

這裏只提供思路,如另有想法請下載 完整代碼

注意:

若是 so 庫報錯,把其餘兩個註釋掉

同理,若是你想看 JNI 基本使用(native-simple-lib.cpp)的代碼,那麼吧 JNI 進階和 QQ語音實戰的代碼註釋掉!

如今只能有一個 cpp 文件存在
在這裏插入圖片描述

完整代碼

其餘 JNI 文章:

Android JNI 入門(含完整Demo)

Android JNI 進階(含完整 Demo)

原創不易,您的點贊就是對我最大的支持~

相關文章
相關標籤/搜索