sip

浅谈MS Teams Direct Routing中的本地媒体流优化技术

心不动则不痛 提交于 2020-05-09 08:47:37
这是一项新的Direct Routing相关的技术:Local Media Optimization,本地媒体流优化,这是跟另一些技术相关关联的,所以在讲Local Media Optimization之前,我们先来回顾一些知识点: Microsoft Teams Direct Routing: 直接路由, 是指 SBC 将 来自MS Teams Phone System 的呼叫路由到PSTN网络的能力。虽然企业中的 MS Teams 客户端可以通过 Microsoft Calling Plan 来呼叫到PSTN网络(一种M365提供的SaaS服务),但大部份现有的企业更大可能会选择自己现有的PSTN运营商以及使用自己的DID号码,以提供更多的附加价值(如降低成本、可用性或现有合同)这也是为什么需要Direct Routing 的原因之一。 Media Bypass: 媒体旁路,它提供了把Teams Call媒体流保持在本地网络的能力,而不是将其发送到M365 Cloud,以便提高呼叫的可靠性与质量。 Local Media Optimization : 本地媒体流优化,它是MS Teams Phone System 架构上面的关于媒体旁路的新能力,它能够为Teams Call 提供最优的本地SBC作为媒体网关,这种技术适合于有多个站点的大型企业来优化他们的Teams Call.

WebRTC中的信令和内网穿透技术 STUN / TURN

霸气de小男生 提交于 2020-05-08 15:27:37
转自:https://blog.csdn.net/shaosunrise/article/details/83627828 Translated from WebRTC in the real world: STUN, TURN and signaling. 最近刚接触到WebRTC,网上看到这篇介绍WebRTC的文章不错,仔细读了读还算有用,分享出来能帮到一些刚入门的人也挺好的,翻译不好的地方可以直接看原文。 WebRTC可以进行P2P点对点通信,但是WebRTC仍然需要服务器: 客户端需要服务器交换一些数据来协调通信,这称之为信令。 使用服务器来应对NAT网络地址转换和防火墙。 在本文中,将介绍如何构建信令服务,以及如何使用STUN和TURN服务器来处理WebRTC在实际使用过程中的连接问题。本文还将解释WebRTC应用程序如何处理多方通话,并与诸如VoIP和PSTN(AKA电话)之类的服务进行交互。 如果您不熟悉WebRTC的基本知识,我们强烈建议您在阅读本文之前先看一下如何开始使用WebRTC。 什么是信令? 信令用于协调通信,WebRTC应用开始通话之前,客户端需要交换一些信息(信令): 用于打开或关闭通信的会话控制消息。 错误信息。 媒体元数据,例如编解码器和编解码器设置,带宽和媒体类型。 用于建立安全连接的的秘钥信息。 主机的IP和端口等网络信息。

Freeswitch Tutorial

放肆的年华 提交于 2020-05-08 00:24:24
I. Install Freeswitch 1) FreeSWITCH Explained https://freeswitch.org/confluence/ https://freeswitch.org/confluence/display/FREESWITCH/CentOS+7+and+RHEL+7 https://freeswitch.org/confluence/display/FREESWITCH/CentOS+7 2) step by step: Install FreeSWITCH 1.6.0 on CentOS 7 (fresh installation): Note: Everything below is run inside CentOS 7 terminal as "root" user (via "su -" command) 1) Make sure yum update is run and CentOS is up-to-date 2) {optional} inside Terminal window select Edit Profile Preferences and select "Use custom default terminal size" and make it 160 x 60. Close terminal and re

Docker 部署 FreeSWITCH

别来无恙 提交于 2020-05-07 13:20:37
前言   Linux 上部署 FreeSWITCH 是一件比较麻烦的事情,用 Docker 部署相对方便且更容易运维。下面详述官方项目部署步骤。 容器公开以下端口: 5060/tcp 5060/udp 5080/tcp 5080/udp作为SIP信令端口。 5066/tcp 7443/tcp作为WebSocket信令端口。 8021/tcp作为事件套接字端口。 64535-65535/udp作为媒体端口。 部署步骤 一、克隆git 执行命令 git clone https://github.com/BetterVoice/freeswitch-container.git 得到一个名为 freeswitch-container 的文件夹 # Jenkins. FROM ubuntu: 16.04 MAINTAINER Thomas Quintana <thomas@bettervoice.com> # Enable the Ubuntu multiverse repository. RUN echo " deb http://us.archive.ubuntu.com/ubuntu/ trusty multiverse " >> /etc/apt/ source.list RUN echo " deb-src http://us.archive.ubuntu.com/ubuntu/

