Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows mobile 在Windows Mobile 6 SndPlaySync中缓慢播放Mp3_Windows Mobile_Mp3_Windows Mobile 6 - Fatal编程技术网

Windows mobile 在Windows Mobile 6 SndPlaySync中缓慢播放Mp3

Windows mobile 在Windows Mobile 6 SndPlaySync中缓慢播放Mp3,windows-mobile,mp3,windows-mobile-6,Windows Mobile,Mp3,Windows Mobile 6,我正在尝试使用最新支持的mp3播放功能SndPlaySync(也尝试了SndPlaySync)从我的winows移动应用程序播放mp3文件。 我制作了一个最简单的程序,只是将函数附加到WM_KEYDOWN事件。(代码见下文)。但在这之前,总有0.5-2秒的等待时间 这个程序播放mp3。当我简单地使用PlaySound并尝试播放.wav文件时,它工作不稳定。我能做什么 代码: 这个太慢了 case WM_KEYDOWN: PlaySound(c_szMid,NULL,NULL);

我正在尝试使用最新支持的mp3播放功能SndPlaySync(也尝试了SndPlaySync)从我的winows移动应用程序播放mp3文件。 我制作了一个最简单的程序,只是将函数附加到WM_KEYDOWN事件。(代码见下文)。但在这之前,总有0.5-2秒的等待时间 这个程序播放mp3。当我简单地使用PlaySound并尝试播放.wav文件时,它工作不稳定。我能做什么

代码:

这个太慢了

case WM_KEYDOWN: 
    PlaySound(c_szMid,NULL,NULL);
    HSOUND hSound;
    HRESULT hr;
    SndOpen(c_szMid, &hSound);
    hr = SndPlayAsync(hSound, 0);
    hr = SndClose(hSound);
这很快就能奏效:

case WM_KEYDOWN: 
    PlaySound(c_szMid,NULL,NULL);
如果您有任何想法,我将不胜感激

谢谢


Dan

不要忘记,mp3文件是压缩的,而wav文件不是压缩的

因此延迟可能是将
mp3
文件读入内存并解压缩所需的时间,而
wav
文件不一定会发生这种情况


不过我不确定你会如何验证这一点。

不要忘记,
mp3
文件是压缩的,而
wav
则不是

因此延迟可能是将
mp3
文件读入内存并解压缩所需的时间,而
wav
文件不一定会发生这种情况


但我不确定您将如何验证这一点。

该代码正确吗?现在调用PlaySound(同步的),后面是异步版本。对我来说,这应该是播放两次声音


另外,如果您尝试使用with SND_ASYNC标志,您会看到什么行为?

这段代码正确吗?现在调用PlaySound(同步的),后面是异步版本。对我来说,这应该是播放两次声音


另外,如果您尝试使用SND_ASYNC标志,您会看到什么行为?

我实际上在尝试SndPlaySync的地方添加了代码,但它与SndPlaySync的效果相同

事实上,我缩小了问题的范围——甚至当我尝试使用 播放声音(带同步标志)并使用SndPlaySync,SndPlaySync的运行速度是原来的两倍:(


我将就此提出一个新问题。

我实际上在尝试SndPlaySync的地方添加了代码,但在SndPlaySync中效果相同

事实上,我缩小了问题的范围——甚至当我尝试使用 播放声音(带同步标志)并使用SndPlaySync,SndPlaySync的运行速度是原来的两倍:(

我将就此提出一个新问题