
开源项目
移动与射击
这个作者很懒,什么都没留下…
展开
-
openvino c++推理华盛顿大学BackgroundMattingV2模型人像抠图
使用openvino c++推理华盛顿大学BackgroundMattingV2模型人像抠图。基本性能:仅使用CPU可以实现720P实时推理开源项目:https://github.com/kingpeter2015/libovmatting原创 2021-05-25 15:29:18 · 993 阅读 · 0 评论 -
gnugk代码解读之二:H.245控制信令路由的实现
H.245控制信令处理对象 相关类H245Handler和H245ProxyHandler。H245Handle: This class handles H.245 messages which can either be transmitted on their own TCP connection or can be tunneled in the Q.931 connec原创 2008-02-29 19:49:00 · 1922 阅读 · 0 评论 -
Yate开源软件Jabberclient模块实现注册openfire过程分析
Using jabber client in server modeLoad jabber client moduleSince jabberclient is a client module, not loaded when Yate is running in server mode, you must explicitly load it.To do that set in ya原创 2012-01-11 16:32:29 · 2074 阅读 · 1 评论 -
doubango ANSI-C 对象编程的实现方法
doubango 3GPP IMS/LTE Framework v1.0.0 Programmer’s Guide正如你知道的,C语言不是一个面向对象的语言。今天,OOP(面向对象编程)是编写精心设计的软件的最好方式。在这份文档中“被定义的对象”是指一个特殊的C语言结构体。本文中的所有功能是tinySAK项目的一部分。为了解释如何定义对象及如何使用对象,我会使用一个基于“人”的翻译 2012-03-14 17:36:40 · 1144 阅读 · 0 评论 -
Doubango 定时器管理用法
Doubango timer笔记 下面是Doubango定时器管理器的测试用例,说明了其用法。定时器管理器实现了: 通过创建两个线程,实现多个定时器管理,当定时时间到了后,调用定时器的回调函数。基本实现原理大致是这样。按定时时间,将定时器排序,取出最小的那个定时器(最近即将发生的那个),比较当前时间,若还差时间,进行等待(Windows下调用WaitForSingleObjec实现,Lin原创 2012-05-15 10:36:34 · 1013 阅读 · 0 评论 -
Yate开源软件Jabberclient模块接收Spark即时消息示例
使用Spark向Yate发送即时消息,在Yate侧收到信息如下: Receiving from 'agilevideo' [01388938]-----mcu01@agilevideo" from="mcudma@agilevideo/Spark 2.6.3" type="chat"> hi 26XX47 ----- Pro原创 2012-01-12 17:18:51 · 974 阅读 · 0 评论 -
IMSDroid介绍
支持视频的开源SIP客户端不多,IMSDroid看起来不错,准备研究下。(另外还有SIPDroid和linphone了,SIPDroid好像不支持视频,linphone怎么样? )。有几个问题考虑:1) IMSDroid的架构,哪些部分使用C/C++实现,及数据流?2) 编解码是否可以使用硬件编码器?3) 回声抑制问题?4) 网络传输NAT问题?下载源码,源码目录下原创 2012-02-15 23:39:29 · 9077 阅读 · 3 评论 -
Doubango runnable使用方法
Doubango runnable笔记下面是关于runnable的测试用例,解释了runnable的使用方法。runnable实现了这样一种机制: 启动runnable后,即启动一个线程,在线程运行上下文中处理放入runnable中的链表中的对象。 放入对象的线程上下文是调用runnable的线程(一般是主线程)。其中,runnable有个属性important, 意思就是: “if ye原创 2012-05-14 22:30:41 · 1592 阅读 · 0 评论 -
Windows下WebRTC的编译方法
环境:win7, VS2008, Windows SDK 1 下载google的源码工具depot_toolssvn co http://src.chromium.org/svn/trunk/tools/depot_tools并把depot_tools添加到系统的环境变量PATH里;2 下载git工具:并把git添加到系统的环境变量PATH里3 创建webrtc工作目录,并原创 2011-09-29 22:17:52 · 5343 阅读 · 2 评论 -
live555代码解读之二:DESCRIBE请求消息处理过程
live555代码解读之二:DESCRIBE请求消息处理过程 RTSP服务器收到客户端的DESCRIBE请求后,根据请求URL(rtsp://192.168.1.109/1.mpg),找到对应的流媒体资源,返回响应消息。live555中的ServerMediaSession类用来处理会话中描述,它包含多个(音频或视频)的子会话描述(ServerMediaSubsession)。原创 2008-02-21 15:56:00 · 2721 阅读 · 0 评论 -
live555代码解读之一:RTSP连接的建立过程
live555代码解读之一:RTSP连接的建立过程RTSPServer类用于构建一个RTSP服务器,该类同时在其内部定义了一个RTSPClientSession类,用于处理单独的客户会话。首先创建RTSP服务器(具体实现类是DynamicRTSPServer),在创建过程中,先建立Socket(ourSocket)在TCP的554端口进行监听,然后把连接处理函数句柄(RTSPServe原创 2008-02-21 10:24:00 · 3728 阅读 · 0 评论 -
gnugk代码解读之三:媒体通道数据和媒体控制通道数据的路由
H.245控制信令处理 在ProxyHandleThread::Exec()函数中,进入H245Socket::ReceiveData()函数中sigSocket->HandleH245Mesg(strm)),再由m_h245handler处理这个消息流m_h245handler->HandleMesg(strm) 解码流,判断四种类型的消息(如果是H245ProxyHandl原创 2008-03-01 16:28:00 · 1357 阅读 · 0 评论 -
gnugk代码解读之一:H.225.0呼叫信令路由的实现
简介 Call signaling messages may be passed in two ways. The first method is Direct Endpoint Call Signaling, in which case the call signaling messages are passed directly between the endpoints. The原创 2008-02-29 14:09:00 · 2500 阅读 · 0 评论 -
live555代码解读之三:SETUP和PLAY请求消息处理过程
SETUP请求消息处理过程 前面已经提到RTSPClientSession类,用于处理单独的客户会话。其类成员函数handleCmd_SETUP()处理客户端的SETUP请求。调用parseTransportHeader()对SETUP请求的传输头解析,调用子会话(这里具体实现类为OnDemandServerMediaSubsession)的getStreamParamete原创 2008-02-22 15:03:00 · 2454 阅读 · 0 评论 -
gnugk系統設計
作者姓名:黃志偉 高清视频会议MCUgnugk系統設計採用多執行緒架構,以平行處理各種請求與不同的工作。程式啟始時,完成初始化和必要的檢查之後,隨即分支出數個執行緒,處理不同的請求。主執行緒則成為RasServer,產生RasListener 監聽RAS的請求。在收到RAS請求後,RasServer 利用物件工廠產生對應的RasMsg物件,並且檢查是否有某個RAS處理器在等待(攔截)該转载 2008-03-02 17:46:00 · 1337 阅读 · 0 评论 -
Signals、sigslot简介
在复杂的工程中,整个系统被分为数个模块,每个模块提供有限的功能,由上层调用从而组成整个系统,为了保证每个模块的独立性,我们经常限制模块与模块之间直接联系,每个模块只提供有限的API或Com接口,内部完全封装起来。有时候两个不同的逻辑层的模块需要通信,如果直接include头文件会使项目变的复杂,sigslot的出现为我们提供了一种解决问题的思想,它用“信号”的概念实现不同模块之间的传输问题,s转载 2011-11-01 23:04:56 · 961 阅读 · 0 评论 -
YATE实现一号双机业务
一号双机业务就是主叫拨打被叫的一个电话号码,而被叫绑定的两个或多个电话同时振铃,哪个先接听都可以,第一个接听后其他电话停止振铃。传统交换机中实现如此功能大多是采用智能网平台(IN),对于YATE这样的软交换平台可以较容易的实现。具体方法如下。实现原理:还是在路由模块来下手转载 2011-09-13 08:57:50 · 1401 阅读 · 0 评论 -
YATE内部的消息机制
一、 消息消息是YATE的一个主要组成部分。所有的模块间通信都使用消息而不使用函数调用,这主要是因为我们考虑当一个模块发生变化的时候不影响或不依赖于其他模块,也因为这样让我们的模块调试可以更容易些。一个消息是几个组件的容器:•名字(name)——消息类型的标识,允许消息处转载 2011-09-13 08:59:23 · 1077 阅读 · 0 评论 -
两个YATE服务器互联的实现
一、 引言根据研究的进度,我们已经知道在一台YATE服务器上用简单的注册、认证模块:regfile,配置用户信息,同一个域内的用户可以成功注册到一个YATE服务器上,并呼叫成功。但我们没有完成的是如何使两台YATE服务器实现互联,让一台YATE的用户成功呼叫另一台YATE的用转载 2011-09-13 08:55:57 · 1643 阅读 · 0 评论