我是SDL的新手。 我正在開發使用SDL的媒體播放器,現在我遇到了音頻回調函數有時不能及時調用的問題,並導致音頻稍微有些不足。SDL - 音頻回撥功能有時不會及時呼叫
我用這樣的一段代碼,打開音頻設備:
wanted_spec.xxx = xxx;
wanted_spec.callback = audio_callback; //audio_callback is my audio callback function
SDL_OpenAudio(&wanted_spec, &spec);
我的操作系統是Windows XP。
你知道這件事嗎?有人可以建議如何將數據饋送與回調函數同步爲0延遲。
我的問題是,而不是通過SDL_LoadWAV提供全wav文件,我想通過PCM樣品(大概1024個樣本)。(設計是這樣我會越來越PCM樣本)
但問題是,回調函數沒有及時呼叫,或者呼叫延遲導致聲音變得適合。我無法將數據傳遞到回調函數。
您能否建議一種將傳遞數據(樣本)同步到回調函數的方法,或者提供一些數據在樣本中傳遞的應用程序?
那麼,你在回調中做了什麼?您發佈的所有內容都是一些設置代碼 - 我們無法看到可能出現的問題。 – 2012-01-13 12:43:19
緩衝區有多大,即您期望SDL需要回調以便按時爲其提供服務的頻率? – unwind 2012-01-13 12:43:46