WebRTC
segment-fault
这个作者很懒,什么都没留下…
展开
-
webRTC base模块Event事件的实现
webRTC base库 Event分析Linux下Event的实现利用了poix线程锁pthread_mutex_t和条件变量pthread_cond_t实现事件的等待和触发 主要的3个接口: 1. void Set(); 2. void Reset(); 3. bool Wait(int millseconds);类内定义了static const int kForever = -1;原创 2017-11-24 13:44:02 · 990 阅读 · 0 评论 -
WebRTC 连接Linux端和Android端
跨平台连接WebRTC的通常连接流程:http://blog.csdn.net/qq_21358401/article/details/79190561WebRTC SDP协议:http://blog.csdn.net/qq_21358401/article/details/79341031连接不同平台的PeerConnection的流程和通常流程没有什么区别.但很容易遇到这些...原创 2018-02-26 21:13:42 · 1538 阅读 · 1 评论 -
WebRTC base模块scoped_refptr指针的实现
scoped_refptrscoped_refptr和scoped_ptr虽然名字相近,但在智能指针的特性上有很大差别.scoped_ptr利用作用域管理对象:实现原理:http://blog.csdn.net/qq_21358401/article/details/79307072而scoped_refptr并不直接申请和释放对象,主要通过指向的对象自己实现申请和释放.Ad...原创 2018-02-10 22:07:50 · 2655 阅读 · 0 评论 -
WebRTC的头文件提取
按目录提取头文件像WebRTC这样结构比较庞大的工程,在需要链接WebRTC库时是比较麻烦的.特别是在linux代码使用到WebRTC库时的编译,不但要自行整合链接WebRTC库,并且头文件路径也需要指向WebRTC代码目录.项目中引用到第三方库时的做法通常是提取出库文件和头文件,添加到工程目录中供链接.WebRTC的库文件和头文件也可以通过脚本提取出来.库文件的打包:htt...原创 2018-02-10 20:59:35 · 2537 阅读 · 0 评论 -
编译WebRTC arm Linux库
环境1. 编译机 ubuntu14.042. WebRTC版本 m56 android分支安装依赖(科学上网)编译WebRTC for Linux可以使用WebRTC for android的代码.在WebRTC的编译脚本中已经预留了对交叉编译的支持,只需要执行./build/linux/sysroot_scripts/install-sysroot.py --arc...原创 2018-02-09 16:03:16 · 3701 阅读 · 6 评论 -
webRTC PeerConnection连接过程
PeerConnectionPeerConnection是webRTC的顶层接口,代表一个通话对象.要建立点对点的音视频通话需要的双方各建立一个PeerConnection并交互信令完成对接.signal信令webRTC的信令指的是 SDP和Candidate 1. SDP是session description,描述local的多媒体情况 2. Candidat原创 2018-01-28 22:56:10 · 2676 阅读 · 0 评论 -
WebRTC相关概念
WebRTC翻译一些官网的内容充实理论储备用了自己的语言做润色修饰,有能力还是直接阅读官网.1. 什么是WebRTC? WebRTC是一个开放的用于支持浏览器实时会话的框架.包括用于支持高质量会话的基本组件,比如音频和视频组件. 当这些组件在浏览器中实现的时候,可以通过JavaScript API来调用,支持开发者方便的实现他们的web RTC会话应用.2. 为什原创 2018-01-22 20:07:12 · 208 阅读 · 0 评论 -
webRTC base模块SigSlot信号与槽实现
SigSlot非常经典的信号/槽结构 在Qt中同样存在信号/槽机制用于通讯Qt下信号/槽QT signal/slot http://blog.csdn.net/qq_21358401/article/details/78736796SigSlot的应用SigSlot的构成比较复杂但应用非常简单 所以这里先分析其用法 总结起来就两点以两参数的signal2为例原创 2017-12-06 21:47:49 · 479 阅读 · 0 评论 -
webRTC base模块MessageQueue消息队列的实现
MessgeQueueMessageQueueManager消息队列MessageQueue的管理器 全局单例类 MessageQueueManager* MessageQueueManager::instance_ = NULL; // 全局变量 确保Manager是单例MessageQueueManager* MessageQueueManager::Instance() { // C+原创 2017-12-05 22:05:33 · 1328 阅读 · 0 评论 -
AndroidRTC & ProjectRTC 实现分析(一)
AndroidRTC & ProjectRTCAndroid是webRTC的一个开源实现,利用webRTC实现了RTC通话的功能git仓库地址为 https://github.com/pchab/AndroidRTCAndroidRTC是android client的实现 要运行这个项目 还需要ProjectRTC来交换信令 ProjectRTC的仓库地址为 https://github.co原创 2017-12-31 22:13:00 · 4505 阅读 · 0 评论 -
webRTC base模块CritScope临界锁的实现
CritCal临界锁的实现Linux下临界锁的实现使用posix线程接口实现 实现文件: webRTC/base/critcalsection.h暴露给外部使用的类CritScopeclass SCOPED_LOCKABLE CritScope { public: explicit CritScope(const CriticalSection* cs) EXCLUSIVE_LOCK_FUN原创 2017-11-26 17:59:39 · 1335 阅读 · 0 评论 -
webRTCTutorial 项目文档目录
项目git地址[email protected]:sliver-chen/webRTCTutorial.gitwebRTC base模块Event事件的实现Event类的实现分析 地址: http://blog.csdn.net/qq_21358401/article/details/78623793webRTC base模块CritScope临界锁的实现ScritScope类的实现webRTC base原创 2017-11-24 13:40:22 · 498 阅读 · 0 评论 -
webRTC base模块SharedExclusiveLock读写锁实现
Linux下读写锁的实现读写锁顾名思义就是用于读/写操作竞争的锁 有这么一种情况 一路在写资源 多路在读资源使用之前分析过的临界锁和事件实现 临界锁的实现 http://blog.csdn.net/qq_21358401/article/details/78638668 事件的实现 http://blog.csdn.net/qq_21358401/article/details/78623原创 2017-12-04 22:06:13 · 325 阅读 · 0 评论 -
webRTC入门: 打包webRTC库应用到自己的工程中
打包webRTC库在linux下打包webRTC库链接到自己的工程中webRTC Linux SDK编译静态库webRTC指定target_os为Linux后,根据gn的编译规则 并不像android那样会生成动态库so。想要使用webRTC库 需要自己提取静态库静态库分布打开webRTC SDK目录 cd out/linux 编译目录下会生成例如peerconection_client这样的原创 2017-11-23 14:05:49 · 7639 阅读 · 5 评论 -
WebRtc: PeerConnection demo测试
peerconnection client和server的使用测试环境说明:系统: ubuntu14.04 工程: webrtc-linux 网络:本机localhost#webrtc工程编译过后会在out/linux目录下生成一些测试用可执行程序 其中有 peerconnection_server 和 peerconnection_client可以用于测试连接后台执行server ./pee原创 2017-11-15 22:13:58 · 1957 阅读 · 3 评论 -
baseRTC: 提取编译webRTC的base库
webRTC的模块提取webRTC代码非常的庞大,我们可以有选择的单独提取部分模块编译使用,应用到自己的工程中来.base库webRTC封装了底层相关的操作包括socket thread file base64等等常用的接口 可以提取出来作为C++基础类库使用移植basewebRTC的base库代码主要位于webrtc/base目录下 其余还依赖于openssl json等第三方库 webrtc原创 2017-11-19 01:06:53 · 1258 阅读 · 0 评论 -
WebRTC SDP协议
SDPSDP Session Description Protocol 会话描述协议SDP协议用来在SIP终端之间交换媒体信息,WebRTC标准中同样选用了SDP协议来交换媒体信息.WebRTC Peer之间交换SDP包括的信息有transport protocols,ports,codecs等等相关的IETF文档:https://tools.ietf.org/pdf/draf...原创 2018-02-20 21:32:55 · 2485 阅读 · 0 评论