wolffd@0: function varargout = mirauditory(x,varargin) wolffd@0: % Produces the output based on an auditory modelling, of the signal x, wolffd@0: % using a gammatone filterbank. wolffd@0: % Optional argument: wolffd@0: % mirtempo(...,'Filterbank',b) indicates the number of channels in wolffd@0: % the filterbank decomposition. wolffd@0: % Default value: b = 40. wolffd@0: wolffd@0: fb.key = 'Filterbank'; wolffd@0: fb.type = 'Integer'; wolffd@0: fb.default = 40; wolffd@0: option.fb = fb; wolffd@0: wolffd@0: specif.option = option; wolffd@0: wolffd@0: varargout = mirfunction(@mirauditory,x,varargin,nargout,specif,@init,@main); wolffd@0: wolffd@0: wolffd@0: function [x type] = init(x,option) wolffd@0: if isamir(x,'miraudio') wolffd@0: x = mirfilterbank(x,'NbChannels',option.fb); wolffd@0: x = mirenvelope(x,'Center','Diff','Halfwave','Center'); wolffd@0: end wolffd@0: type = 'mirenvelope'; wolffd@0: wolffd@0: wolffd@0: function x = main(x,option,postoption)