Libjingle 库
Libjingle 是google talk voice(语音聊天) 和 p2p interoperability(点对点操作)库,是提供了google talk,p2p文件共享和语音呼叫能力的组件集,libjingle包中包含了jingle和jingle语音以及两个被xmpp标准提议的扩展。
About libjingle (关于libjingle)
Libjingle 是一个开源包,用C++编写,我们可以利用包里的一些应用例子来构建自己的p2p应用。Libjingle库实现了“创建网络链接”,“会话协商”和“数据交换”。
(“创建网络链接”指 NAT和firewall穿越,relay servers, and proxies(即服务器中继和代理)。
“会话协商” 指 编码,格式等。)
它也提供了一些像XML解析和网络代理操作这样的帮助类。可以利用libjingle创建以下的应用:
多用户语音聊天应用
多用户视频会议应用
多用户音乐流直播应用
P2p文件共享应用
Libjingle是google Code计划中运行于windows 和 UNIX/Linux操作系统的开发包,这个文档是对包中的readme文件的补充。
Libjingle的一些无关紧要的说明,比如,您可以把libjingle应用于商业和非商业用途,并可以任意发布之类的,此处省略。
Libjingle用到的第三方库的详细,请到google查看具体说明。
Jingle and libjingle
Libjingle库几乎和jingle的xpmm扩展(XEP-0166)同时诞生,libjingle团队使用了自己的协议,尽管libjingle库中的协议和jingle协议非常相似,但它们是不同的,它们是互不兼容的。
Organization of the SDK(SDK组织形式)
Libjingle 库包含了以下几个文件夹:
|
目录 |
描述 |
|
base/ |
一些底层函数的包装类,比如:套接字和线程。 p2p和会话组件使用到了这些类 |
|
examples/ |
包含以libjingle创建的两个例子:call和file share。还有一些这两个例子用到的其它文件。 |
|
p2p/ |
包含 协商,确定链接,和维持复杂网络环境下p2p链接的一些组件的类, |
|
session/ |
针对“不同的交换数据类型”的p2p会话,进行特殊化操作的一些类,比如:声音或文件。 |
|
third_party/ |
存放libjingle需要的各种第三方库的默认文件夹。比如,Linphone和GIPS VoiceEngine Lite文件都应该被安装在这里,语音聊天例子程序用到的这两个库,就应该放在这个文件夹内。 |
|
xmllite/ |
解析和生成XMPP节的类 |
|
xmpp/ |
发送和接收XMPP请求,管理普通XMPP服务器任务(比如,登录或出席会议)的一些类。 |
Libjingle 库的更多相关文章
- Libjingle库简介
原文链接 国内现在很多语音聊天工具都是基于TURN方式实现的,包括YY.AK等等,这种方式对于服务器的性能要求很高,而且在用户量增大的时候,服务器压力也会越来越大,用户的语音质量也会受到很大影响.而基 ...
- Libjingle库 综述
国内现在很多语音聊天工具都是基于TURN方式实现的,包括YY.AK等等,这种方式对于服务器的性能要求很高,而且在用户量增大的时候,服务器压力也会越来越大,用户的语音质量也会受到很大影响.而基于P2P方 ...
- libjingle线程机制
libjingle包装了所有的线程,包括signaling thread,worker thread, 和其它任何线程,用talk_base::Thread来包装.所有的 Thread对象由Threa ...
- WebRTC
WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的技术,是谷歌2010年以6820万美元收购Globa ...
- WebRTC音视频引擎研究(1)--整体架构分析
WebRTC技术交流群:234795279 原文地址:http://blog.csdn.net/temotemo/article/details/7530504 1.WebRTC目的 ...
- Android IOS WebRTC 音视频开发总结(九)-- webrtc入门001
下面这篇介绍webrtc的文章不错,我花了大半天翻译了一下. 翻译的时候不是逐字逐句的,而是按照自己的理解翻译的,同时为了便于理解,也加入一些自己组织的语言. 本文主要介绍webrtc的信令,stun ...
- WebRTC 音视频开发之路
早在2014年就通过WebRTC实现了PC客户端的实时视频语音,那时P2P连接的建立使用的WebRTC自带的libjingle库,使用peerconnection的API实现的.后来在做远程桌面,文件 ...
- Android WebRTC 音视频开发总结
www.cnblogs.com/lingyunhu/p/3621057.html 前面介绍了WebRTCDemo的基本结构,本节主要介绍WebRTC音视频服务端的处理,,转载请说明出处(博客园RTC. ...
- webrtc教程
cdsn博客不支持word文件,所以这里显示不完全.可到本人资源中下载word文档: v0.3:http://download.csdn.net/detail/kl222/6961491 v0.1:h ...
随机推荐
- DTV 常用功能
AVL/Audio Description(AD SWITCH)/HearingImpaired 文档来自:https://max.book118.com/html/2016/0706/4752022 ...
- [转]python的startswith()方法
描述 Python startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False.如果参数 beg 和 end 指定值,则在指定范围内检查. 语法 ...
- asp.net web.config配置节说明(转发)
原文地址:http://www.cnblogs.com/qingyuan/articles/1501644.html web.config 文件查找规则: (1)如果在当前页面所在目录下存在 ...
- 哈理工OJ P2320:OX
题目链接:OX 题意 :给出一个3X3的黑白棋棋盘,棋盘上有若干黑白子,再给出下一个下的人,问下一个下的人能否赢 分析:考虑到只有39种状态,故用一个数保存目前棋盘的状态,记为value,再枚举空位D ...
- Ubuntu 18 安装 wps
本来有三种方法 1. 软件中心 安装最简单 2. 命令行snap 安装 如果没有安装snap 先安装 sudo apt install snapd 然后安装wps sudo snap install ...
- win7 右键菜单残影 消除方法
1. 治标法: 右键桌面->更改分辨率 随便换一个分辨率再还原就OK了! 2. 根治法: 我的电脑-> 属性 ->高级选项-> 高级-> 设置-> 自定义 不 ...
- hdu 1044 Collect More Jewels
题意: 一个n*m的迷宫,在t时刻后就会坍塌,问:在逃出来的前提下,能带出来多少价值的宝藏. 其中: ’*‘:代表墙壁: '.':代表道路: '@':代表起始位置: '<':代表出口: 'A'~ ...
- 用.NetReactor保护您的源码[转][修改]
原文链接 前言 VS开发的源代码安全性,是很多开发者头痛的事情.于是保护好源代码便成了开发者们最关心的事情之一了. 在网上搜一搜,很多有不少的第三方工具可以为源代码加密.加密方式不外乎就是混淆,加壳. ...
- 获取select里面option所有的值
1.HTML结构 <select id="test"> <option value="option-1">option-1</op ...
- [书目20150303]软件工程的本质:运用SEMAT内核
译者序Robert Martin作序Bertrand Meyer作序Richard Soley作序前言致谢第一部分 内核思想解释第1章 简要介绍如何使用内核1.1 为什么开发优秀软件具有很 ...