2009-08-10 19 views
2

我有存儲在中央數據庫中的.wav文件。我需要在Mac C++代碼中播放它們。 .wav文件有很多不同的格式 - 其中一些很老 - 比如4bit。在Mac C++程序中播放任何格式的.wav數據,類似於win32 PlaySound

我得到了使用AudioHardware接口的代碼來處理主要格式。但是,只有當.wav中的採樣率被音頻單元接受時,這些才能工作。

我需要一些類似於win32的PlaySound PlaySound,我只是給它提供包含.wav文件的緩衝區,並執行必要的轉換。

我需要回放發生同步或異步。

我迷路了,試圖閱讀蘋果開發者文檔 - 有這麼多不同的級別,而且綜述真的很差!我應該看看音頻隊列嗎?音頻文件? QuickTime的?

在此先感謝您的指點!

回答

2

我在10.5中開發,那麼AudioQueues就是你想要的API。它們不如單一功能那麼簡單,但它們提供了一個相當全面的高級API來播放各種聲音文件。

Audio Queue Programming Guide通過使用它進行回放的詳細示例,並涵蓋了您將需要提供的功能和結構。

我不能擔保此sample的質量,但它確實顯示了一個用於播放背景音樂的簡單Obj-C包裝,它應該足以讓您通過文檔牆。

祝你好運!