本技術(shù)涉及計(jì)算機(jī),特別涉及一種虛擬環(huán)境中的音頻處理方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品。
背景技術(shù):
1、在游戲過程中,終端播放的音效在增強(qiáng)玩家體驗(yàn)方面起著關(guān)鍵作用。設(shè)計(jì)優(yōu)秀的音效能夠使玩家在游玩游戲時(shí)更具有代入感。其中,游戲內(nèi)的音效包括環(huán)境聲音、角色對話、特效音、背景音樂等。
2、相關(guān)技術(shù)中,游戲音效通常是由一系列預(yù)先錄制的音軌實(shí)現(xiàn)的。即,在游戲應(yīng)用程序的開發(fā)過程中配置好各音效對應(yīng)的音軌,在玩家游玩游戲過程中,判斷玩家是否觸發(fā)了音效關(guān)聯(lián)的事件來播放預(yù)先錄制的音軌。例如,當(dāng)玩家控制主控虛擬角色進(jìn)入某一地圖時(shí),循環(huán)播放預(yù)先錄制的該地圖的背景音樂;當(dāng)玩家控制主控虛擬角色與非玩家角色(non-player?character,npc)交互時(shí),觸發(fā)npc的對話語音。
3、然而,預(yù)先配置的音軌使得玩家在體驗(yàn)游戲過程中感受到的音效的單一的,例如,不同的玩家在同一地圖聽到的環(huán)境音或是背景音都是相同的。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例提供了一種虛擬環(huán)境中的音頻處理方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品。所述技術(shù)方案如下:
2、一方面,提供了一種虛擬環(huán)境中的音頻處理方法,所述方法包括:
3、獲取虛擬環(huán)境中環(huán)境音源元素的元素音頻數(shù)據(jù),所述虛擬環(huán)境包括主控虛擬角色;
4、基于所述環(huán)境音源元素和所述主控虛擬角色在所述虛擬環(huán)境中的相對方位關(guān)系,獲取所述環(huán)境音源元素對應(yīng)的音效參數(shù);
5、基于所述音效參數(shù)調(diào)整所述元素音頻數(shù)據(jù),生成所述環(huán)境音源元素對應(yīng)的空間音頻數(shù)據(jù),所述空間音頻數(shù)據(jù)用于表現(xiàn)在所述相對方位關(guān)系下所述主控虛擬角色對所述環(huán)境音源元素產(chǎn)生的音頻的感知效果;
6、基于所述空間音頻數(shù)據(jù)生成場景音頻數(shù)據(jù),所述場景音頻數(shù)據(jù)為所述主控虛擬角色對所述虛擬環(huán)境內(nèi)產(chǎn)生的至少一種音頻的感知效果。
7、另一方面,提供了一種虛擬環(huán)境中的音頻處理裝置,所述裝置包括:
8、第一獲取模塊,用于獲取虛擬環(huán)境中環(huán)境音源元素的元素音頻數(shù)據(jù),所述虛擬環(huán)境包括主控虛擬角色,所述環(huán)境音源元素為在所述虛擬環(huán)境中產(chǎn)生音頻的聲源;
9、第二獲取模塊,用于基于所述環(huán)境音源元素和所述主控虛擬角色在所述虛擬環(huán)境中的相對方位關(guān)系,獲取所述環(huán)境音源元素對應(yīng)的音效參數(shù);
10、生成模塊,用于基于所述音效參數(shù)調(diào)整所述元素音頻數(shù)據(jù),生成所述環(huán)境音源元素對應(yīng)的空間音頻數(shù)據(jù),所述空間音頻數(shù)據(jù)用于表現(xiàn)在所述相對方位關(guān)系下所述主控虛擬角色對所述環(huán)境音源元素產(chǎn)生的音頻的感知效果;
11、所述生成模塊,還用于基于所述空間音頻數(shù)據(jù)生成場景音頻數(shù)據(jù),所述場景音頻數(shù)據(jù)為所述主控虛擬角色對所述虛擬環(huán)境內(nèi)產(chǎn)生的至少一種音頻的感知效果。
12、在一些可選的實(shí)施例中,所述第二獲取模塊,還包括:
13、第一獲取單元,用于獲取所述環(huán)境音源元素在所述虛擬環(huán)境中的第一位置信息;獲取所述主控虛擬角色在所述虛擬環(huán)境中的第二位置信息;
14、第一確定單元,用于基于所述第一位置信息和所述第二位置信息,確定所述環(huán)境音源元素和所述主控虛擬角色之間的所述相對方位關(guān)系;
15、第一生成單元,用于基于所述相對方位關(guān)系,生成所述環(huán)境音源元素對應(yīng)的所述音效參數(shù)。
16、在一些可選的實(shí)施例中,所述第一確定單元,還用于基于所述相對方位關(guān)系,確定所述環(huán)境音源元素產(chǎn)生的音頻在所述環(huán)境音源元素和所述主控虛擬角色之間的聲音傳播路徑;
17、所述第一生成單元,還用于基于所述聲音傳播路徑生成所述環(huán)境音源元素對應(yīng)的音效參數(shù)。
18、在一些可選的實(shí)施例中,所述第一確定單元,還用于基于所述相對方位關(guān)系,確定所述環(huán)境音源元素產(chǎn)生的音頻從所述環(huán)境音源元素直接傳播至所述主控虛擬角色的第一傳播路徑;基于所述相對方位關(guān)系,確定所述環(huán)境音源元素產(chǎn)生的音頻在所述虛擬環(huán)境中經(jīng)過反射后傳播至所述主控虛擬角色的第二傳播路徑;
19、所述第一生成單元,還用于基于所述第一傳播路徑和所述第二傳播路徑,確定所述環(huán)境音源元素對應(yīng)的所述音效參數(shù)。
20、在一些可選的實(shí)施例中,所述第一確定單元,還用于基于所述主控虛擬角色在所述虛擬環(huán)境中的朝向確定所述主控虛擬角色對應(yīng)的視野范圍;
21、所述第一生成單元,還用于在所述環(huán)境音源元素處于所述視野范圍內(nèi)的情況下,基于第一參數(shù)確定所述音效參數(shù);在所述環(huán)境音源元素處于所述視野范圍外的情況下,基于第二參數(shù)確定所述音效參數(shù);其中,所述第一參數(shù)對應(yīng)的音頻音量大于所述第二參數(shù)對應(yīng)的音頻音量。
22、在一些可選的實(shí)施例中,所述環(huán)境音源元素包括形成所述虛擬環(huán)境中的虛擬空間的空間元素,所述主控虛擬角色處于所述虛擬空間中;
23、所述第一確定單元,還用于基于所述相對方位關(guān)系,確定所述空間元素對所述主控虛擬角色的包圍狀態(tài)信息;
24、所述第一生成單元,還用于基于所述包圍狀態(tài)信息確定所述主控虛擬角色所處虛擬空間的空間類型;獲取與所述空間類型匹配的音效參數(shù)。
25、在一些可選的實(shí)施例中,所述第一確定單元,還用于基于所述相對方位關(guān)系,確定所述主控虛擬角色和所述環(huán)境音源元素之間的距離信息;
26、所述第一生成單元,還用于基于所述距離信息確定所述環(huán)境音源元素產(chǎn)生的音頻對應(yīng)的衰減參數(shù)和延遲參數(shù);基于所述衰減參數(shù)和所述延遲參數(shù)確定所述音效參數(shù)。
27、在一些可選的實(shí)施例中,所述第一獲取模塊,還用于獲取所述虛擬環(huán)境的場景數(shù)據(jù),所述場景數(shù)據(jù)包括多個(gè)候選環(huán)境元素的元素?cái)?shù)據(jù);將所述場景數(shù)據(jù)輸入預(yù)訓(xùn)練的場景識(shí)別模型,從所述多個(gè)候選環(huán)境音源元素中篩選得到所述環(huán)境音源元素,所述場景識(shí)別模型用于結(jié)合所述虛擬環(huán)境的整體情況識(shí)別所述虛擬環(huán)境中產(chǎn)生音頻的聲源作為所述環(huán)境音源元素。
28、在一些可選的實(shí)施例中,所述環(huán)境音源元素包括角色元素,所述角色元素用于指示所述虛擬環(huán)境中除所述主控虛擬角色之外的場景虛擬角色;
29、所述第一獲取模塊,還包括:
30、第二獲取單元,用于獲取所述角色元素的臺(tái)詞數(shù)據(jù)和角色特征信息,所述角色特征信息用于描述所述場景虛擬角色的屬性,其中,所述場景虛擬角色的屬性包括所述場景虛擬角色的基礎(chǔ)屬性和情景表現(xiàn)屬性中的至少一種,所述基礎(chǔ)屬性是針對所述場景虛擬角色預(yù)先配置的屬性,所述情景表現(xiàn)屬性是所述場景虛擬角色在所述虛擬環(huán)境的情景下實(shí)時(shí)確定的屬性;
31、第二生成單元,用于根據(jù)所述臺(tái)詞數(shù)據(jù)生成與所述角色特征信息匹配的角色語音,作為所述角色元素對應(yīng)的元素音頻數(shù)據(jù)。
32、在一些可選的實(shí)施例中,所述角色特征信息包括角色基礎(chǔ)信息、角色情緒信息、角色行為信息中的至少一種;
33、所述角色基礎(chǔ)信息用于指示所述場景虛擬角色的角色基本情況;
34、所述角色情緒信息用于指示所述場景虛擬角色在所述臺(tái)詞數(shù)據(jù)對應(yīng)的對話情景下的情緒狀態(tài);
35、所述角色行為信息用于指示所述場景虛擬角色在所述對話情景下執(zhí)行的動(dòng)作;
36、其中,不同的角色特征信息對應(yīng)不同的角色語音的表現(xiàn)。
37、在一些可選的實(shí)施例中,所述第二生成單元,還用于將所述臺(tái)詞數(shù)據(jù)和所述角色特征信息輸入預(yù)訓(xùn)練的語音生成模型,得到所述角色語音,以作為所述元素音頻數(shù)據(jù),所述語音生成模型用于生成與所述場景虛擬角色的所述角色特征信息匹配的語音。
38、在一些可選的實(shí)施例中,所述語音生成模型包括文本編碼器、角色編碼器和解碼器;
39、所述第二生成單元,還用于將所述臺(tái)詞數(shù)據(jù)輸入所述文本編碼器,得到文本編碼表示;將所述角色特征信息輸入所述角色編碼器,得到角色編碼表示;融合所述文本編碼表示和所述角色編碼表示,得到聯(lián)合編碼表示;將所述聯(lián)合編碼表示輸入所述解碼器,生成所述角色語音。
40、在一些可選的實(shí)施例中,所述第二生成單元,還用于在所述角色特征信息包括角色基礎(chǔ)信息的情況下,將所述角色基礎(chǔ)信息輸入所述第一子編碼器,得到第一角色編碼表示;在所述角色特征信息包括角色情緒信息的情況下,將所述角色情緒信息輸入所述第二子編碼器,得到第二角色編碼表示;在所述角色特征信息包括角色行為信息的情況下,將所述角色行為信息輸入所述第三子編碼器,得到第三角色編碼表示。
41、在一些可選的實(shí)施例中,所述第二獲取單元,還用于獲取與所述角色元素對應(yīng)的語速設(shè)置信息,所述語速設(shè)置信息用于指示所述場景虛擬角色的語速設(shè)置情況;
42、所述第一獲取模塊,還包括:
43、第二確定單元,用于基于所述語速設(shè)置信息確定所述臺(tái)詞數(shù)據(jù)對應(yīng)的預(yù)估播放時(shí)長;
44、所述第二獲取單元,還用于獲取所述角色語音對應(yīng)的語音時(shí)長;
45、調(diào)整單元,用于基于所述語音時(shí)長和所述預(yù)估時(shí)長之間的差異調(diào)整所述角色語音的播放速度。
46、在一些可選的實(shí)施例中,所述第一獲取單元,還用于獲取所述角色元素在所述虛擬環(huán)境中的第一位置信息;以及,獲取所述主控虛擬角色在所述虛擬環(huán)境中的第二位置信息;
47、所述第一生成單元,還用于在所述第一位置信息和所述第二位置信息之間的位置距離達(dá)到第一閾值的情況下,生成語調(diào)調(diào)整參數(shù),所述語調(diào)調(diào)整參數(shù)用于調(diào)整所述角色語音的語調(diào);基于所述語調(diào)調(diào)整參數(shù)確定所述音效參數(shù)。
48、在一些可選的實(shí)施例中,所述裝置還包括:
49、接收模塊,用于接收第一賬號(hào)針對所述角色元素的自然語言命令,所述第一賬號(hào)為控制所述主控虛擬角色的賬號(hào);
50、所述第二生成單元,還用于基于所述自然語言命令持續(xù)生成所述角色元素的多個(gè)臺(tái)詞片段以組成所述臺(tái)詞數(shù)據(jù),以及記錄各臺(tái)詞片段生成時(shí)的第一起始時(shí)間戳和第一結(jié)束時(shí)間戳;在第i個(gè)臺(tái)詞片段生成完成的情況下,根據(jù)所述第i個(gè)臺(tái)詞片段生成與所述角色特征信息匹配的第i個(gè)角色片段語音以作為所述元素音頻數(shù)據(jù),以及記錄所述第i個(gè)角色片段語音生成時(shí)的第二起始時(shí)間戳和第二結(jié)束時(shí)間戳,i為正整數(shù);
51、所述第二確定單元,還用于確定所述第一起始時(shí)間戳和所述第二起始時(shí)間戳之間的第一差異;確定所述第一結(jié)束時(shí)間戳和所述第二結(jié)束時(shí)間戳之間的第二差異;
52、所述調(diào)整單元,還用于基于所述第一差異和所述第二差異之間的差異,調(diào)整向終端發(fā)送所述第i個(gè)臺(tái)詞片段對應(yīng)的所述場景音頻數(shù)據(jù)的傳輸速度。
53、在一些可選的實(shí)施例中,所述第一獲取單元,還用于獲取所述自然語言命令對應(yīng)的環(huán)境音信息,所述環(huán)境音信息用于指示采集包括所述自然語言命令的語音時(shí),所述語音中的背景環(huán)境音相關(guān)的信息;
54、所述第一生成單元,還用于基于所述環(huán)境音信息生成所述角色語音的語調(diào)調(diào)整參數(shù);基于所述語調(diào)調(diào)整參數(shù)確定所述音效參數(shù)。
55、在一些可選的實(shí)施例中,所述環(huán)境音信息包括環(huán)境音量,所述語調(diào)調(diào)整參數(shù)對應(yīng)的語調(diào)高度與所述環(huán)境音量的大小呈正相關(guān)關(guān)系;或者,所述環(huán)境音信息包括所述背景環(huán)境音對應(yīng)的環(huán)境識(shí)別類型,在所述環(huán)境識(shí)別類型為網(wǎng)吧類型時(shí),所述語調(diào)調(diào)整參數(shù)對應(yīng)第一語調(diào),在所述環(huán)境識(shí)別類型為日間臥室時(shí),所述語調(diào)調(diào)整參數(shù)對應(yīng)第二語調(diào),在所述環(huán)境識(shí)別類型為夜間臥室時(shí),所述語調(diào)調(diào)整參數(shù)對應(yīng)第三語調(diào),其中,所述第一語調(diào)高于所述第二語調(diào),所述第二語調(diào)高于所述第三語調(diào)。
56、在一些可選的實(shí)施例中,所述虛擬環(huán)境中產(chǎn)生音頻的聲源包括多個(gè)環(huán)境音源元素;
57、所述第一獲取單元,還用于獲取所述虛擬環(huán)境的網(wǎng)格結(jié)構(gòu),所述網(wǎng)格結(jié)構(gòu)用于指示通過網(wǎng)格劃分所述虛擬環(huán)境的場景劃分結(jié)果,所述網(wǎng)格結(jié)構(gòu)包括多個(gè)網(wǎng)格點(diǎn);
58、所述第一確定單元,還用于基于所述多個(gè)環(huán)境音源元素在所述虛擬環(huán)境中的位置,確定所述多個(gè)環(huán)境音源元素分別對應(yīng)的第一網(wǎng)格點(diǎn),所述多個(gè)環(huán)境音源元素對應(yīng)至少一個(gè)第一網(wǎng)格點(diǎn);
59、所述第一生成單元,還用于基于所述元素音頻數(shù)據(jù)生成所述第一網(wǎng)格點(diǎn)對應(yīng)的聲音緩存數(shù)據(jù);
60、所述第一確定單元,還用于響應(yīng)于所述主控虛擬角色進(jìn)入所述虛擬環(huán)境,確定所述主控虛擬角色所處位置對應(yīng)的第二網(wǎng)格點(diǎn);
61、所述第一生成單元,還用于基于所述第一網(wǎng)格點(diǎn)和所述第二網(wǎng)格點(diǎn)之間的相對位置關(guān)系,生成所述第一網(wǎng)格點(diǎn)對應(yīng)的音效參數(shù);
62、所述生成模塊,還用于基于所述第一網(wǎng)格點(diǎn)對應(yīng)的所述聲音緩存數(shù)據(jù)和所述音效參數(shù),生成所述第一網(wǎng)格點(diǎn)對應(yīng)的所述元素音頻數(shù)據(jù);整合所述至少一個(gè)第一網(wǎng)格點(diǎn)的所述元素音頻數(shù)據(jù),得到所述場景音頻數(shù)據(jù)。
63、另一方面,提供了一種計(jì)算機(jī)設(shè)備,所述計(jì)算機(jī)設(shè)備包括處理器和存儲(chǔ)器,所述存儲(chǔ)器中存儲(chǔ)有至少一條指令、至少一段程序、代碼集或指令集,所述至少一條指令、所述至少一段程序、所述代碼集或指令集由所述處理器加載并執(zhí)行以實(shí)現(xiàn)如上述本技術(shù)實(shí)施例中任一所述的虛擬環(huán)境中的音頻處理方法。
64、另一方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)中存儲(chǔ)有至少一條指令、至少一段程序、代碼集或指令集,所述至少一條指令、所述至少一段程序、所述代碼集或指令集由處理器加載并執(zhí)行以實(shí)現(xiàn)如上述本技術(shù)實(shí)施例中任一所述的虛擬環(huán)境中的音頻處理方法。
65、另一方面,提供了一種計(jì)算機(jī)程序產(chǎn)品或計(jì)算機(jī)程序,該計(jì)算機(jī)程序產(chǎn)品或計(jì)算機(jī)程序包括計(jì)算機(jī)指令,該計(jì)算機(jī)指令存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。計(jì)算機(jī)設(shè)備的處理器從計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)讀取該計(jì)算機(jī)指令,處理器執(zhí)行該計(jì)算機(jī)指令,使得該計(jì)算機(jī)設(shè)備執(zhí)行上述實(shí)施例中任一所述的虛擬環(huán)境中的音頻處理方法。
66、本技術(shù)的提供的技術(shù)方案至少包括以下有益效果:
67、當(dāng)玩家控制主控虛擬角色在虛擬環(huán)境中活動(dòng)時(shí),根據(jù)主控虛擬角色和虛擬環(huán)境中作為聲源的環(huán)境音源元素之間的相對方位關(guān)系,來獲取環(huán)境音源元素的音效參數(shù),通過音效參數(shù)調(diào)整元素音頻數(shù)據(jù)得到空間音頻數(shù)據(jù),整合虛擬環(huán)境內(nèi)的空間音頻數(shù)據(jù)得到向客戶端提供的場景音頻數(shù)據(jù)。由于場景音頻數(shù)據(jù)是基于主控虛擬角色和環(huán)境音源元素之間的相對方位關(guān)系實(shí)時(shí)生成的,提供虛擬環(huán)境的應(yīng)用程序無需為了提升音效表現(xiàn)效果的多樣性而預(yù)配置過多的應(yīng)用資源,減少了對運(yùn)行上述應(yīng)用程序的計(jì)算機(jī)設(shè)備的存儲(chǔ)空間的浪費(fèi)。
68、同時(shí),環(huán)境音源元素對應(yīng)的元素音頻數(shù)據(jù)在經(jīng)過音效參數(shù)的調(diào)整后,能夠模擬在當(dāng)前相對方位關(guān)系下主控虛擬角色對環(huán)境音源元素產(chǎn)生的音頻的感知效果,而后通過空間音頻數(shù)據(jù)生成虛擬環(huán)境的場景音頻數(shù)據(jù),以使計(jì)算機(jī)設(shè)備播放的場景音頻能使玩家代入主控虛擬角色感知虛擬環(huán)境內(nèi)產(chǎn)生的至少一種音頻,提升了玩家在游戲過程中感受到的音效的多樣性,從而提升玩家在虛擬環(huán)境中的代入感,提升用戶體驗(yàn)。