![]() |
![]() |
![]() |
[Insert name here] Reference Manual | ![]() |
---|---|---|---|---|
#define INPUT_PLUGIN (x) #define OUTPUT_PLUGIN (x) #define EFFECT_PLUGIN (x) #define GENERAL_PLUGIN (x) #define VIS_PLUGIN (x) #define LOWLEVEL_PLUGIN (x) enum AFormat; enum InputVisType; Plugin; InputPlugin; OutputPlugin; EffectPlugin; GeneralPlugin; VisPlugin; LowlevelPlugin; InputPlayback; constgchar * xmms_get_gentitle_format (void); EffectPlugin* get_current_effect_plugin (void);gboolean effects_enabled (void);gboolean plugin_set_errortext (constgchar *text);
typedef enum { FMT_U8, FMT_S8, FMT_U16_LE, FMT_U16_BE, FMT_U16_NE, FMT_S16_LE, FMT_S16_BE, FMT_S16_NE } AFormat;
typedef enum { INPUT_VIS_ANALYZER, INPUT_VIS_SCOPE, INPUT_VIS_VU, INPUT_VIS_OFF } InputVisType;
typedef struct { gpointer handle; gchar *filename; gchar *description; void (*init) (void); void (*about) (void); void (*configure) (void); gint (*is_our_file) (gchar * filename); GList *(*scan_dir) (gchar * dirname); void (*play_file) (InputPlayback * playback); void (*stop) (InputPlayback * playback); void (*pause) (InputPlayback * playback, gshort paused); void (*seek) (InputPlayback * playback, gint time); void (*set_eq) (gint on, gfloat preamp, gfloat * bands); gint (*get_time) (InputPlayback * playback); gint (*get_volume) (gint * l, gint * r); gint (*set_volume) (gint l, gint r); void (*cleanup) (void); InputVisType (*get_vis_type) (void); void (*add_vis_pcm) (gint time, AFormat fmt, gint nch, gint length, gpointer ptr); void (*set_info) (gchar * title, gint length, gint rate, gint freq, gint nch); void (*set_info_text) (gchar * text); void (*get_song_info) (gchar * filename, gchar ** title, gint * length); void (*file_info_box) (gchar * filename); OutputPlugin *output; /* deprecated */ /* Added in Audacious 1.1.0 */ TitleInput *(*get_song_tuple) (gchar * filename); void (*set_song_tuple) (TitleInput * tuple); void (*set_status_buffering) (gboolean status); /* Added in Audacious 1.3.0 */ gint (*is_our_file_from_vfs) (gchar *filename, VFSFile *fd); gchar **vfs_extensions; } InputPlugin;
typedef struct { gpointer handle; gchar *filename; gchar *description; void (*init) (void); void (*cleanup) (void); void (*about) (void); void (*configure) (void); void (*get_volume) (gint * l, gint * r); void (*set_volume) (gint l, gint r); gint (*open_audio) (AFormat fmt, gint rate, gint nch); void (*write_audio) (gpointer ptr, gint length); void (*close_audio) (void); void (*flush) (gint time); void (*pause) (gshort paused); gint (*buffer_free) (void); gint (*buffer_playing) (void); gint (*output_time) (void); gint (*written_time) (void); void (*tell_audio) (AFormat * fmt, gint * rate, gint * nch); } OutputPlugin;
typedef struct { gpointer handle; gchar *filename; gchar *description; void (*init) (void); void (*cleanup) (void); void (*about) (void); void (*configure) (void); gint (*mod_samples) (gpointer * data, gint length, AFormat fmt, gint srate, gint nch); void (*query_format) (AFormat * fmt, gint * rate, gint * nch); } EffectPlugin;
typedef struct { gpointer handle; gchar *filename; gint xmms_session; gchar *description; void (*init) (void); void (*about) (void); void (*configure) (void); void (*cleanup) (void); } GeneralPlugin;
typedef struct { gpointer handle; gchar *filename; gint xmms_session; gchar *description; gint num_pcm_chs_wanted; gint num_freq_chs_wanted; void (*init) (void); void (*cleanup) (void); void (*about) (void); void (*configure) (void); void (*disable_plugin) (struct _VisPlugin *); void (*playback_start) (void); void (*playback_stop) (void); void (*render_pcm) (gint16 pcm_data[2][512]); void (*render_freq) (gint16 freq_data[2][256]); } VisPlugin;
typedef struct { gpointer handle; gchar *filename; gchar *description; void (*init) (void); void (*cleanup) (void); } LowlevelPlugin;
typedef struct { gchar *filename; InputPlugin *plugin; void *data; OutputPlugin *output; int playing; gboolean error; gboolean eof; } InputPlayback;