簡體   English   中英

Monotouch C# 通過音量控制同時播放許多聲音

[英]Monotouch C# play many sounds simultaneously with volume control

我正在使用 Monotouch 和 C# 為 iOS 制作戰爭游戲。 我在音頻音效方面遇到了一些問題。

這就是我的要求:同時播放多種音效的能力(一次可能多達 10-20 個)和調節音量的能力(例如,如果用戶放大戰場,槍聲的音量會變大)。

這是我的問題:

使用 AVAudioPlayer,我可以調節音量,但每個線程只能播放 1 個聲音。 所以如果我想播放多個聲音,我必須有幾十個線程,以防它們重疊......這是一個戰爭游戲,在戰場上描繪 20 名士兵。 每個士兵都會有一個“聲音線程”來在他們射擊時播放槍聲,因為每個士兵都有可能恰好在同一時間開火。 我制作大量線程沒有問題,但我的游戲已經有幾十個線程一直在運行,添加更多線程可能會給我帶來麻煩......對嗎? 所以我寧願不走這條添加更多線程的道路,除非我也有......

使用 SystemSound,我可以在同一個線程中播放任意數量的聲音,但我無法調整音量......所以我在這里的工作是,對於我擁有的每個聲音效果 - 在 4 時保存 4 次不同的卷。 這是一個很大的痛苦......有什么方法可以用SystemSounds調節音量??

這兩個都滿足了我的一些要求,但似乎都不是天衣無縫的。 我應該走AVAudioPlayer多線程噩夢之路嗎? 還是 SystemSound 多文件不同音量級別的噩夢之路? 或者有沒有更好的方法來做到這一點?

提前致謝。

終於找到了我的問題的解決方案。 AVAudioPlayer 能夠同時播放多個聲音,但只能使用某些文件格式...詳細信息可在此鏈接中找到。 不能同時播放音效的原因是文件格式被壓縮了,iphone只有1個硬件解壓器。

http://brainwashinc.wordpress.com/2009/08/14/iphone-playing-2-sounds-at-once/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM