aboutsummaryrefslogtreecommitdiffstats
path: root/codecs/codec_speex.c
diff options
context:
space:
mode:
authorkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2006-08-21 02:11:39 +0000
committerkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2006-08-21 02:11:39 +0000
commit8b0c007ad990aa27d9868da49215fd1076ac77cc (patch)
tree270b9c46c1e644483d6d2a35b509f43218ba3252 /codecs/codec_speex.c
parenta42edc84034f91932a3e12d503e07f76a6eb498a (diff)
merge new_loader_completion branch, including (at least):
- restructured build tree and makefiles to eliminate recursion problems - support for embedded modules - support for static builds - simpler cross-compilation support - simpler module/loader interface (no exported symbols) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@40722 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'codecs/codec_speex.c')
-rw-r--r--codecs/codec_speex.c40
1 files changed, 15 insertions, 25 deletions
diff --git a/codecs/codec_speex.c b/codecs/codec_speex.c
index fec92520d..06c23e4f0 100644
--- a/codecs/codec_speex.c
+++ b/codecs/codec_speex.c
@@ -479,49 +479,39 @@ static void parse_config(void)
ast_config_destroy(cfg);
}
-static int reload(void *mod)
+static int reload(void)
{
- /*
- * XXX reloading while there are active sessions is
- * somewhat silly because the old state presumably
- * wouldn't work anymore...
- * maybe we shuld do a standard hangup localusers ?
- */
- ast_mutex_lock(&__mod_desc->lock);
parse_config();
- ast_mutex_lock(&__mod_desc->lock);
+
return 0;
}
-static int unload_module(void *mod)
+static int unload_module(void)
{
int res;
+
res = ast_unregister_translator(&lintospeex);
res |= ast_unregister_translator(&speextolin);
+
return res;
}
-static int load_module(void *mod)
+static int load_module(void)
{
int res;
+
parse_config();
- res=ast_register_translator(&speextolin, mod);
+ res=ast_register_translator(&speextolin);
if (!res)
- res=ast_register_translator(&lintospeex, mod);
+ res=ast_register_translator(&lintospeex);
else
ast_unregister_translator(&speextolin);
- return res;
-}
-static const char *description(void)
-{
- return "Speex/PCM16 (signed linear) Codec Translator";
-}
-
-static const char *key(void)
-{
- return ASTERISK_GPL_KEY;
+ return res;
}
-STD_MOD(MOD_1, reload, NULL, NULL);
-
+AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Speex Coder/Decoder",
+ .load = load_module,
+ .unload = unload_module,
+ .reload = reload,
+ );