在Mac筆記本電腦上(OS 10.9.5),當播放來自python程序的聲音時,我會在聲音播放之前得到0.5 s的初始啓動延遲。如果我在最後一分鐘左右播放聲音,則沒有這種延遲。我已經看到在線傳遞對這種事物的引用,但沒有太多的見解(例如,http://music.columbia.edu/pipermail/portaudio/2014-November/016364.html)。我尋找一種Apple API的方式來禁用它(比如屏幕保護程序),但沒有看到任何明顯的東西。這個問題可能特定於筆記本電腦,例如作爲省電功能。它不僅發生在電池電量上,而且還發生在插入電源時。如何避免Mac上的音頻初始0.5s延遲?
問題:從OSX上的python,如何告訴Mac做任何需要做的事情來避免第一次播放聲音時的0.5秒延遲?
約束:通過子進程調用一些像pmset
這樣的命令是可以接受的,除非它需要root(sudo)priv的;即只有普通的用戶空間命令是可以接受的。也是不可接受的:它每隔30秒左右就可以輕鬆地編寫一段簡短的無聲音,但這會增加程序和使用資源的複雜性 - 必須有更好的方法來實現它。
這將是有用的,如果你能有一個最小的例子,這樣的人可以嘗試瑞普你的問題的渲染。 – jaket 2015-02-23 19:48:41
好主意,@jaket,最簡單的例子都很棒。我用pyaudio嘲笑了一個,並沒有得到0.5s的延遲,這非常有趣。它很難提供我的案例的一個最小例子,這是一個名爲PsychoPy的桌面應用程序播放聲音,它使用pyo來播放聲音。當使用pysoundcard/pysoundfile而不是pyo時,我也會看到延遲,也是0.5s。我希望這是可以用mac系統設置修復的東西,但這似乎不太可能。 – jrgray 2015-02-23 21:09:22