freeswitch配置视频对接

概述
freeswitch是一款简单好用的VOIP开源软交换平台。
随着4G/5G网络的完善,视频呼叫的需求慢慢变多,本文介绍使用fs对接视频线路的配置方案。
环境
CentOS 7.9
freeswitch 1.10.7
视频模块
目前主流视频编解码使用H264,需要编译安装fs的mod_h26x模块,默认不安装。
模块源代码目录如下。
freeswitch-1.10.7/src/mod/codecs/mod_h26x
编译安装后的模块如下,$freeswitch/mod/目录下。
mod_h26x.la
mod_h26x.so
修改模块加载配置文件,$freeswitch/conf/autoload_configs/modules.conf.xml
<load module="mod_h26x"/>
配置方案
dialplan拨号计划配置如下。
<condition field="caller_id_number" expression="^(\d+)$" break="on-true">
<action application="limit" data="hash cps all 100/1 !EXCHANGE_ROUTING_ERROR" />
<action application="limit" data="hash capacity all 3000 !EXCHANGE_ROUTING_ERROR" />
<action application="set"
data="effective_caller_id_name=${translate(${caller_id_number} GB-CALLER-IN)}" />
<action application="set"
data="effective_caller_id_number=${translate(${caller_id_number} GB-CALLER-IN)}" />
<action application="set"
data="destination_number=${translate(${destination_number} GB-DEST-IN)}" />
<action application="set" data="inherit_codec=true" />
<action application="export" data="absolute_codec_string=PCMA,H264" />
<action application="set" data="sip_copy_custom_headers=false" />
<action application="export" data="passthrough180=true" />
<action application="export" data="ringback=${cn-ring}" />
<action application="export" data="rtp_video_max_bandwidth=4mb" />
<action application="export" data="rtp_video_fmtp=profile-level-id=42001f;packetization-mode=1" />
<action application="bridge"
data="{sip_cid_type=none,sip_invite_call_id=${sip_call_id}
}sofia/gateway/${distributor(in-gw)}/${destination_number}" />
</condition>
其中几个关键配置项如下。
absolute_codec_string
rtp_video_max_bandwidth
rtp_video_fmtp
测试
测试视频双向正常。