文明时代里生活着今天我

不羁岁月 提交于 2020-05-03 17:55:58
sdfsdf 服务网格作为一个改善服务到服务通信的专用基础设施层,是云原生范畴中最热门的话题。随着容器愈加流行,服务拓扑也频繁变动,这就需要更好的网络性能。服务网格能够通过服务发现、路由、负载均衡、心跳检测和支持可观测性,帮助我们管理网络流量。服务网格试图为无规则的复杂的容器问题提供规范化的解决方案 将供应链搬出中国,似乎成了过去两三个月新冠肺炎疫情衍生出的热门话题。 年初新冠肺炎疫情爆发,让中国供应链的生产活动几乎完全停顿,影响席卷全球:苹果的新 5G 有可能因疫情而延期推出,特斯拉新款芯片无法及时交付、陷入“芯片门”纠纷。其余像三星、小米、索尼等著名跨国企业,均受到供应链停摆的影响。 因此,cbcsein.answers.yahoo.com/question/index?qid=20200427205149AAdqKzg?ED1=78col=91v malaysia.answers.yahoo.com/question/index?qid=20200427205149AAdqKzg?BQ4=89nvq=12c sg.answers.yahoo.com/question/index?qid=20200427205149AAdqKzg?FH3=24sip=99d hk.answers.yahoo.com/question/index?qid

PyQt5学习一---环境的安装和配置

社会主义新天地 提交于 2020-05-01 05:01:47
PyQt5环境安装 1.Python环境(我在练习的时候是用的Python3.6.8) 2.PyQt5安装 首先安装 sip pip install sip 然后安装PyQt5-tools pip install pyqt5-tools 这条命令会把PyQt5和需要用到的Qt Designer都安装上,我自己在测试的时候,如果先安装PyQt5再安装PyQt5-tools的话,安装PyQt5-tools会把之前已经安装的PyQt5给删掉,然后安装它所支持的PyQt5版本 下面是我安装好之后的pip环境 certifi== 2019.6 . 16 chardet == 3.0 . 4 Click == 7.0 idna == 2.8 PyQt5 == 5.11 . 3 PyQt5 -sip== 4.19 . 17 pyqt5 -tools== 5.11 . 3.1 . 4 python -dotenv== 0.10 . 3 requests == 2.22 . 0 sip == 4.19 . 8 urllib3 == 1.25 . 3 都安装好了之后在pycharm里新建一个demo.py文件,发现导入包的时候报红,但是运行是没有问题的,具体效果看下面 后来经过查询,发现是pycharm的问题,我的pycharm是用的破解版的注册码,解决方法是首先把pycharm的注册信息给清空

H5视频会议,直播,通话,教学,支持Webrtc、rtmp、sip、rtsp转协议、IPCAM、白板、桌面共享、免插件、web全平台、视频融合系统研发笔记。

天大地大妈咪最大 提交于 2020-04-29 14:03:07
随着互联网深入,视频互通互联的需求越来越多,近些年国家要进一步发展5G网络,手机等设备硬件也越来越好,对视频互通性,及时性,便捷性提出了新的需求。 1,H5-WEB接入,全平台web通用: a、在针对政企需求中,视频现在是硬性指标,但现有的系统90%以上是B/S系统. b、各种视频的APP多种多样,接口复杂,不适合接入。 c、对低延时互动需求越来越高,能视频通话,能多人互动。 选型确认:目前主流的rtmp,flash,hls,可以在web实现,但延时大,互动效果差, Webrtc的web接入成了首先,但由于IOS这块进展慢,各种限制,在实施中要处理几个难点,android-vp8<>ios-h264<>pc-vp8互通,这里难点是编码转换,目前ios的webrtc是h264编码,其它是vp8,融合平台要实现全通和自动转换编码。 2,rtsp,rtmp,sip,webrtc,转协议,网络监控头,H5视频端,PAD,手机,PC,SIP硬件,全接入 a、视频设备的种类多,各种老设备,老协议也需要兼容接入。 b、各种编码的格式,延时度,统一格式,响应转发。 c、早期企业的视频会议,直播设备,这里针对性兼容sip,rtsp,rtmp。 选型确认:做为互动协议肯定只能以webrtc为主,编码以h264,vp8两种,支持rtmp(可以兼容各大直播平台),sip分发,。难点是协议处理转换,大工程。

融合Webrtc,rtmp,rtsp,sip,H5视频教学,视频会议,监控,直播一体化方案

