概述

freeswitch是一款简单好用的VOIP开源软交换平台。

在fs的使用过程中,某些场景只需要对rtp媒体做透传,又不需要任何处理。

在fs1.6的版本中,我们可以使用proxy_media来代理媒体的转发,媒体的协商由AB路端对端处理,fs不处理媒体协商,也不处理媒体流,包括录音,dtmf检测等,仅仅原样转发媒体流。

但是在fs的1.10.7版本中,proxy_media模式失效了。

同步测试了fs1.6.19版本和fs1.10.7版本,其中1.6版本是可以正常使用proxy_media模式的。

环境

CentOS 7.9

freeswitch 1.10.7

问题描述

部署简图如下。fs138为注册服务器,设置为bypass模式。fs137为as服务器,需要过媒体流。

A -- fs138 -- fs137 -- fs138 -- B

首先测试正常的媒体模式。dialplan如下。

<action application="set" data="inherit_codec=true"/>

<action application="export" data="absolute_codec_string=G729,PCMA" />

<action application="bridge" data="{sip_invite_call_id=${sip_call_id}}sofia/external/$1@10.55.55.138:5080"/>

修改dialplan,在bridge之前设置proxy_media模式。

<action application="set" data="inherit_codec=true"/>

<action application="export" data="absolute_codec_string=G729,PCMA" />

<action application="set" data="proxy_media=true"/>

<action application="bridge" data="{sip_invite_call_id=${sip_call_id}}sofia/external/$1@10.55.55.138:5080"/>

再次发起呼叫,截图中可以看到其中一路rtp媒体流未正常转发。

解决方案

暂无解决方案,也没有解决的预期。

总结

同步测试了fs1.6.19版本和fs1.10.7版本,其他版本未进行进一步的测试。

proxy media模式在某些场景下还是挺好用的。

空空如常

求真得真

fs的proxy_media模式失效的更多相关文章

  1. 高阶篇:4.2.2)DFMEA层级分明的失效模式、失效后果、失效原因

    本章目的:明确失效模式.失效后果.失效原因的定义,分清楚层次关系,完成DFMEA这部分的填写. 1.失效模式,失效后果,失效原因的定义: 这是FEMEA手册第四册中的定义. 1.1 潜在失效模式 (b ...

  2. PDF 补丁丁 0.6.0.3355 版发布(修复阅读模式、书签缩放的问题)

    PDF补丁丁的新版本修复了染色阅读模式失效.编辑器书签缩放比例调整在某些场合下失败的问题.

  3. C++实现Singleton模式(effective c++ 04)

    阅读effective c++ 04 (31页) 提到的singleton设计模式.了解一下. 定义: 保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享. 应用场景: 比 ...

  4. Oracle开启和关闭的四种模式

    >1 启动数据库 在cmd命令窗口,直接输入"sqlplus",直接进入oracle管理界面,输入用户名和密码后,开始启动数据库,启动数据库三个步骤:启动实例.加载数据库.打 ...

  5. 【JavaScript吉光片羽】遭遇IE8

    最初对做兼容性的认知只停留在UI层面,但其实UI层面都还好,因为毕竟你可以直接看得见现象,更为重要的是在JavaScript层面,因为这个部分涉及到功能性,前者最多是体验性的问题.下面扯一下这几天遇到 ...

  6. 【转】你所不知道的HTML <head/> 头标签

    HTML的头部内容特别多,有针对SEO的头部信息,也有针对移动设备的头部信息.而且各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元素,有很多差异性.移动端的工作已经越来越成为前端工作的重要内容, ...

  7. this

    JavaScript 中的 this ! 2016-12-28 vvv阿城 JavaScript 转自  https://qiutc.me/post/this-this-this-in-javascr ...

  8. Python笔记总结week6

    关于创建.调用模块 1.我们创建一个模块commons.py,  并且在文件中写以下三个函数: def login(): print('登录') def logout(): print('退出') d ...

  9. Atitti 知识图谱构建方法attilax 总结

    Atitti 知识图谱构建方法attilax 总结   1.1. 知识图谱schema构建(体系化)1 1.2. 纵向垂直拓展(向上抽象,向下属性拓展)2 1.3. 横向拓展2 1.4. 网拓展2 1 ...

  10. [转] 移动前端不得不了解的HTML5 head 头标签

    HTML的头部内容特别多,有针对SEO的头部信息,也有针对移动设备的头部信息.而且各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元 素,有很多差异性.移动端的工作已经越来越成为前端工作的重要内容 ...

随机推荐

  1. 龙哥量化:AI时代到来,百度的文心一言能AI选股吗,让AI写一个选股公式20日涨幅>=30%,AI弱智,垃圾。在通达信测试对比一下

    如果您需要代写技术指标公式, 请联系我. 龙哥QQ:591438821 龙哥微信:Long622889 选股要求:20日涨幅>=30% 首先看我写的 HH:=HHV(H,20); LL:=LLV ...

  2. Qt/C++实现帧同步播放器/硬解码GPU绘制/超低资源占用/支持8K16K/支持win/linux/mac/嵌入式/国产OS等

    一.前言 首先泼一盆冷水,在不同的电脑上实现完完全全的帧同步理论上是不可能的,市面上所有号称帧同步的播放器,同一台电脑不同拼接视频可以通过合并成一张图片来绘制实现完完全全的帧同步,不同电脑,受限于网络 ...

  3. Qt/C++最新地图组件发布/历时半年重构/同时支持各种地图内核/包括百度高德腾讯天地图

    一.前言说明 最近花了半年时间,专门重构了整个地图组件,之前写的比较粗糙,有点为了完成功能而做的,没有考虑太多拓展性和易用性.这套地图自检这几年大量的实际项目和用户使用下来,反馈了不少很好的建议和意见 ...

  4. 在C++中实现委托事件的方法

    参考链接: 1.在C++中模拟委托事件的方法(一) 2.利用C++的模板模拟.net的代理语法 源码学习: 1.https://pan.baidu.com/s/15vbryvzDnvmJ6FMku6_ ...

  5. 开源即时通讯IM框架MobileIMSDK的鸿蒙NEXT端开发快速入门

     相关链接: ① MobileIMSDK-鸿蒙端的详细介绍 ② MobileIMSDK-鸿蒙端的开发手册new(* 精编PDF版) 一.理论知识准备 您需要对鸿蒙Next和ArkTS开发有所了解: 1 ...

  6. 基于NVIDIA NGC容器安装使用PaddlePaddle

    基于NVIDIA NGC容器安装使用PaddlePaddle PaddlePaddle PaddlePaddle作为国内首个自主研发的深度学习平台,自2016年正式向专业社区开源,是一个技术先进.功能 ...

  7. KeyDB-键值存储

    KeyDB项目是从redis fork出来的分支.众所周知redis是一个单线程的kv内存存储系统,而KeyDB在100%兼容redis API的情况下将redis改造成多线程. 多线程架构 线程模型 ...

  8. Nginx设置HTTPS监听

    原文链接:https://blog.liuzijian.com/post/03708e47-03bd-4efe-a569-16f0eedc6158.html 1. 获取 SSL 证书 首先,你需要获取 ...

  9. MongoDB:【索引类型】单字段索引、复合索引、其他索引

    查询性能分析:

  10. mac安装NTFS工具

    1.插上硬盘,输入diskutil list 查看磁盘列表找到磁盘名称 2.更改 /etc/fstab文件 LABEL=MyData none ntfs rw,auto,nobrowse ntfs r ...