Changeset 663:e9b7eeca0a38 in roaraudio
- Timestamp:
- 08/26/08 17:32:04 (16 years ago)
- Branch:
- default
- Phase:
- public
- Location:
- libroardsp
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
libroardsp/filter.c
r661 r663 25 25 #include "libroardsp.h" 26 26 27 int roardsp_filter_init (struct roardsp_filter * filter, struct roar_stream * stream, int id) { 28 if ( filter == NULL ) 29 return -1; 30 31 memset(filter, 0, sizeof(struct roardsp_filter)); 32 33 filter->channels = stream->info.channels; 34 filter->bits = stream->info.bits; 35 36 return -1; 37 } 38 39 int roardsp_filter_uninit(struct roardsp_filter * filter) { 40 int ret = 0; 41 42 if ( filter == NULL ) 43 return -1; 44 45 if ( filter->uninit ) 46 ret = filter->uninit(filter); 47 48 memset(filter, 0, sizeof(struct roardsp_filter)); 49 50 return ret; 51 } 52 53 int roardsp_filter_calc (struct roardsp_filter * filter, void * data, size_t len) { 54 int ret = 0; 55 56 if ( filter == NULL ) 57 return -1; 58 59 if ( filter->calc ) 60 ret = filter->calc(filter, data, len); 61 62 return ret; 63 } 27 64 28 65 //ll -
libroardsp/filterchain.c
r661 r663 25 25 #include "libroardsp.h" 26 26 27 int roardsp_fchain_init (struct roardsp_filterchain * chain) { 28 if ( chain == NULL ) 29 return -1; 30 31 memset((void*)chain, 0, sizeof(struct roardsp_filterchain)); 32 return 0; 33 } 34 35 int roardsp_fchain_uninit(struct roardsp_filterchain * chain) { 36 int i; 37 int ret = 0; 38 39 if ( chain == NULL ) 40 return -1; 41 42 for (i = 0; i < chain->filters; i++) { 43 if ( roardsp_filter_uninit(chain->filter[i]) == -1 ) 44 ret = -1; 45 } 46 47 if ( roardsp_fchain_init(chain) == -1 ) 48 ret = -1; 49 50 return ret; 51 } 52 53 int roardsp_fchain_add (struct roardsp_filterchain * chain, struct roardsp_filter * filter) { 54 if ( chain == NULL ) 55 return -1; 56 57 if ( chain->filters < ROARDSP_MAX_FILTERS_PER_CHAIN ) { 58 chain->filter[chain->filters++] = filter; 59 return 0; 60 } 61 62 return -1; 63 } 64 65 int roardsp_fchain_calc (struct roardsp_filterchain * chain, void * data, size_t len) { 66 int i; 67 int ret = 0; 68 69 if ( chain == NULL ) 70 return -1; 71 72 for (i = 0; i < chain->filters; i++) { 73 if ( roardsp_filter_calc(chain->filter[i], data, len) == -1 ) 74 ret = -1; 75 } 76 77 return ret; 78 } 27 79 28 80 //ll
Note: See TracChangeset
for help on using the changeset viewer.