3行程式碼,為QQ輕遊戲加上語音互動能力

weixin_34402408發表於2018-08-17

歡迎大家前往騰訊雲+社群,獲取更多騰訊海量技術實踐乾貨哦~

本文由騰訊遊戲雲 發表於雲+社群專欄

遊戲和社交往往有著密不可分的關係,QQ輕遊戲就是一款整合在手Q裡面的遊戲平臺,直接通過手Q入口就能隨開隨玩,好友之間一言不合就可以遊戲PK起來。

互動、好玩、快速開發都成為小遊戲開發者的重要的核心競爭力,越來越多的小遊戲也開始使用語音互動,但無論是對於QQ輕遊戲團隊還是遊戲開發團隊而言,自主開發遊戲語音,既不經濟也不具備技術優勢。騰訊雲遊戲多媒體引擎 GME ( Gaming Multimedia Engine,以下簡稱 GME) 為QQ輕遊戲團隊提供的遊戲語音能力,讓遊戲開發商免於重複造輪子的同時,把更多時間花在提升核心競爭力上。

GME以SDK方式為QQ輕遊戲開發團隊提供音訊支援,QQ輕遊戲團隊僅需要在現成的音訊能力基礎上直接呼叫即可。GME在原有的SDK上進行了改造,大大簡化了接入流程,提供了簡單好用的音訊技術服務,甚至只需要3行程式碼,你就可以給自己開發的QQ輕遊戲加上語音互動場景。

如何改造讓接入流程更加簡便?

GME之前採用的是立體式介面,有一個總介面以及兩個子介面分別管理房間、音訊部分,每一個介面都有分別對應的介面事件。這樣有一個好處,用相關功能,只需要初始化對應的相關介面,監聽相關回撥,遊戲開發者使用起來更有層次感。

但這種接入模式比較複雜,不適用於QQ輕遊戲這樣的小遊戲平臺,真實的遊戲開發商並不會直接對接SDK提供商,每次出問題都要涉及三方聯調,所以這一套介面服務會引發後面不斷的人力投入。並且小遊戲平臺要把能力封裝到js指令碼層,需要由音訊服務商提供一套介面透傳到QQ輕遊戲的引擎層,再由QQ輕遊戲負責實現js層對應的音訊介面。 這個過程要求介面不能太多,否則不利於維護;但又不能太少,否則無法滿足複雜的外部產品遊戲需求。這就需要對現行的接入流程進行改造。

GME技術團隊重新梳理了需求,從QQ輕遊戲特殊需求出發,重新設計了接入流程。

QQ輕遊戲接入者通常都是小遊戲,開發週期沒那麼長,架構也不需要這麼豐富,GME技術團隊提煉出了高頻使用的功能:開關揚聲器和麥克風等。

所以GME技術團隊扁平化了GME的介面, 如下:

在程式碼中,只有以下8個介面

這樣對比以前會有一個好處,接入的時候使用者可以不需要關心黑匣子中的內容,只需要關心對應的功能API就行。

新的接入流程如下

這樣就比較好的接入實現了QQ輕遊戲使用場景,對於遊戲開發者而言,只要三步:

1, Import GME檔案

2, 直接呼叫初始化介面, 設定自身的APPID資訊

3, 之後再呼叫EnterRoom函式即可進房成功

因為內部預設開啟麥克風, 揚聲器, 所以只要 3行程式碼即可聽到彼此聲音。

QQ輕遊戲接入的遊戲通常體量較小,一般不會有過深的架構,並且需要最快速看見結果、得到響應,當使用者場景不一樣時,SDK也需要進行相應的轉換。扁平化介面思想,讓接入的遊戲開發商能第一時間看到結果,為他們提供了更好的接入體驗。

通過QQ輕遊戲案例,GME對SDK介面的改造,大大提升了遊戲開發者的接入效率。對於QQ輕遊戲或者類似的遊戲平臺來說,使用騰訊雲GME SDK,遊戲開發者只需要三步就可以完成音視訊功能的接入。

趕快體驗GME,實現3行程式碼就能讓小遊戲快速接入語音互動的能力。

速戳:cloud.tencent.com/product/gme

問答

AI開發的語言要求是什麼?

相關閱讀

如何在Ubuntu上搭建Minecraft伺服器

如何在Ubuntu上搭建方舟:生存進化伺服器

使用Patroni和HAProxy建立高度可用的PostgreSQL叢集

雲學院 · 每日課程推薦 | 《移動開發雲端新模式探索實踐》

此文已由作者授權騰訊雲+社群釋出,原文連結:cloud.tencent.com/developer/a…

搜尋關注公眾號「雲加社群」,第一時間獲取技術乾貨,關注後回覆1024 送你一份技術課程大禮包!

海量技術實踐經驗,盡在雲加社群

相關文章