因此在Windows中,您可以使用PlaySound
函數在C++應用程序中播放MP3文件。什麼是可用於Mac OS X/Linux的一些類似功能?如果你可以鏈接到一些示例Hello-World類型的程序來演示這一點,我也會很感激。使用本機系統調用在C++中播放聲音?
回答
您可以只需open("/dev/dsp")
並寫信給它。我相信這就像你可以得到的「本地系統調用」一樣。
我不知道/ dev/dsp是否可用在mac上(默認情況下至少) – NothingMore 2012-02-19 11:20:39
你能給我一個工作的例子嗎?我不知道該怎麼做。 – 2013-06-26 03:09:20
嗯,我不確定當前的桌面是否有一些更高級的播放音頻文件的服務/庫,但是如果你真的想要做一些低級別的OS音頻輸出,開始尋找here。也許這對您的需求來說太低級了。
關於音頻:Linux!= Mac,所以我會分別回答。
MacOS對低級音頻使用core audio框架。在此基礎上,有幾個更高級別的API。如果你只是想播放一個聲音文件,AV Foundation Framework是最有可能的方式。 Here你找到一個例子來爲iOS創建一個簡單的應用程序,它可以輕鬆移植到MacOS。
對於Linux來說,整個情況相當微妙。存在許多不同的框架和庫,它很不清楚哪些是低的,哪些是高水平的,因爲其中一些正在仿效其他。基本上ALSA和OSS用於低級音頻。他們都是廢話。 Jack的目標是爲專業音頻提供一個框架,但它不是很便攜(至少如果你對嵌入式設備感興趣的話)。目前大多數Linux操作系統正在使用PulseAudio作爲他們的音頻服務器,它也有一個簡單的API用於播放單一聲音和一個非常困難的低層次API。然後是gstreamer庫,它非常便於攜帶,並且具有中途下降API,專門用於播放視頻文件和流音頻,因此可能是在Linux上的方式。
我個人建議使用PortAudio,這是一個庫,它提供 - 作爲名稱狀態 - 一個音頻框架,可跨多個操作系統和audio frameworks移植。 PortAudio的設計也很好,並且具有簡單但靈活的API。
- 1. 使用系統聲音播放聲音
- 2. 使用Swift播放系統聲音
- 3. 使用HTML播放系統聲音
- 4. 播放系統聲音UILocalNotification
- 5. 播放聲音作爲系統聲音
- 6. 在iOS中播放系統聲音
- 7. 使用ARC在IOS5中設置和播放系統聲音
- 8. 使用反應本機聲音不播放聲音
- 9. CoreAudio:播放系統聲音並錄製iphone中的播放聲音
- 10. iOS - 系統聲音未播放
- 11. Iphone SDK:播放「系統聲音」
- 12. 用C++播放聲音?
- 13. 在C++中播放聲音
- 14. 使用Xcode播放隨機聲音
- 15. 在手機上播放本地聲音
- 16. c中聲音播放後的聲音#
- 17. 使用JavaScript播放聲音
- 18. 在safari中使用javascript播放聲音
- 19. 使用Pyo在Python中播放聲音
- 20. 使用libasound無法在USB聲卡中播放聲音。 (C++)
- 21. 播放隨機聲音onTouch
- 22. 用手機上的javascript播放聲音
- 23. 播放系統咔嗒聲
- 24. 如何在Xamarin中播放系統聲音。表格
- 25. 如何在XAML中播放系統聲音?
- 26. 如何播放系統的特殊聲音?例如拖放式聲音
- 27. 統一Handheld.PlayFullScreenMovie()不播放聲音在Android
- 28. 在iPad上播放聲音,使用AudioToolbox
- 29. 使用JavaScript在mouseover上播放聲音
- 30. 錄製iPhone系統或音頻播放器的聲音
您應該考慮將OpenAL用於跨平臺音效/音樂。 – rasmus 2012-02-19 01:35:22