2010-01-29 105 views
1

我正在使用OpenAL製作可可觸摸應用程序,但是如果我被迫(我不需要3d的東西),我願意切換到另一個框架。OpenAL - 向後播放緩衝區?

我一直在尋找一種播放聲音的方式,但我只找到了使用音頻單元(非常複雜)的例子。反正有可能存儲一個緩衝區,所以我可以使用OpenAL向後播放它?

回答

2

您可以通過對波形數據重新排序每個樣本來向後播放聲音,這與二進制數據操作一樣簡單。

openAL不能從數據的末尾讀取樣本到第一個數據,但是您可以通過使用大小爲樣本大小的緩衝區排列數據以打開AL,例如,如果您正在使用16位波,你將需要有2個字節大小的緩衝區,然後將它逐個向後排隊,這不是很有效。

它仍然更好地預處理波數據,所以它會倒退,所以你有兩個數據(或軌道),正常的數據和反向的數據,然後你可以根據你的應用程序事件播放哪些數據/軌道。