我做了一个语音通讯程序:用WAVEIN录入,ACM压缩成GSM,UDP传送,DIRECTSOUND回放,不知为何程序的时延会变大?
我跟踪了里面的数据,发现是回放的队列略有增大,增大回放线程的优先级效果并不明显。
还有从任务管理器看到内存一直不断增大。我怀疑是有内存泄露,查看代码又找不到,请各位高手给点idea.
我跟踪了里面的数据,发现是回放的队列略有增大,增大回放线程的优先级效果并不明显。
还有从任务管理器看到内存一直不断增大。我怀疑是有内存泄露,查看代码又找不到,请各位高手给点idea.
acmStreamConvert老返回512的错误,即#define ACMERR_BASE (512),头几次解压不出错,但到后来它的源数据没有用完,返回那个错误,不知道是什么原因我是边采集边压缩,因为是测试,又有解码及播放程序,在解压的时候,ACMSTREAMHEADER结构中的输入缓冲因为是边采集压缩的,有可能填不满,在解压的过程中,开始的几个压缩块能顺利解压并播放,但后来acmStreamConvert解压的时候就出错,描述如上,具休是什么原因也不知道。我怀疑是输入缓冲没有满的原因,但信不足,另外还怀疑压缩的时候是不是有什么特殊的要求,因为我是采集以后就压缩,也有输入缓冲填不满的时候,但压缩不报错,压缩后的块解压的时候就出了那个鬼问题,搞了很久也不知道是什么原因