C++
文章平均质量分 50
低调的狮子
10多年的WINDOWS平台下C++客户端应用开发经验。
展开
-
QT在QScrollArea中实现动态调整QGridLayout高度
1、这里实现一个4列多行的Grid布局代码片段。原创 2020-03-04 15:29:16 · 2367 阅读 · 0 评论 -
通过OpenCV实现纯色实时抠图的逻辑记录
1、抠图算法来源于网络cv::Mat replace_and_blend(cv::Mat &frame, cv::Mat &bg, cv::Mat &mask){ cv::Mat result = cv::Mat::zeros(frame.size(), frame.type()); int h = frame.rows; int w = fr...原创 2020-03-04 11:46:44 · 1675 阅读 · 0 评论 -
开发技巧小结
1、如何让生成后的动态库不依赖VC运行库。2、解决在使用Windows下FFmpeg生成的Release版本DLL时崩溃的问题。3、视频均匀丢帧实现原创 2016-12-15 20:56:32 · 472 阅读 · 1 评论 -
通过DirectSound实时播放PCM+混音
#include "StdAfx.h"#include "AudioPlayer.h"#define AUDIO_SECOND_COUNT 1 //10秒缓冲区CAudioPlayer::CAudioPlayer(void){ for (int i = 0; i < AUDIO_MIX_COUNT; ++i) { m_pDS[i] = NULL;原创 2016-09-22 11:01:32 · 4034 阅读 · 1 评论 -
纳秒级延时实例。
HANDLE hTimer = NULL;LARGE_INTEGER liDueTime;//创建等待句柄 hTimer = CreateWaitableTimerA(NULL, TRUE, “myNsWait”);if (!hTimer){ return 0;}//设置相对时间为0.1毫秒。liDueTime.Qu原创 2016-09-22 11:14:03 · 3338 阅读 · 0 评论 -
回声抑制器:AEC回声抑制算法
回声抑制器:AEC回声抑制算法疯狂代码 http://www.crazycoder.cn/ ĵ:http:/www.crazycoder.cn/Arithmetic/Article31436.html AEC回声抑制算法这个比较难目前可以使用directsound进行处理不过只能在xp下使用别系统不支持!目前gips对本算法有出色实现skype就是使用该引擎!要想自己实现恐怕很转载 2016-09-13 08:37:13 · 5412 阅读 · 0 评论 -
要写易删除,而不易扩展的代码
译者序本文托管在 GitHub 上: https://github.com/freedombird9/code-easy-to-delete,欢迎 Star 或纠错。好的文章总是见解独到,功底深厚而逻辑清晰。这是一篇关于如何设计、架构代码的文章。文章的观点新颖而有力。作者的观点是,我们所做的一切 —— 重构、模块化、分层,等等,都是为了让我们的代码易于被删改,都是为了让遗留转载 2016-03-14 13:18:27 · 1781 阅读 · 0 评论 -
浅谈视频采集方案
现在手头上有一个项目就是需要优化采集方案。我们这边之前使用的是作者Shiqi Yu写的开源代码,底层是基于DShow做的封装。但使用后发现采集到的视频流在进行回显时有点模糊,特别是文字部分。现在通过万能的网络找到了三种替换方案:WebRTC 接、MediaFoundation、VideoInput。1、WebRTC:现被Google整编,但由于需要翻墙才能下载和更新,所以没有使用。原创 2016-03-11 10:43:04 · 3200 阅读 · 1 评论 -
CAS单点登录实现(C++版)
网上有关于JAVA、PHP、.Net的CAS单点登录客户端的实现方式,用C++客户端实现的例子少之又少。下面针对这方面的稀缺,整理了一份实现流程。开发平台:VS2008开发语言:C++外部包引用:curl-7.29.0、openssl-1.0.1e CAS服务版本:3.5.1在curl工程设置的预处理中添加USE_SSLEAY与USE_OPENSSL两个宏与libeay原创 2013-03-18 15:47:33 · 4207 阅读 · 0 评论 -
定时器、队列的逻辑。
//临界class CCritSec{public: CCritSec() { InitializeCriticalSection(&m_CritSec); }; ~CCritSec() { DeleteCriticalSection(&m_CritSec); }; void Lock() { Ent原创 2013-09-03 14:44:03 · 1448 阅读 · 0 评论 -
C/C++ 函数调用约定
函数调用约定 常见的函数调用约定[5]:cdecl,stdcall,fastcall,thiscall,naked call MFC调用约定(VS6:Project Settings->C/C++ Calling convention:) 1, __cdecl(C调用约定.The C default calling convention)C/C++ 缺省调用方转载 2013-08-27 10:14:57 · 3913 阅读 · 4 评论 -
【转】获取本机MAC地址(MFC)
【转】获取本机MAC地址(MFC)#include "Nb30.h"#pragma comment(lib, "Netapi32.lib")typedef struct _ASTAT_ { ADAPTER_STATUS adapt; NAME_BUFFER NameBuff[30]; }ASTAT, * PASTAT;UCHAR GetAddressBy转载 2013-08-26 11:16:08 · 2804 阅读 · 0 评论