总结
fs配置视频比较容易,但是视频质量要求参数配置的正确,需要多测试和调整。
目前fs中的264应该只支持透传模式。
空空如常
求真得真
freeswitch配置视频对接的更多相关文章
- onvif规范的实现:成功实现ONVIF协议RTSP-Video-Stream与OnvifDeviceManager的视频对接
有了前几篇的基础,现在可以正式开始onvif的实现工作,其中一项非常重要的部分就是视频流的对接,即能够在符合onvif标准的监控客户端软件里接收到设备端NVT发来的RTSP视频流.这里,我所用的客户端 ...
- phalcon在phpstorm里的配置视频
phalcon在phpstorm里的配置视频:http://www.tudou.com/programs/view/yXw6e_Rshwk/
- 公网用户接入NAT后面的freeswitch配置
大致网络示意和终端号码: 客户端侧: 终端号码(1019)终端IP(192.168.1.15)+ 网关(192.168.1.1) + 路由器公网IP(动态地址) 服务器侧: 防火墙(181.92.2. ...
- Postfix邮件系统安装配置视频
Postfix邮件系统安装配置视频(文字资料详见linux企业应用案例精解),全部视频分为四个部分,详情如下: http://115.com/file/be9j4dsj#postfix-1.rar h ...
- Cisco PIX防火墙PPPoE拨号配置视频教学
Cisco PIX防火墙PPPoE拨号配置视频教学 本文出自 "李晨光原创技术博客" 博客,请务必保留此出处http://chenguang.blog.51cto.com/35 ...
- Freeswitch配置之sofia
SIP模块 - mod_sofia SIP 模块是 FreeSWITCH的主要模块. 在 FreeSWITCH中,实现一些互联协议接口的模块称为 Endpoint.FreeSWITH支持很多的 End ...
- 图形化Cisco设备管理实践(附安装配置视频)
图形化Cisco设备管理实践 Ciscoworks 2000是Cisco公司推出的基于SNMP协议的网络管理系统,通过它网络管理人员可以方便快捷地完成设备的配置.管理.监控和故障分析等任务, Cisc ...
- freeswitch 配置 DID 方法
本文来自 csdn http://blog.csdn.net/voipmaker 转载注明出处,谢谢. 我建了一个 Freeswitch学习 交流群, 45211986, 欢迎加入. DI ...
- Kali Linux虚拟机安装完整安装过程及简单配置(视频)
点击播放视频 附:视频中出现的两个txt文本,包含了大致的安装与配置过程: 文本1:KaliLinux虚拟机安装和初步配置 Kali Linux虚拟机安装和初步配置 大家好,今天给大家演示一下在VMw ...
- freeswitch配置功能二
<?xml version="1.0" encoding="utf-8"?><include> <context n ...
随机推荐
- 一种面向混合云平台基于LSTM预测模型的资源池配额方法。
本文分享自天翼云开发者社区<一种面向混合云平台基于LSTM预测模型的资源池配额方法.>,作者:l****n 基于用户的历史配额申请情况和实际资源使用情况组成数据集搭建LSTM时序预测模型. ...
- AI 如何重塑劳动力市场:基于 Claude 数据的深度分析
前言 本文翻译自 Anthropic 今天发布的 The Anthropic Economic Index ,经济指数报告,这份报告基于 Claude 的数据对目前的 AI 使用情况做了汇总. 引言 ...
- flutter-全局监听路由
main.dart navigatorObservers: [ MyApp.routeObserver, GLObserver(),//全局监听路由 ], router_listener.dart c ...
- 工业机器人维修保养|ABB机器人IRB 6700维修保养技巧
通过机器人维修保养服务定制合理的维修保养工作,可以确保ABB机器人IRB 6700的持续稳定运行,延长其使用寿命,为企业的生产提供有力保障. 一.ABB机器人IRB 6700日常检查与维护 外观检查: ...
- el-radio-group之迷惑操作:label和label
el-radio-group之迷惑操作:label和label 今天学习element-ui的el-radio-group的时候发现el-radio-group的默认值设置无效,但是点击其他单选框可以 ...
- 如何在 CentOS 7 linux上安装和使用 FFmpeg
SSH首选FinalShell 1.下载解压 wget http://www.ffmpeg.org/releases/ffmpeg-5.1.tar.gz tar -zxvf ffmpeg-5.1.ta ...
- Docker 的基本概念和优势,以及在应用程序开发中的实际应用
Docker是一个开源的容器化平台,它可以将应用程序及其所有依赖关系打包为一个独立的容器,从而实现应用程序的快速部署.可移植性和可扩展性. Docker的基本概念包括以下几个方面: 镜像(Image) ...
- 大数据之路Week10_day07 (JavaAPI 操作Redis 模拟将redis当作缓存,从Mysql数据库中查询数据)
在现实生活中,当很多人去访问一个数据的时候,Mysql会很慢,甚至会挂掉,如果这里之间存在一个缓存的话,直接从内存中查询数据将会快很多. 这里就去模拟将redis看作是一个缓存,因为redis就是基于 ...
- 批处理脚本(.bat)实现实时监测文件夹并执行命令 [假设有新文件则拷贝到远程文件夹内]
想到一个情景.程序实时监测文件夹情况,如果有新文件进入,分析其文件名,然后如果满足预设条件,则做相应操作.比如扫描仪扫描了文件,会将新文件保存进特定文件夹内,可以使用该程序来做处理. 在Windows ...
- Linux系列:如何用 C#调用 C方法造成内存泄露
一:背景 1. 讲故事 好久没写文章了,还是来写一点吧,今年准备多写一点 Linux平台上的东西,这篇从 C# 调用 C 这个例子开始.在 windows 平台上,我们常常在 C++ 代码中用 ext ...