• 等级
  • 122329 访问
  • 117 原创
  • 34 转发
  • 21539 排名
  • 10 评论
  • 20 获赞

WebRTC中peerconnection示例工程结构分析

WebRTC Native代码相当的大(大约200Mb),开始的时候对这些代码真的是一头雾水,最后决定先从example中的peerconnection先看起。 peerconnection例子分为client端和server端,多个client加入对话,server负责信令的处理,这里主要讨论与WebRTC较为相关的client Demo。 代码结构: 这个例子用Gtk图形库开发,其中...

2018-07-15 09:25:00

左值、左值引用、右值、右值引用

转载自:http://www.cnblogs.com/SZxiaochun/p/8017475.html 左值、左值引用、右值、右值引用 1、左值和右值的概念 左值是可以放在赋值号左边可以被赋值的值;左值必须要在内存中有实体; 右值当在赋值号右边取出值赋给其他变量的值;右值可以在内存也可以在CPU寄存器。 一个对象被用作右值时,使用的...

2018-06-20 22:42:50

C++11:尽量使用std::array来代替数组

C++11后,标准库引入了更现代化的数组std::array,cppreference.com是这样介绍的: 定义于头文件 <array> template< class T, std::size_t N > struct array; (C++11 起) std::array 是封装固定大小数组的容器。 此容器是一个聚合类型,其语义等同于保有...

2018-05-23 09:38:34

C++11中的“万能引用”

首先我们来看一个函数模板的代码: template<typename T> void func(T& param){ } 这里模板函数参数接收一个引用,但是却不能这样调用: func(27); //error: invalid initialization of non-const reference of type ‘int&’ from an rvalue o...

2018-05-23 09:09:06

【转载】 webrtc中的网络反馈与控制

原地址:http://www.befoio.com/4206.html一、引言站在风口上,猪都能飞起来。雷布斯的这句名言,已经被大家传的家喻户晓了,说起当下站在风口上的猪,除了丁老板的未央猪,这头实实在在的猪,视频直播应该可以算一个。今年各种直播平台,各个轮次的融资消息应接不暇。对于互联网技术从业者来说,RTC(Real Time Communication,实时通信)这个站着视频直播背后的技术也...

2018-05-18 17:00:02

C++11的enum class 、enum struct 和 enum

原文地址:https://blog.csdn.net/sanoseiichirou/article/details/50180533侵删C++标准文档——n2347(学习笔记) 链接:http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2347.pdf旧版enum存在的问题1 问题1向整形的隐式转换2 问题2无法指定底层所使用的数据类型...

2018-05-17 19:49:35

WebRTC in the real world: STUN, TURN and signaling

By Sam DuttonPublished: November 4th, 2013Updated: November 4th, 2013Comments: 9WebRTC enables peer to peer communication.BUT...WebRTC still needs servers:For clients to exchange metadata to coordinat...

2018-05-16 15:33:17

