Programmer Guide/Command Reference/EVAL/hz2erb: Difference between revisions

From STX Wiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:hz2erb, erb2hz}}
{{DISPLAYTITLE:hz2erb, erb2hz}}
Convert all elements of ''x'' from Hertz to ERB (equivalent rectangulare bandwidth) Bark and vice versa.
Convert all elements of ''x'' from Hertz to ERB (equivalent rectangulare bandwidth) and vice versa.
;Usage: '''<code>hz2erb(<var>x</var>)</code>
;Usage: <code>hz2erb(<var>x</var>)</code>
:'''<code>erb2hz(<var>x</var>)</code>
:<code>erb2hz(<var>x</var>)</code>
:;<var>x</var>: a scalar, vector or matrix
:;<var>x</var>: a scalar, vector or matrix
;Result: The result ''r'' has the same type as ''x'' and contains the converted elements of ''x''.  
;Result: The result ''r'' has the same type as ''x'' and contains the converted elements of ''x''.  
:;'''hz2bark''': Uses the algorithm published by Zwicker and Fastl (1990) to convert frequencies from Hz to Bark:
:;'''hz2erb''': ''r''<sub>i,j</sub> = 16.7 * log<sub>10</sub>(1 + ''x''<sub>i,j</sub> / 165.4)
::''r''<sub>i,j</sub> = 13 * atan(0.76*''x''<sub>i,j</sub>/1000) + 3.5 * atan((''x''<sub>i,j</sub>/7500)^2)
::''x''<sub>i,j</sub> is the frequency in Hz and must be greater than 0
:;'''bark2hz''': Because the above formula is not directly invertable, an iteration algorithm is used to convert the ''x''<sub>i,j</sub> from Bark to the result ''r''<sub>i,j</sub> in Hz.
:;'''erb2hz''': ''r''<sub>i,j</sub> = 165.4 * (10 ^ (0.06 * ''x''<sub>i,j</sub>) - 1)
:Note: Both functions are also available in the expressions used in the [[Programmer_Guide/Command_Reference/NUM|NUM]] and [[Programmer_Guide/Command_Reference/INT|INT]] command.
::''x''<sub>i,j</sub> is the frequency in ERB and must be greater than 0


;See also: [[Programmer_Guide/Command_Reference/EVAL/hz2mel|hz2mel, mel2hz]], [[Programmer_Guide/Command_Reference/EVAL/hz2erb|hz2erb, erb2hz]], [[Programmer_Guide/Command_Reference/EVAL/hz2cent|hz2cent, cent2hz]], [[Programmer_Guide/Command_Reference/EVAL/hth|hth]], [[Programmer_Guide/Command_Reference/EVAL/log2lin|lin2log, log2lin]]
;See also: [[../hz2mel|hz2mel, mel2hz]], [[../hz2bark|hz2bark, bark2hz]], [[../hz2cent|hz2cent, cent2hz]], [[../hth|hth]], [[../log2lin|lin2log, log2lin]]


[[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]]
[[../#Functions|<function list>]]
 
=====hz2erb=====
 
Hertz to Erb conversion (equivalent rectangle )
 
=====Usage:=====
 
<code>hz2erb(<var>x</var>)</code>

Latest revision as of 10:54, 21 April 2011

Convert all elements of x from Hertz to ERB (equivalent rectangulare bandwidth) and vice versa.

Usage
hz2erb(x)
erb2hz(x)
x
a scalar, vector or matrix
Result
The result r has the same type as x and contains the converted elements of x.
hz2erb
ri,j = 16.7 * log10(1 + xi,j / 165.4)
xi,j is the frequency in Hz and must be greater than 0
erb2hz
ri,j = 165.4 * (10 ^ (0.06 * xi,j) - 1)
xi,j is the frequency in ERB and must be greater than 0
See also
hz2mel, mel2hz, hz2bark, bark2hz, hz2cent, cent2hz, hth, lin2log, log2lin

<function list>

Navigation menu

Personal tools