diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-08-21 02:11:39 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-08-21 02:11:39 +0000 |
commit | 8b0c007ad990aa27d9868da49215fd1076ac77cc (patch) | |
tree | 270b9c46c1e644483d6d2a35b509f43218ba3252 /codecs/codec_zap.c | |
parent | a42edc84034f91932a3e12d503e07f76a6eb498a (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_zap.c')
-rw-r--r-- | codecs/codec_zap.c | 38 |
1 files changed, 16 insertions, 22 deletions
diff --git a/codecs/codec_zap.c b/codecs/codec_zap.c index ee9b94a4a..696a1b899 100644 --- a/codecs/codec_zap.c +++ b/codecs/codec_zap.c @@ -222,7 +222,7 @@ static struct ast_frame *fakesrc_sample(void) return &f; } -static int register_translator(int dst, int src, void *mod) +static int register_translator(int dst, int src) { struct translator *zt; int res; @@ -242,7 +242,7 @@ static int register_translator(int dst, int src, void *mod) zt->t.useplc = global_useplc; zt->t.buf_size = BUFFER_SAMPLES * 2; zt->t.desc_size = sizeof(struct pvt); - if ((res = ast_register_translator(&zt->t, mod))) { + if ((res = ast_register_translator(&zt->t))) { free(zt); return -1; } @@ -310,7 +310,7 @@ static void parse_config(void) ast_config_destroy(cfg); } -static void build_translators(void *mod, struct format_map *map, unsigned int dstfmts, unsigned int srcfmts) +static void build_translators(struct format_map *map, unsigned int dstfmts, unsigned int srcfmts) { unsigned int src, dst; @@ -325,13 +325,13 @@ static void build_translators(void *mod, struct format_map *map, unsigned int ds if (global_format_map.map[dst][src]) continue; - if (!register_translator(dst, src, mod)) + if (!register_translator(dst, src)) map->map[dst][src] = 1; } } } -static int find_transcoders(void *mod) +static int find_transcoders(void) { struct zt_transcode_info info = { 0, }; struct format_map map = { { { 0 } } }; @@ -346,7 +346,7 @@ static int find_transcoders(void *mod) for (info.tcnum = 0; !(res = ioctl(fd, ZT_TRANSCODE_OP, &info)); info.tcnum++) { if (option_verbose > 1) ast_verbose(VERBOSE_PREFIX_2 "Found transcoder '%s'.\n", info.name); - build_translators(mod, &map, info.dstfmts, info.srcfmts); + build_translators(&map, info.dstfmts, info.srcfmts); } close(fd); @@ -363,12 +363,12 @@ static int find_transcoders(void *mod) return 0; } -static int reload(void *mod) +static int reload(void) { struct translator *cur; parse_config(); - find_transcoders(mod); + find_transcoders(); AST_LIST_LOCK(&translators); AST_LIST_TRAVERSE(&translators, cur, entry) @@ -378,29 +378,23 @@ static int reload(void *mod) return 0; } -static int unload_module(void *mod) +static int unload_module(void) { unregister_translators(); return 0; } -static int load_module(void *mod) +static int load_module(void) { parse_config(); - find_transcoders(mod); + find_transcoders(); return 0; } -static const char *description(void) -{ - return "Generic Zaptel Transcoder Codec Translator"; -} - -static const char *key(void) -{ - return ASTERISK_GPL_KEY; -} - -STD_MOD(MOD_1, reload, NULL, NULL); +AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Generic Zaptel Transcoder Codec Translator", + .load = load_module, + .unload = unload_module, + .reload = reload, + ); |