zoukankan      html  css  js  c++  java
  • 在FreeSWITCH中设置视频通话

    
    好了,说今天的技术话题。今天有网友在QQ群中问FreeSWITCH中视频通话如何开启,本来今天想写点别的的,就索性先说这个吧。

    FreeSWITCH支持视频通话和视频会议,但默认的配置不支持,好多人不知道怎么开启该功能。其实,很简单,找到vars.xml配置文件中的如下的行:

      <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM"/>
      <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM"/>

    上面的设置是设置FreeSWITCH支持的媒体编码,包括语音和视频。可以看到,默认的配置仅支持音频编码,要支持视频,我们直接把上想要的视频编码设置上即可,如:

      <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM,H263,H264,VP8"/>
      <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM,H263,H264,VP8"/>

    上面的代码就加入了H263、H264以及VP8编码的支持。

    看到这儿,你可能会说,这也太简单了。是的,会者不难。但是,会了上面的并不等于真会了。因为,你可能还没理解为什么这样配置就可以了。所以,我会再讲点高级的。

    看Sofia Profile的配置中(如internal.xml),你会看到如下的配置参数:

        <param name="inbound-codec-prefs" value="$${global_codec_prefs}"/>
        <param name="outbound-codec-prefs" value="$${global_codec_prefs}"/>

    如果你善于比较,就可以看出,这里,它引用了在vars.xml中的变量。所以,在vars.xml中只是设了一个变量(如global_codec_prefs),真正起作用的是这儿。也正是这个原因,你可以完全不用改varx.xml中的变量,而直接改该配置文件,如,使用下面的方法加入视频编码:

        <param name="inbound-codec-prefs" value="$${global_codec_prefs},H264,VP8"/>
        <param name="outbound-codec-prefs" value="$${global_codec_prefs},H264,VP8"/>

    当然,你也可以直接这样设:

        <param name="inbound-codec-prefs" value="PCMA,PCMU,H264"/>
        <param name="outbound-codec-prefs" value="PCMA,PCMU,H264"/>

    到这里,我想你就明白多了。记得重启FreeSWITCH让配置生效。

    那么,有人又要问,能不能不重启FreeSWITCH就让它生效呢?这应该是下一个话题了,有空再讲。
  • 相关阅读:
    求解幻方问题
    Internet 信息服务承载说明 即IIS安装说明
    Internet Explorer 8 使用技巧(1):兼容性视图
    .NET Framewok 3.5 中 JSON 序列化和反序列化的简单实现
    ASP.NET 检测远程URL是否存在 方法参考
    C#操作Excel表格数据
    TransactSQL编程规范(转)
    如何控制数据集字段被引用的所有控件的Visible、Enabled、ReadOnly
    销量排名,使用临时表,不使用函数和变量情况下的实现
    如何使用SQL实现排名
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13318469.html
Copyright © 2011-2022 走看看