首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动FreeSwitch服务时未加载CORE_PCM_MODULE

启动FreeSwitch服务时未加载CORE_PCM_MODULE
EN

Stack Overflow用户
提问于 2017-09-26 11:35:31
回答 1查看 252关注 0票数 0

当我使用"show codecs“查看加载的编解码器时,我正在安装freeswitch 1.6.19。

未加载CORE_PCM_MODULE、CORE_SPEEX_MODULE、CORE_VPX_MODULE

代码语言:javascript
复制
> show codecs
codec,ADPCM (IMA),mod_spandsp
codec,AMR,mod_amr
codec,B64 (STANDARD),mod_b64
codec,G.722,mod_spandsp
codec,G.723.1 6.3k,mod_g723_1
codec,G.726 16k,mod_spandsp
codec,G.726 16k (AAL2),mod_spandsp
codec,G.726 24k,mod_spandsp
codec,G.726 24k (AAL2),mod_spandsp
codec,G.726 32k,mod_spandsp
codec,G.726 32k (AAL2),mod_spandsp
codec,G.726 40k,mod_spandsp
codec,G.726 40k (AAL2),mod_spandsp
codec,G.729,mod_g729
codec,GSM,mod_spandsp
codec,H.261 Video (passthru),mod_h26x
codec,H.263 Video (passthru),mod_h26x
codec,H.263+ Video (passthru),mod_h26x
codec,H.263++ Video (passthru),mod_h26x
codec,H.264 Video (passthru),mod_h26x
codec,H263 Video,mod_av
codec,H263+ Video,mod_av
codec,H264 Video,mod_av
codec,LPC-10,mod_spandsp
codec,OPUS (STANDARD),mod_opus
codec,iLBC,mod_ilbc

26 total.

当我使用fs_cli中的命令时,会加载CORE_PCM_MODULE、CORE_SPEEX_MODULE和CORE_VPX_MODULE

代码语言:javascript
复制
> reload CORE_PCM_MODULE
> reload CORE_SPEEX_MODULE
> reload CORE_VPX_MODULE

但是当我重新启动freeswitch服务时,这三个模块都消失了。

如何在启动freeswitch服务时加载这些核心模块?

音频编解码器转码也不能正常工作。我不知道这个问题是否与CORE_MODULE加载有关。

EN

回答 1

Stack Overflow用户

发布于 2017-10-02 09:29:57

我尝试修改了freeswitch-1.6.19/src/switch_loadable_module.c.它解决了这个问题。但我不知道修改是否破坏了其他模块的加载过程。

这个问题也可以在freeswitch jira:https://freeswitch.org/jira/browse/FS-9102中找到。

下面附上了补丁文件

代码语言:javascript
复制
--- switch_loadable_module.c    2017-07-13 20:07:30.000000000 +0800
+++ freeswitch-1.6.19/src/switch_loadable_module.c  2017-09-29 17:23:10.000000000 +0800
@@ -1875,15 +1875,6 @@

    if (!autoload) return SWITCH_STATUS_SUCCESS;

-   switch_loadable_module_load_module("", "CORE_SOFTTIMER_MODULE", SWITCH_FALSE, &err);
-   switch_loadable_module_load_module("", "CORE_PCM_MODULE", SWITCH_FALSE, &err);
-   switch_loadable_module_load_module("", "CORE_SPEEX_MODULE", SWITCH_FALSE, &err);
-#ifdef SWITCH_HAVE_YUV
-#ifdef SWITCH_HAVE_VPX
-   switch_loadable_module_load_module("", "CORE_VPX_MODULE", SWITCH_FALSE, &err);
-#endif
-#endif
-
    if ((xml = switch_xml_open_cfg(cf, &cfg, NULL))) {
        switch_xml_t mods, ld;
        if ((mods = switch_xml_child(cfg, "modules"))) {
@@ -1980,6 +1971,15 @@
        apr_dir_close(module_dir_handle);
    }

+   switch_loadable_module_load_module("", "CORE_SOFTTIMER_MODULE", SWITCH_FALSE, &err);
+   switch_loadable_module_load_module("", "CORE_PCM_MODULE", SWITCH_FALSE, &err);
+   switch_loadable_module_load_module("", "CORE_SPEEX_MODULE", SWITCH_FALSE, &err);
+#ifdef SWITCH_HAVE_YUV
+#ifdef SWITCH_HAVE_VPX
+   switch_loadable_module_load_module("", "CORE_VPX_MODULE", SWITCH_FALSE, &err);
+#endif
+#endif
+
    switch_loadable_module_runtime();

    memset(&chat_globals, 0, sizeof(chat_globals));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46417430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档