音频回调功能有时不被调用

我是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采样)

但问题是,回调函数没有及时调用,或者调用延迟导致声音变得适合。 我无法将数据传递到回调函数。

您能否建议一种方法将传递数据(样本)同步到回调函数或提供一些应用程序,以便在样本中传递数据?


我们需要真正的价值观来完全回答你的问题。

你尝试过的缓冲区大小是多少?

也意识到SDL不给你想要的东西是很常见的,所以请检查实际的规格缓冲区大小。

我一直在Windows上使用SDL的二进制mingw32端口,无论我要求什么,都不会给我缓冲区小于一秒。

链接地址: http://www.djcxy.com/p/5791.html

上一篇: Audio callback function is not called in time sometimes

下一篇: How to return value from an asynchronous callback function?