Home > ACA-Code > ToolFreq2Bark.m

ToolFreq2Bark

PURPOSE ^

converts frequency to bark

SYNOPSIS ^

function [bark] = ToolFreq2Bark(fInHz, cModel)

DESCRIPTION ^

converts frequency to bark
>
> @param fInHz: frequency
> @param cModel: 'Schroeder','Terhardt', 'Zwicker', or 'Traunmuller'
>
> @retval bark value
 ======================================================================

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 %converts frequency to bark
0002 %>
0003 %> @param fInHz: frequency
0004 %> @param cModel: 'Schroeder','Terhardt', 'Zwicker', or 'Traunmuller'
0005 %>
0006 %> @retval bark value
0007 % ======================================================================
0008 function [bark] = ToolFreq2Bark(fInHz, cModel)
0009 
0010     if (nargin < 2)
0011         cModel = 'Schroeder';
0012     end
0013 
0014     % set function handle
0015     hPitchFunc = str2func (['aca' cModel '_I']);
0016     
0017     bark = hPitchFunc(fInHz);
0018 end
0019 
0020 function [bark] = acaSchroeder_I(f)
0021     bark    = 7 * asinh(f/650);
0022 end
0023 
0024 function [bark] = acaTerhardt_I(f)
0025     bark    = 13.3 * atan(0.75 * f/1000);
0026 end
0027 
0028 function [bark] = acaZwicker_I(f)
0029     bark    = 13 * atan(0.76 * f/1000) + 3.5 * atan(f/7500);
0030 end
0031 
0032 function [bark] = acaTraunmuller_I(f)
0033     bark    = 26.81/(1+1960./f) - 0.53;
0034 end

Generated on Fri 22-Apr-2022 20:59:51 by m2html © 2005