diff options
Diffstat (limited to 'formats/format_gsm.c')
-rw-r--r-- | formats/format_gsm.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/formats/format_gsm.c b/formats/format_gsm.c index 2b0b3413e..26257c39f 100644 --- a/formats/format_gsm.c +++ b/formats/format_gsm.c @@ -53,7 +53,7 @@ static struct ast_frame *gsm_read(struct ast_filestream *s, int *whennext) int res; s->fr.frametype = AST_FRAME_VOICE; - s->fr.subclass.codec = AST_FORMAT_GSM; + ast_format_set(&s->fr.subclass.format, AST_FORMAT_GSM, 0); AST_FRAME_SET_BUFFER(&(s->fr), s->buf, AST_FRIENDLY_OFFSET, GSM_FRAME_SIZE) s->fr.mallocd = 0; if ((res = fread(s->fr.data.ptr, 1, GSM_FRAME_SIZE, s->f)) != GSM_FRAME_SIZE) { @@ -74,8 +74,8 @@ static int gsm_write(struct ast_filestream *fs, struct ast_frame *f) ast_log(LOG_WARNING, "Asked to write non-voice frame!\n"); return -1; } - if (f->subclass.codec != AST_FORMAT_GSM) { - ast_log(LOG_WARNING, "Asked to write non-GSM frame (%s)!\n", ast_getformatname(f->subclass.codec)); + if (f->subclass.format.id != AST_FORMAT_GSM) { + ast_log(LOG_WARNING, "Asked to write non-GSM frame (%s)!\n", ast_getformatname(&f->subclass.format)); return -1; } if (!(f->datalen % 65)) { @@ -145,10 +145,9 @@ static off_t gsm_tell(struct ast_filestream *fs) return (offset/GSM_FRAME_SIZE)*GSM_SAMPLES; } -static const struct ast_format gsm_f = { +static struct ast_format_def gsm_f = { .name = "gsm", .exts = "gsm", - .format = AST_FORMAT_GSM, .write = gsm_write, .seek = gsm_seek, .trunc = gsm_trunc, @@ -159,14 +158,15 @@ static const struct ast_format gsm_f = { static int load_module(void) { - if (ast_format_register(&gsm_f)) + ast_format_set(&gsm_f.format, AST_FORMAT_GSM, 0); + if (ast_format_def_register(&gsm_f)) return AST_MODULE_LOAD_FAILURE; return AST_MODULE_LOAD_SUCCESS; } static int unload_module(void) { - return ast_format_unregister(gsm_f.name); + return ast_format_def_unregister(gsm_f.name); } AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, "Raw GSM data", |