06 2014 档案
摘要:在用C++进行多线程编程的时候,时常需要写一些类似于死循环的结构来执行代码,这些死循环如果没有经过处理一直开着,那么CPU的占用率就会居高不下的做着很多无用的操做。为解决这个问题我们可以通过在各线程中的适当位置添加Sleep函数来休眠该线程,使其少做这些无用的操作。经过这个处理,正常能压缩掉一半以上...
阅读全文
摘要:在用解码器解码音频数据得到PCM音频数据块之后,可以在将数据送给声卡播放之前调节其音量大小,具体的实现函数如下:void RaiseVolume(char* buf, UINT32 size, UINT32 uRepeat, double vol)//buf为需要调节音量的音频数据块首地址指针,si...
阅读全文
摘要:与上一篇的“C++ 播放音频流(PCM裸流)”点击打开链接相对应,本篇是关于用C++实现录音功能的。同样是直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用,也可以下载本人上传的相关工程,这个工程是用VS2013写的,如果是较低的版本就呵呵了。点击打开链接代码部分如下:#include...
阅读全文
摘要:跟视频一样,对于音频的传输,往往也需要经过压缩,下面是关于海思提供的PCM音频裸流文件压缩和解码库的运用,对比一个文件与其压缩、解码操作后的数据,可以明显的发现PCM->ADPCM的音频压缩过程是有损的。关于文件的对比,本人使用的是BCompare 这个软件,绝对是程序员必备的神器啊!如果没有的童鞋...
阅读全文
摘要:直接上代码,如果有需要可以直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用了(注意将声道和频率与你自己的文件对应哦)。当然我自己也用VS2008(VS2013好用太多,强烈推荐还是用VS2013,只是它的工程太大,上传起来相当费劲,所以还是用VS2008重写了。。)写了个例子上传了,...
阅读全文
摘要:如果希望对显示在MFCPicture Control 控件里的图像进行操作,比如画线画点之类的,可以利用OpenCV 结合 MFC 本身的鼠标响应函数来实现。如何将图像显示到Picture Control 控件不谈,本文是采用的这篇博客所介绍的方法实现的。点击打开链接给对话框添加WM_LBUTTON...
阅读全文
摘要:OpenCV 2.2 以及后面的版本取消掉了 CvvImage.h 和CvvImage.cpp 两个文件,直接导致了苦逼的程序员无法调用里面的显示函数来将图片显示到 MFC 的 Picture Control 控件中。为此,网上很多人表示只要将那两个文件人为的提取出来然后放到工程里面就解决问题了,也...
阅读全文
摘要:在上层软件编程中,往往需要提供一个月历控件让用户选择相应日期或者用此月历控件来强调特定的一天。MFC的Month Calendar Control 控件自系统升级到 Windows 7 之后,对于日期控件所能做的操作变少了,不能对指定的日期的背景颜色进行更改,在网上查了很久之后发现是操作系统绘图风格...
阅读全文
摘要:debug三天之后,在今天终于发现了自己开的两个线程(一个接收数据,一个处理数据)所处理的数据并不相等。用compare比较后发现数据有所偏差,处理线程的数据存成文件之后隔一段都要比接收线程少一点。少的频率跟线程之间的切换次数又有关系,这就让人直接怀疑是不是内存拷贝发生了错误,结果查了所有的语句都没...
阅读全文

浙公网安备 33010602011771号