diff options
author | anders <anders@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-10-01 06:45:08 +0000 |
---|---|---|
committer | anders <anders@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-10-01 06:45:08 +0000 |
commit | 1f6c494641c4ca99eec7a9f47818526c72789439 (patch) | |
tree | 17bf220c1c1ac1144dfa8212f09444e51c248a26 /libaf/af_dummy.c | |
parent | c0091278d8f15580eecebfc8c454fba250cf4b94 (diff) | |
download | mpv-1f6c494641c4ca99eec7a9f47818526c72789439.tar.bz2 mpv-1f6c494641c4ca99eec7a9f47818526c72789439.tar.xz |
Adding new audio output filter layer libaf
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7569 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libaf/af_dummy.c')
-rw-r--r-- | libaf/af_dummy.c | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/libaf/af_dummy.c b/libaf/af_dummy.c new file mode 100644 index 0000000000..8435b4a626 --- /dev/null +++ b/libaf/af_dummy.c @@ -0,0 +1,60 @@ +/* The name speaks for itself this filter is a dummy and will not blow + up regardless of what you do with it. */ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include "../config.h" +#include "../mp_msg.h" + +#include "af.h" + +// Initialization and runtime control +static int control(struct af_instance_s* af, int cmd, void* arg) +{ + switch(cmd){ + case AF_CONTROL_REINIT: + memcpy(af->data,(af_data_t*)arg,sizeof(af_data_t)); + mp_msg(MSGT_AFILTER,MSGL_V,"[dummy] Was reinitialized, rate=%iHz, nch = %i, format = 0x%08X and bps = %i\n",af->data->rate,af->data->nch,af->data->format,af->data->bps); + return AF_OK; + } + return AF_UNKNOWN; +} + +// Deallocate memory +static void uninit(struct af_instance_s* af) +{ + if(af->data) + free(af->data); +} + +// Filter data through filter +static af_data_t* play(struct af_instance_s* af, af_data_t* data) +{ + // Do something necessary to get rid of annoying warning during compile + if(!af) + printf("EEEK: Argument af == NULL in af_dummy.c play()."); + return data; +} + +// Allocate memory and set function pointers +static int open(af_instance_t* af){ + af->control=control; + af->uninit=uninit; + af->play=play; + af->mul.d=1; + af->mul.n=1; + af->data=malloc(sizeof(af_data_t)); + if(af->data == NULL) + return AF_ERROR; + return AF_OK; +} + +// Description of this filter +af_info_t af_info_dummy = { + "dummy", + "dummy", + "Anders", + "", + open +}; |