X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=spx_afh.c;h=caeacb1921341b04b26f117d5de6607a80ab95e9;hp=108cfaa49c1acf2168858f1120357569379f9c71;hb=HEAD;hpb=9d8fdf8898418711558f70a9630b2444036d8285 diff --git a/spx_afh.c b/spx_afh.c index 108cfaa4..cd3b7cde 100644 --- a/spx_afh.c +++ b/spx_afh.c @@ -1,8 +1,4 @@ -/* - * Copyright (C) 2010 Andre Noll - * - * Licensed under the GPL v2. For licencing details see COPYING. - */ +/* Copyright (C) 2010 Andre Noll , see file COPYING. */ /* This file is based on speexdec.c, by Jean-Marc Valin, see below. */ @@ -88,7 +84,7 @@ static int spx_get_comments(unsigned char *comments, int length, if (c + 4 > end) return -E_SPX_COMMENT; nb_fields = read_u32(c); - PARA_DEBUG_LOG("%d comment(s)\n", nb_fields); + PARA_DEBUG_LOG("%u comment(s)\n", nb_fields); c += 4; for (i = 0; i < nb_fields; i++, c += len) { char *tag; @@ -118,8 +114,6 @@ static int spx_get_comments(unsigned char *comments, int length, return 1; } -static const char* speex_suffixes[] = {"spx", "speex", NULL}; - static int spx_packet_callback(ogg_packet *packet, int packet_num, __a_unused int serial, struct afh_info *afhi, void *private_data) @@ -154,13 +148,13 @@ static int spx_get_file_info(char *map, size_t numbytes, __a_unused int fd, struct afh_info *afhi) { struct private_spx_data psd; - struct ogg_afh_callback_info spx_callback_info = { + struct oac_callback_info spx_callback_info = { .packet_callback = spx_packet_callback, .private_data = &psd, }; memset(&psd, 0, sizeof(psd)); - return ogg_get_file_info(map, numbytes, afhi, &spx_callback_info); + return oac_get_file_info(map, numbytes, afhi, &spx_callback_info); } static size_t spx_make_meta_packet(struct taginfo *tags, char **result) @@ -201,7 +195,7 @@ static size_t spx_make_meta_packet(struct taginfo *tags, char **result) } PARA_DEBUG_LOG("meta packet size: %zu bytes\n", sz); /* terminating zero byte for the last sprintf() */ - buf = p = para_malloc(sz + 1); + buf = p = alloc(sz + 1); write_u32(p, comment_sz); p += 4; strcpy(p, tags->comment); @@ -246,19 +240,22 @@ static int spx_rewrite_tags(const char *map, size_t mapsize, int ret; meta_sz = spx_make_meta_packet(tags, &meta_packet); - ret = ogg_rewrite_tags(map, mapsize, output_fd, meta_packet, meta_sz); + ret = oac_rewrite_tags(map, mapsize, output_fd, meta_packet, meta_sz); free(meta_packet); return ret; } +static const char * const speex_suffixes[] = {"spx", "speex", NULL}; + /** - * The init function of the ogg/speex audio format handler. + * The ogg/speex audio format handler. * - * \param afh Pointer to the struct to initialize. + * This codec is considered obsolete because the opus codec surpasses its + * performance in all areas. It is only compiled in if both the ogg and the + * speex library are installed. */ -void spx_afh_init(struct audio_format_handler *afh) -{ - afh->get_file_info = spx_get_file_info, - afh->suffixes = speex_suffixes; - afh->rewrite_tags = spx_rewrite_tags; -} +const struct audio_format_handler spx_afh = { + .get_file_info = spx_get_file_info, + .suffixes = speex_suffixes, + .rewrite_tags = spx_rewrite_tags, +};