限于喜欢 提交于 2020-04-29 14:01:21
随着互联网深入,视频互通互联的需求越来越多,近些年国家要进一步发展5G网络,手机等设备硬件也越来越好,对视频互通性,及时性,便捷性提出了新的需求。 互联网视频有各自的协议和架构,互通都很麻烦,由google发起开源webrtc越来越来越成为视频应用的基础协议和标准,但老产品应用还大量存在,都需要融合接入,客户有这块需求,这方面作者做了一方面的研究和开发,整理记录一下. 选型确认:目前主流的rtmp,flash,hls,可以在web实现,但延时大,互动效果差, Webrtc的web接入成了首先,但由于IOS这块进展慢,各种限制,在实施中要处理几个难点,android-vp8<>ios-h264<>pc-vp8互通,这里难点是编码转换,目前ios的webrtc是h264编码,其它是vp8,融合平台要实现全通和自动转换编码。 2,rtsp,rtmp,sip,webrtc,转协议,网络监控头,usb摄像头,H5视频端接入 a、视频设备的种类多,各种老设备,老协议也需要兼容接入。 b、各种编码的格式,延时度,统一格式,响应转发。 c、早期企业的视频会议,直播设备,这里针对性兼容sip,rtsp,rtmp。 选型确认:做为互动协议肯定只能以webrtc为主,编码以h264,vp8两种,支持rtmp(可以兼容各大直播平台),sip分发,。难点是协议处理转换,大工程。 3,SFU,MCU

PyQt5官方教程+帮助文档+模块功能汇总

你说的曾经没有我的故事 提交于 2020-04-27 02:30:42
写在开头 笔者自学PyQt5的过程中,在网上发现了不少友好的新手入门教程,比如: Archi的博客 PyQt5图形界面编程 但是学习PyQt5的最好方法是阅读官方文档 + 自己动手实践,笔者将分享 官网文档 ,翻译部分内容,并整理汇总常用组件。 pyqt5 简介 PyQt5是绑定Python的Qt应用程序框架。 Qt是一组C++库和开发工具,包括平台独立抽象图形用户接口、网络、线程、正则表达式、SQL数据库、SVG、OpenGL、XML、用户和应用程序设置、定位和定位服务、短程通信(NFC和蓝牙)、上网、3D动画、图表、3D数据可视化和应用商店接口。这些功能由1000多个类实现,这些类被封装成一组模块。 PyQt5支持Windows、Linux、UNIX、Android、MacOS和iOS平台。 PyQt5的主页是< https://www.riverbankcomputing.com/software/pyqt/ >,在这里能找到最新的稳定版本、当前的开发版本和帮助文档的最新版本。当前版本为PyQt5 v5.14.0(2020.02.26) PyQt5是使用SIP绑定生成器构建的。为了构建和使用PyQt5,必须安装SIP。 PyQt4支持Qt的早期版本。 pyqt5包含的模块 PyQt5的 模块 如下表所示:(按字典序排列) 模块名 功能 Enginio 用于访问Qt云服务的类

靠!安装了macOS Catalina(10.15.4)后,文件系统都乱套了

一个人想着一个人 提交于 2020-04-24 09:17:02
最近闲来无事,决定将我的两台apple电脑升级成最新的苹果系统(macOS Catalina),当然,由于以前升级过多次mac系统,所以毫不犹豫从app store下载了最新的macOS Cetalina系统,当然,下载很快,安装也很快,过程就不说了,so easy。 1. 到底发生了什么事 不过安装完后,发生了一件不可思议的事,进入硬盘,发现硬盘里只有如下5个目录。my god,我的其他文件夹哪里去了?难道升级时给我格式化了? 转念一想,Apple应该不会这么变态,否则苹果总部应该早都被自己的用户给踏平了。于是立刻上网查是怎么回事,很过有了结果。原来从Catalina版本开始,Apple为了实现自己更安全的目的,将硬盘分成了两个卷(以前是一个卷),一个是系统卷,一个是数据卷。从下图所示的磁盘工具中就可以看出这一点。 这有些类似于Windows的逻辑磁盘,不过与Windows不同,Catalina的系统卷和数据卷是共享整个磁盘的,只是进行了逻辑隔离。在默认情况下,系统卷只允许操作系统本身来写文件,对于其他用户(包括root用户)都是只读的。也就是说,使用sudo命令也不能向系统卷写入任何数据。 2. 我的文件到哪里去了呢? 现在关键的问题是,我的文件夹到哪里去了呢?其实Catalina会将用户自己创建的文件夹都放到如下的目录: /Users/Shared/Relocated\