freeswitch
柳鲲鹏
建立了编程学(编程基本功、平台化编程)、六石管理学等几个流派。
每涉及一个领域,都是顶级砖家。在这些领域中,如果遇到问题,最后肯定是搜索到本博客。
展开
-
YUV半透明效果的实现思路:转RGB、分量叠加
前几天一位网友问我,给Freeswitch画面添加半透明的标识,发500红包。我当时就愣了:大锅你觉得这个功能这么简单吗?这么简单你自己动手就行了,何必找我?我回答说,500做不了,可以参考吾博文。实际上YUV是没有半透明效果的。所以要在YUV画面上叠加一层,目前来看只有转换为RGB后处理,再转回去的办法。还有个办法就是终端在画面上再添加一个控件来实现。原创 2023-07-26 17:56:40 · 556 阅读 · 4 评论 -
CentOS编译FreeSwitch 1.6.20
终于编译过去了,也反复验证了几次。开始试图编译各个模块,结果碰到了很多莫名其妙的问题,而且无解。所以只编译了几个媒体模块,顺利通过。各模块的编译,吾都有专门博文介绍,可自行搜索。修改modules.conf,注释了opus。原创 2023-04-23 09:19:13 · 269 阅读 · 0 评论 -
FreeSwitch无法加载h264,情形2
检查了安装目录/usr/local/freeswitch,确实没有这个so。检查表了/usr/local/lib下,有libavformat之类。在freeswitch编译目录下搜索,有这个so,手动复制过去。与上述博文类似,有差异。原创 2023-04-24 08:53:48 · 409 阅读 · 0 评论 -
Freeswitch的Proxy(代理转发)模式和Bypass(旁路)模式的正确配置
Freeswitch有三种模式:默认两个终端的数据发送到服务器,服务器解码、编码后,再发送到对方。Proxy代理https://freeswitch.org/confluence/display/FREESWITCH/Proxy+Media配置方式:1、conf/sip_profiles/internal.xml 在 sip_profile 中,打开如下代码(其他不打开):<param name="inbound-proxy-media" value="true"/>原创 2021-03-31 20:20:57 · 4074 阅读 · 6 评论 -
gcc: 错误:unrecognized command line option ‘-Wfloat-conversion’
编译freeswitch遇到。一怒之下,删除整个目录,????解压编译。原创 2021-02-15 20:16:17 · 1925 阅读 · 0 评论 -
FreeSwitch的Canvas功能
conference 3500 vid-canvas 1856 3conference 3500 vid-watching-canvas 1855 2比如说有A,B,C,D四个人参会,B,C,D要看A的视频,并且BCD都不发送视频到会议室,他们只看会议室的内容.如果按照常规情况,会议室的画面应该是4分屏,只有一个格子显示的是A的视频,其他三个是BCD的黑色的画面但是如果按照我上面的方法就是把一个会议室变成了几个canvas,A的视频放在canvas 1上, BCD上来的黑色视频放在canvas 2原创 2020-12-15 08:27:47 · 854 阅读 · 0 评论 -
Freeswitch视频会议远超Telepresence
以前做视频时,终端使用的是doubango。之后做视频会议,就顺理成章的使用了Telepresence,因为二者是一伙的。吾对此做了大量修改,增强了功能。 有朋友做视频,选择了Freeswitch。问吾哪个好,吾回答是不知道,只是更熟悉Telepresence。随着了解的深入,吾以为Freeswitch远超Telepresence,也庆幸朋友没有因为吾熟悉在抛弃Freeswitch。具体来说:Freeswitch可以很好的支持硬编硬解,直接使用ffmpeg。 Freeswitch有会议管理功原创 2020-11-07 13:08:22 · 763 阅读 · 0 评论 -
真奇怪:我机器上的freeswitch无法绑定端口了
这几天手机一直无法登录SIP服务器,以为是系统坏了,一查是SIP端口没有绑定。具体显示如下:[root@freeswitch quantum6]# netstat -anp | grep freeswitchtcp 0 0 192.168.1.111:8082 0.0.0.0:* LISTEN 2198/freeswitch tcp 0 0 192.168.1.111:8081 0原创 2020-11-01 09:09:35 · 1533 阅读 · 2 评论 -
全网首发:FreeSwitch服务器转发引起的硬解失败原因分析
当初为了集成硬解,也是费了一番工夫。现在一跨服务器就硬解失败,确实让人气愤。 为什么硬解失败呢?原因肯定是数据发生了变化。通过对比终端发送,与服务器接收:视频数据是由服务器甲转发到服务器乙。 服务器甲会先发一点数据到服务器乙。跟踪时发现,每次都是最先收到861长的包。终端最早的包是25字节。 服务器甲会丢失开头几个包:SPS/PPS,关键帧。 怎么办呢? 切换到软解的方法: https://blog.csdn.net/quantum7/article/details/1087原创 2020-09-23 20:24:16 · 1106 阅读 · 5 评论 -
全网首发:FreeSwitch硬解失败后切换到软解
给FreeSwitch集成了NV硬解。前几天突然报告说,登录A服务器,转发会议命令到B服务器后,一直没画面。跟踪了一下,是硬解一直失败。怎么办?先切换到软解,有时间再研究怎么回事。正常来说,开始的时候,硬解返回数据都是空(因为是异步的)。所以,吾设定失败16次后切换。 切换代码如下:static int init_decoder(h264_codec_context_t *context, final int hw, final int release){ avcodec_profi原创 2020-09-22 06:40:43 · 1895 阅读 · 0 评论 -
FreeSwitch命令:切换视频会议画面布局
简单的命令是:conference 3500 vid-layout 2x2原创 2020-09-18 19:52:31 · 1658 阅读 · 0 评论 -
Freeswitch配置:一台Freeswitch向另外一台Freeswitch转发视频会议命令
场景是:终端登录在Freeswitch A服务器。 终端呼叫视频会议房间3500。 Freeswitch A服务器把视频指令转发到Freeswitch B服务器。 修改Freeswitch A服务器配置,文件是freeswitch/dialplan/default.xml。在<context name="default">下增加转发指令: <extension name="meeting"> <condition field="des原创 2020-09-18 19:45:35 · 1429 阅读 · 0 评论 -
FreeSwitch视频会议,4路以上CPU占用暴增的原因
朋友测试了视频会议,说显卡、CPU消耗太大。吾就纳闷了,当初为了解决视频会议,专门修改了源码,增加了显卡编解码的功能。结果可好,消耗太吓人了,还不如没有呢。 吾回家赶紧启动机器,用4个终端测试,效果非常好,根本没有显卡、CPU暴增的情形。吾提出两个可能:驱动问题。经过测试验证没问题。 配置问题。吾要求他使用吾提供的压缩包,或者使用备份恢复机器。 今天告诉吾,拿到吾压缩包后,他在编译freeswitch时增加了一个参数:--enable-64。去掉后再次编译,一切正常。吾赶紧回头看了吾编译原创 2020-09-16 20:23:05 · 1726 阅读 · 0 评论 -
华为会议终端TE10 SIP配置范例
朋友寄了一个华为终端,吾视之,这界面,这易用性,实在是……太差了。咱做东西,能不能好用一点? 比如这个SIP配置,URI不都是带SIP的吗?端口在哪里设置?如果吾不会配置,怎么办? 下图配置,可以连上吾服务器,也可以进入视频会议。...原创 2020-08-13 08:10:11 · 2124 阅读 · 0 评论 -
全网首发:Freeswitch会议房间增加标识
给与会人员设置标识,这个是已有功能。吾是增加了汉字支持。怎样给会议房间增加标识?把房间作为一个特殊人员。开始吾是这个思路,后来发现不好做,新建这个人员的对象,比较麻烦。于是放弃。 在房间对象内,直接加一个图片,然后参照标识代码,把文字画上去。在解析命令时,如果发现代号为0,就作为房间标识。 再找到合成会议图像的地方,最后把标识画上去。成功。...原创 2020-08-11 08:18:38 · 478 阅读 · 0 评论