chatgpt api+azure Speech Studio+ue5 metahuman相關(guān)資料
有很多人要分享代碼,其實代碼很少的,我也是四處找的被人分享的代碼,組合起來用的,現(xiàn)在我把這些都貼下面,感興趣的拿去玩吧.
首先,整個流程
1,按回車后錄入幾秒聲音,發(fā)送到azure獲得文本
2,將文本發(fā)送到chatgpt獲得AI反饋的文本
3,將catagpt發(fā)送到azure獲得聲音
4,使用c#的很簡單的程序獲得當(dāng)前系統(tǒng)的聲音大小,用udp發(fā)送到ue5
5,ue5使用udp接受數(shù)據(jù)拿到聲音強(qiáng)度系數(shù),在動畫藍(lán)圖中應(yīng)用到j(luò)awOpen曲線上驅(qū)動嘴.
6,輸入quit退出
1-3為python,4為c#,5為UE5
python:
這段代碼的部分參考了該網(wǎng)頁的內(nèi)容,感謝
https://cloud.tencent.com/developer/article/2179399?areaSource=&traceId=
os.environ.get('SPEECH_KEY')????寫到系統(tǒng)變量里的key
os.environ.get('SPEECH_REGION')????直接把文本寫代碼里也可以的,不過安全系數(shù)不夠高,也不方便多個代碼文件的使用.

c#部分只是獲取系統(tǒng)主音量的大小讓嘴巴動而已,非常low,現(xiàn)在很多人在做audio2face,這個效果會好很多,只是我不是做這一塊的,手頭上沒有現(xiàn)成的,反倒是有個以前做的一個獲取系統(tǒng)音量的簡單程序,拿來就用了.
UE5部分,因為我是在以前有一點點功能的基礎(chǔ)上改了一下用的,所以有點不相關(guān)的代碼.其實呢,這里建議你們找一下UE5有個udp插件,直接提供udp的藍(lán)圖使用方式,會更簡單,沒必要去折騰這個代碼,就是監(jiān)聽一個udp端口拿到數(shù)據(jù).
AIVision.h
AIVision.cpp
動畫藍(lán)圖中獲取音量值

modify curve節(jié)點使用音量值修改jawOpen的值,這是張嘴幅度,效果low到爆,哈哈哈哈

總結(jié):說實話,效果好主要是使用了UE5的metahuman資產(chǎn)和都市人群的表情動作,讓人物很生動,其他的就是調(diào)接口轉(zhuǎn)來轉(zhuǎn)去,沒啥含金量,放出來給大家參考吧.
python部分是可以單獨運(yùn)行的,語音對話功能,c#和UE5只是利用系統(tǒng)的聲音做了個假假的表演而已,非常非常臨時敷衍的拼湊