WebRTC简介与代码架构

 简介 WebRTC,中文全称网页即时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。它于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准。 WebRTC除了是一套API标准,也是Google的一个对WebRTC标准API的实现(网址:https://webrt...

2018-05-16 11:11:08

AES加密算法(Rijndael算法)

此文章为转载,如有侵权,通知删除 原地址:https://blog.csdn.net/zfpigpig/article/details/8526016 上周好几天都在搞AES,总算是把Rijndael算法搞明白了。本片会仔细介绍AES(Rijndael算法),后两篇会介绍AES的java和php实现。 AES(Rijndael算法) Rijndael算法

2018-05-09 14:52:32

RTP/RTCP 和 SRTP/SRTCP协议

此文章为转载,如有侵权,通知删除 原地址:https://blog.csdn.net/swallow_he/article/details/74202104 RTP/RTCP 和 SRTP/SRTCP协议 1 RTP RTP 协议(Real TimeProtocol)提供具有实时特征的、端到端的数据传送服务,可用来传送声音和运动图像数据。在这项数据传送服务中

2018-05-07 23:47:10

一个简单引用计数智能指针的实现

template <typename T> class SharedPtr{ public: SharedPtr() = delete;//不允许未初始化的智能指针,防止使用空指针 SharedPtr(const SharedPtr&) noexcept; //拷贝构造 SharedPtr(T*) noexcept; //shallow copy ...

2018-05-06 17:51:02

C++ throw()关键词:一个被C++标准抛弃的玩意儿

throw()关键词相信大家在很多C++教程或者代码中看到过,这个博客以一Stackoverflow上的问题开始:应该在C++中使用throw()关键词吗? 回答是:不应该 理由主要是各个编译器并没有一个统一的标准去处理这个关键词,还有这个关键词作用很累赘等等,总之是不应该的。 Anyway,throw关键词被C++11抛弃了,C++11标准提出了新的关键词:noexcept 一般来说...

2018-05-06 17:44:13

C++模版与特化与偏特化

模版与特化的概念函数模版与类模版C++中模板分为函数模板和类模板函数模板:是一种抽象函数定义,它代表一类同构函数。类模板:是一种更高层次的抽象的类定义。特化的概念所谓特化,就是将泛型的东东搞得具体化一些,从字面上来解释,就是为已有的模板参数进行一些使其特殊化的指定,使得以前不受任何约束的模板参数,或受到特定的修饰(例如const或者摇身一变成为了指针之类的东东,甚至是经过别的模板类包装之后的模板类...

2018-05-04 17:06:48

《Effective C++》:学习处理模板化基类内的名称

假设有以下需求: 要给N个公司发信息,目前有Alibaba、Microsoft、Amazon三家公司,给Microsoft、Amazon发送明文,给Alibaba发送密文(特殊情况),可以用C++模板技术来实现。 class Alibaba{ public: //给Alibaba发送密文 static void SendCryMsg(){ std::cout...

2018-05-04 16:44:23

扩展型归并排序(模板+仿函数)

写了一个类似STL中的sort用法的归并排序,可以以函数形式传入排序规则。 #include #include #include #include using namespace std; template typename T> class MergeSort{ public: //以仿函数实现 void operator()(vector& data, funct

2018-02-07 16:38:32

多段资源分配问题(动态规划)

多段资源分配问题 题目内容 设有资源n(n为整数),分配给m个项目, gi(x) g_i(x) 为第i个项目分得资源 x x 所得到的利润,求总利润最大的资源分配方案, 也就是解下列问题: max z=g1(x1)+g2(x2)+...+gm(xm) max \ z = g_1(x_1) + g_2(x_2) + ... + g_m(x_m) x1+x2+...

2018-01-22 00:44:04

N皇后问题(递归+回溯)的C++实现

N皇后问题(递归+回溯) 采用C++仿函数技术实现的N皇后问题: 解决问题类: //多皇后问题 class MultiQueens{ private: vectorint> queen_vec; //保存当前各个皇后的位置 int solve; //保存解的个数 //检测当前第k个皇后的位置是否合法 bool Check(int k){

2018-01-08 21:20:32

P2P通信基本原理与实现

对等网络,即对等计算机网络,是一种在对等者(Peer)之间分配任务和工作负载的分布式应用架构[1] ,是对等计算模型在应用层形成的一种组网或网络形式。“Peer”在英语里有“对等者、伙伴、对端”的意义。因此,从字面上,P2P可以理解为对等计算或对等网络。国内一些媒体将P2P翻译成“点对点”或者“端对端”,学术界则统一称为对等网络(Peer-to-peer networking)或对等计算(Peer-to-peer computing),其可以定义为:网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存

2017-12-27 22:05:23

为什么C++11引入了std::ref?

本文转载自: https://www.cnblogs.com/jiayayao/p/6527713.html 如有侵权,通知删除   C++本身有引用(&),为什么C++11又引入了std::ref?   主要是考虑函数式编程(如std::bind)在使用时,是对参数直接拷贝,而不是引用。如下例子: #include #include

2017-12-17 22:52:33

C++中的智能指针(1):shared_ptr 的介绍和用法

原理简介C++中采用new和delete来创建(申请)和释放(销毁)内存,但是因为释放内存时机把握不当、忘记释放内存等原因,很难准确及时地管理内存。 因此,C++标准库推出了智能指针机制来更好的管理内存,智能指针能自动释放所指向的对象。shared_ptr简介shared_ptr 允许多个指针指向 同一个对象,它基于模板实现,默认初始化的智能指针中保存着一个空指针。当进行拷贝或者赋值操作时,

2017-12-16 13:50:41

thinkerleo7798

关注
  • 原材料及加工(金属·木材·橡胶·塑料·玻璃·陶瓷·建材)
  • 中国 湖北省 武汉市
奖章
  • 专栏达人