帶感情的語音APP開發筆記(一)

小時候嚮往神祕的天空,進而想知道任何關於神祕的東西,自然而然的喜歡上了聽大人講鬼故事。愛上靈異網,中國靈異網這些都或多或少的見過。然而這和APP有什麼關係?既然聽這些故事,自然要去找資源,然而資源有限啊。只能自己創造資源了。本來就是單純的打算做一個讀鬼故事的APP,然而那樣聽起來死板的很,根本帶入不了那種情境。只能想辦法讓APP自己分析語句的情境和聲音大小、語速等方面的信息,通過語音合成和變聲器來生成一句話,實現能任意給APP一篇常見的文章,他都能稍帶有感情的讀。使聽者感覺到不死板即可。

莫言情難忘記於 2019.9.1

功能:語音閱讀文章,可選擇聲音(男,女,小夥,老人)等。

設計思路:在開源的小說閱讀的APP基礎上添加相應功能。情境分析暫時採用百度AI自然語言處理解決;語音合成採用百度語音合成,它能簡單的實現語速,聲音大小,部分聲色的改變;變聲器採用FMod開發,需要採用ndk 開發的方式改變聲色等信息。

採用Android Studio(以下簡稱AS)開發

開發記錄:

1.閱讀APP魔改

Fork 開源軟件“閱讀” 軟件源碼及開發者信息等點擊 傳送 

Clone後編譯到本地,發現需要firebase(或許得翻牆)google service json文件

於是下載相應的配置文件導入AS project app directory中

略微看了下大概佈局等信息

附:firebase網址:傳送

2.百度sdk下載與移植

AS 新建項目 New AS project

在百度Ai智能平臺(傳送)下載百度語音sdk與demo

選擇需要的資源與代碼移植到project中

部分代碼文件  語言dat文件(無網絡下的語音文件。Assects中)layout文件  so架構文件等

4.百度語音開發

百度AI等信息集成指南:傳送

給項目設置appid appkey等配置信息(務必)

在APP build gradle中加入httpclient 包

加入httpclient包原因與添加方法:傳送

添加之後可開發了

附:百度AI語音合成android SDK文檔 傳送

5.自然語言開發

與4百度語音開發不經相同(差不多的意思),多事參考sdk文檔開發

附:百度AI自然語言處理android SDK文檔傳送

6.變聲器開發

因爲採用Android studio 的ndk開發,故此新建項目的時候選擇 include C++ 選項,然而最新AS把C++項目的新建方式改變了,在下圖這個位置,即可創建。

 

初次接觸NDK的開發者請在SDK Manager:添加 NDK  cMake LLDB

將下載好的fmod(fmod:傳送壓縮包解壓,然後將api/lowlevel下包的lib包下的 armeabi,x86文件及其文件下的.so庫,fmod.jar 拷貝到項目的libs目錄下。

將api/lowlevel包下的inc文件及其文件拷貝到項目的cpp目錄下

Assets(沒有進建個)文件夾導入mp3文件(即將變聲的文件)

寫入ChangeUtils類文件

Javah 變成.h文件(絕對目錄)

如:javah -encoding UTF-8 -classpath F:\androidproject\bianshengqi\app\s

rc\main\java -jni cn.edu.caztc.bianshengqi.ChangeUtils

開發後調試應用,出現一個bug,百度谷歌搜不到,正在解決。

 2019.9.11記

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章