原创 ATL 開發ActiveX控件之定時器使用
轉載自:http://www.evget.com/articles/evget_780.html在Window編程中,我們經常要依靠定時器來定時觸發某
原创 OPENH323中呼叫建立過程的跟蹤與分析(五)----快速隧道方式之主叫端
CPhone 0x004AD480 3 videoio.cxx(466) PVidDev SetColourFormatConverter success for native YUV420P
原创 OPENH323中呼叫建立過程的跟蹤與分析(七)----非快速隧道方式之主叫端
CPhone 0x004AD480 3 videoio.cxx(466) PVidDev SetColourFormatConverter success for native YUV420P
原创 OPENH323中呼叫建立過程的跟蹤與分析(六)----快速隧道方式之被叫端
CPhone 0x004AD480 3 videoio.cxx(466) PVidDev SetColourFormatConverter success for native YUV420P
原创 一個開源的聲學回聲消除器
前段時間,搞了一陣聲學回聲消除,非常鬱悶,因爲沒有成功,但可以說學到一點東西吧,至少理論上懂了一點。 爲什麼需要聲學回聲消除呢?在一般的VOIP軟件或視頻會議系統中,假設我們只有A和B兩個人在通話,首先,A的聲音傳給B,B然後用喇叭
原创 Demystifying Echo Cancellation: Part 2(回聲消除揭祕2)
Demystifying Echo Cancellation: Part 2Building an echo canceller is only half the challenge. Mishaps can also occur du
原创 UDP穿越NAT原理(轉載)
P2P 之 UDP穿透NAT的原理與實現(附源代碼)原創:shootingstars參考:http://midcom-p2p.sourceforge.net/draft-ford-midcom-p2p-01.txt論壇上經常有對P2P原理
原创 二叉樹結點定義
#ifndef TREENODE#define TREENODE// 表示二叉樹的一個結點template <typename T>class tnode{ public: // tnode is a class implement
原创 SIP主要信令與擴展功能
SIP allows two end points to establish media sessions with each other. The main signaling functions of the protocol are
原创 ACTIVEX控件永久化的一些經驗
最近,完成了一個和QQ一樣的能顯示動態表情的ACTIVEX控件,效果還不錯,和QQ的控件相比,也可以插入到RICHEDIT中,並且不閃爍(QQ的會閃爍),效率也比QQ的高。就拿QQ那個流淚的表情來說吧,同一張圖片,在我的電腦上,我的控
原创 插入排序
描述:遍歷向量,爲每個元素找到它應該在的位置,插入。template <typename T>void insertionSort(vector<T>& v){ int i, j, n = v.size(); T target;
原创 Demystifying Echo Cancellation: Part 1(回聲消除揭祕1)
Demystifying Echo Cancellation: Part 1Part 1 of this two-part series examines the basic causes of echo in a networking
原创 RichEdit中支持超鏈接的實現
現在很多IM軟件的聊天對話框在接收到網站URL的時候,都能夠顯示成大家熟悉的藍色,鼠標移到鏈接上,還會出現手樣的鼠標指針,用戶點擊後就可以直接打開相應的URL,這對IM軟件確實很有用吧,這麼方便,實現起來難嗎?其實一點也不難,只要設置
原创 我的書架
書名 作者 出版社 Windows核心編程 Jeffrey Richter 機械工業出版社C++ 沉思錄 Andrew Koenig Barbara Moo 人民郵電出版社 Windows網絡編程(第2版) Anthony Jones
原创 選擇排序
描述:從向量頭部開始,找出第一小的放到前面,第二小的放到第二個位置。。。。。。template <typename T>void selectionSort(vector<T>& v){ // index of smallest it