view src/audacious/xconvert.h @ 2503:10692383c103 trunk

[svn] first try for libid3tag integration. this improved libid3tag supports vfs operations and is capable of adding id3v2 tag to files which doesn't have id3v2 tag ever.
author yaz
date Sun, 11 Feb 2007 05:19:07 -0800
parents 3ec22a11c83e
children 3b6d316f8b09
line wrap: on
line source

/*
 *  Copyright (C) 2003  Haavard Kvaalen <havardk@xmms.org>
 *
 *  Licensed under GNU LGPL version 2.
 */

#include <audacious/plugin.h>

struct xmms_convert_buffers;

struct xmms_convert_buffers *xmms_convert_buffers_new(void);
/*
 * Free the data assosiated with the buffers, without destroying the
 * context.  The context can be reused.
 */
void xmms_convert_buffers_free(struct xmms_convert_buffers *buf);
void xmms_convert_buffers_destroy(struct xmms_convert_buffers *buf);


typedef int (*convert_func_t) (struct xmms_convert_buffers * buf,
                               void **data, int length);
typedef int (*convert_channel_func_t) (struct xmms_convert_buffers * buf,
                                       void **data, int length);
typedef int (*convert_freq_func_t) (struct xmms_convert_buffers * buf,
                                    void **data, int length, int ifreq,
                                    int ofreq);


convert_func_t xmms_convert_get_func(AFormat output, AFormat input);
convert_channel_func_t xmms_convert_get_channel_func(AFormat fmt,
                                                     int output,
                                                     int input);
convert_freq_func_t xmms_convert_get_frequency_func(AFormat fmt,
                                                    int channels);