使用WM8731在Wince 5.0用media player播放声音报错

hf62580 2014-01-08 06:01:36
我在wince 5.0 下实现针对WM8731的音频驱动,只要不用media player播放声音是可以正常的播放声音(比如在控制面板播放声音),但一旦使用media player就会报错,通过查看调试信息,报错信息如下

Data Abort: Thread=87c394cc Proc=81eb6440 'device.exe'
AKY=00000005 PC=0256560c(s3c2450_wavedev.dll+0x0000560c) RA=00140000(device.exe+0x00130000) BVA=1c085f11 FSR=00000005
EXCEPTION IN IST for stream 0x588f90, buffer 0x1c085f11!!!!
Data Abort: Thread=87c394cc Proc=81eb6440 'device.exe'

通过查看代码是 下面这个函数报错

PBYTE WaveStreamContext::Render(PBYTE pBuffer, PBYTE pBufferEnd, PBYTE pBufferLast)
{
if (!m_bRunning || !m_lpCurrData)
{
return pBuffer;
}

while (pBuffer < pBufferEnd)
{
while (m_lpCurrData>=m_lpCurrDataEnd)
{
if (!GetNextBuffer())
{
return pBuffer;
}
}

_try
{

pBuffer = Render2(pBuffer,pBufferEnd,pBufferLast);
}
_except (EXCEPTION_EXECUTE_HANDLER)
{
RETAILMSG(1, (TEXT("EXCEPTION IN IST for stream 0x%x, buffer 0x%x!!!!\r\n"), this, m_lpCurrData));
m_lpCurrData=m_lpCurrDataEnd; // Pretend we finished reading the application buffer
}
}

return pBuffer;
}
谁有遇到过类似的问题
...全文
187 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cjwsimple 2014-05-13
  • 打赏
  • 举报
回复
wm8731音频驱动发给我一份呗 jwc0310@163.com 歇歇了
91program 2014-01-18
  • 打赏
  • 举报
回复
引用 3 楼 hf62580 的回复:
问题已解决,是驱动的问题,换了别人的音频驱动就没有问题,具体为什么出错还在研究
是的,一般来说不用去怀疑系统本身提供的东东。 如果真的有问题,也是我们自己的东东引起的。
hf62580 2014-01-17
  • 打赏
  • 举报
回复
问题已解决,是驱动的问题,换了别人的音频驱动就没有问题,具体为什么出错还在研究
hf62580 2014-01-08
  • 打赏
  • 举报
回复
但是如果不用media player播放音乐是没有这个问题的,我调试了,用其它播放音乐的方式也会调用这个函数的
91program 2014-01-08
  • 打赏
  • 举报
回复
查看一下 Render2(pBuffer,pBufferEnd,pBufferLast); 中的几个 Buffer 是否越界了?

19,519

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