2013-02-11 47 views
0

OpenSLES規範1.0.1演示了3D音頻的實現。我的興趣是指定3D音頻源的位置。帶3D音頻的OpenSLES

我試着在android 14中實現它,但它給了「SL_RESULT_FEATURE_UNSUPPORTED」作爲結果。正如在此鏈接3D Sound in OpenSL ES通知的功能,如3D位置,聽衆和一般所有3D功能需要設置USE_PROFILES_GAME。

由於OpenSLES不是一個獨立的實體,並依賴於其他系統庫(如wilhelm.so),我無法真正獨立編譯該庫。所以我下載了整個android源代碼,設置了USE_PROFILES_GAME標誌,在Android.mk中包含了3D相關的類,默認排除,然後構建新的系統。

現在使用新的android系統映像我能夠獲得位置感應器,但它似乎不工作,即我感覺不到我的源音頻位置改變。

有沒有人在android中成功實現過3D音頻功能(尤其是3D音頻位置)? 3D音頻功能對移動硬件有任何依賴性嗎?

任何幫助表示讚賞。

回答

0

我在嘗試開發需要3D音頻的原型應用程序時遇到了同樣的問題能力。

我沒有去編譯我自己的android源代碼,但想到了這一點。前十名我在SOF上遇到了Android編譯的openal庫。由於不得不放棄另一個項目,我上週再次開始審視這個問題。我發現是這樣的:

http://www.am3d.co.jp/home-english/products/3d-audio/hardwaresoftware-platforms/android.aspx

這似乎是缺少的環節,而必須授權給你的應用程序。也許這對你有幫助。我在他們的網站上說「該實現實現了Android OpenSL ES實現中丟失的3D音頻功能」但是,即使它說「API是AM3D的簡單和專有API」技術文檔似乎顯示關閉,即您正在使用標準OpenSL ES方式對3D效果進行編程。

0

我知道任何設備上的3D接口仍然不支持。

距離NDK /文檔/ opensles/index.html的: 「 注:雖然基於OpenSL ES,Android原生音頻API沒有任何OpenSL ES 1.0.1型材(遊戲符合標準的實施,音樂或手機),這是因爲Android沒有實現任何配置文件所需的所有功能 「