effect.c File Reference

#include <glib.h>
#include <pthread.h>
#include "debug.h"
#include "effect.h"
#include "playback.h"
#include "plugin.h"
#include "plugins.h"

Go to the source code of this file.

Classes

struct  RunningEffect
struct  EffectStartState
struct  EffectProcessState

Functions

static bool_t effect_start_cb (PluginHandle *plugin, EffectStartState *state)
void effect_start (int *channels, int *rate)
static void effect_process_cb (RunningEffect *effect, EffectProcessState *state)
void effect_process (float **data, int *samples)
void effect_flush (void)
void effect_finish (float **data, int *samples)
int effect_decoder_to_output_time (int time)
int effect_output_to_decoder_time (int time)
static int effect_find_cb (RunningEffect *effect, PluginHandle *plugin)
static int effect_compare (RunningEffect *a, RunningEffect *b)
static void effect_insert (PluginHandle *plugin, EffectPlugin *header)
static void effect_remove (PluginHandle *plugin)
static void effect_enable (PluginHandle *plugin, EffectPlugin *ep, bool_t enable)
bool_t effect_plugin_start (PluginHandle *plugin)
void effect_plugin_stop (PluginHandle *plugin)

Variables

static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER
static GList * running_effects = NULL
static int input_channels
static int input_rate

Function Documentation

static int effect_compare ( RunningEffect a,
RunningEffect b 
) [static]

Definition at line 167 of file effect.c.

Referenced by effect_insert().

int effect_decoder_to_output_time ( int  time  ) 

Definition at line 134 of file effect.c.

Referenced by flush().

static void effect_enable ( PluginHandle plugin,
EffectPlugin *  ep,
bool_t  enable 
) [static]

Definition at line 222 of file effect.c.

Referenced by effect_plugin_start(), and effect_plugin_stop().

static int effect_find_cb ( RunningEffect effect,
PluginHandle plugin 
) [static]

Definition at line 162 of file effect.c.

Referenced by effect_insert(), and effect_remove().

void effect_finish ( float **  data,
int samples 
)

Definition at line 124 of file effect.c.

Referenced by write_buffers().

void effect_flush ( void   ) 

Definition at line 114 of file effect.c.

Referenced by close_audio(), and flush().

static void effect_insert ( PluginHandle plugin,
EffectPlugin *  header 
) [static]

Definition at line 172 of file effect.c.

Referenced by effect_enable().

int effect_output_to_decoder_time ( int  time  ) 

Definition at line 148 of file effect.c.

Referenced by get_output_time().

bool_t effect_plugin_start ( PluginHandle plugin  ) 

Definition at line 246 of file effect.c.

void effect_plugin_stop ( PluginHandle plugin  ) 

Definition at line 258 of file effect.c.

void effect_process ( float **  data,
int samples 
)

Definition at line 104 of file effect.c.

Referenced by write_audio().

static void effect_process_cb ( RunningEffect effect,
EffectProcessState state 
) [static]

Definition at line 90 of file effect.c.

Referenced by effect_process().

static void effect_remove ( PluginHandle plugin  )  [static]

Definition at line 211 of file effect.c.

Referenced by effect_enable().

void effect_start ( int channels,
int rate 
)

Definition at line 65 of file effect.c.

Referenced by open_audio().

static bool_t effect_start_cb ( PluginHandle plugin,
EffectStartState state 
) [static]

Definition at line 46 of file effect.c.

Referenced by effect_start().


Variable Documentation

int input_channels [static]

Definition at line 40 of file effect.c.

Referenced by effect_insert(), and effect_start().

int input_rate [static]

Definition at line 40 of file effect.c.

Referenced by effect_insert(), and effect_start().

pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER [static]
GList* running_effects = NULL [static]

Generated on 3 Feb 2012 for Audacious by  doxygen 1.6.1