Skip to content

V19ConvertersStatus

Wiki converter edited this page Sep 24, 2020 · 2 revisions

Converters Status

The following output was generated by /test/patest_converters.c on 12/3/2007. Note that the dBfs values should be taken with a grain of salt because the asymmetrical scaling used by PortAudio changes the values from those expected.

The most important thing to note is that those conversions marked with X are not implemented at all. The others seem to be working more-or-less OK although some analysis should be performed to understand the noise floor deviation from expected values.

Sine wave in, something out

flags = paNoFlag

Output contains non-zero data

Key: . - pass, X - fail

in|  out:      f32     i32     i24     i16      i8     ui8   
f32             .       .       .       .       .       X   
i32             .       .       X       .       .       X   
i24             .       .       .       X       X       X   
i16             .       .       .       .       X       X   
 i8             .       .       .       .       .       .   
ui8             .       .       .       .       .       .   

Combined dynamic range (src->dest->float32)

Key: Noise amplitude in dBfs, X - fail (either above failed or dest->float32 failed)

in|  out:      f32     i32     i24     i16      i8     ui8   
 f32          -1.$  -180.6  -138.5   -79.5   -31.5     X   
 i32        -144.5  -144.5     X     -86.1   -42.1     X   
 i24        -138.5  -138.5  -138.5     X       X       X   
 i16         -84.8   -84.8   -84.8   -84.8     X       X   
  i8         -36.6   -36.6   -36.6   -36.6   -36.6   -36.6 
 ui8         -36.4   -36.4   -36.4   -36.4   -36.4   -36.4 

flags = paClipOff

Output contains non-zero data

Key: . - pass, X - fail

in|  out:      f32     i32     i24     i16      i8     ui8   
f32             .       .       .       .       .       X   
i32             .       .       X       .       .       X   
i24             .       .       .       X       X       X   
i16             .       .       .       .       X       X   
 i8             .       .       .       .       .       .   
ui8             .       .       .       .       .       .   

Combined dynamic range (src->dest->float32)

Key: Noise amplitude in dBfs, X - fail (either above failed or dest->float32 failed)

in|  out:      f32     i32     i24     i16      i8     ui8   
 f32          -1.$  -180.6  -138.5   -80.1   -31.3     X   
 i32        -144.5  -144.5     X     -85.4   -42.1     X   
 i24        -138.5  -138.5  -138.5     X       X       X   
 i16         -84.8   -84.8   -84.8   -84.8     X       X   
  i8         -36.6   -36.6   -36.6   -36.6   -36.6   -36.6 
 ui8         -36.4   -36.4   -36.4   -36.4   -36.4   -36.4 

flags = paDitherOff

Output contains non-zero data

Key: . - pass, X - fail

in|  out:      f32     i32     i24     i16      i8     ui8   
f32             .       .       .       .       .       X   
i32             .       .       .       .       .       .   
i24             .       .       .       .       .       .   
i16             .       .       .       .       .       .   
 i8             .       .       .       .       .       .   
ui8             .       .       .       .       .       .   

Combined dynamic range (src->dest->float32)

Key: Noise amplitude in dBfs, X - fail (either above failed or dest->float32 failed)

in|  out:      f32     i32     i24     i16      i8     ui8   
 f32          -1.$  -187.2  -138.7   -84.8   -36.6     X   
 i32        -144.5  -144.5  -138.5   -90.3   -42.1   -42.1 
 i24        -138.5  -138.5  -138.5   -90.3   -42.1   -42.1 
 i16         -84.8   -84.8   -84.8   -84.8   -42.1   -42.1 
  i8         -36.6   -36.6   -36.6   -36.6   -36.6   -36.6 
 ui8         -36.4   -36.4   -36.4   -36.4   -36.4   -36.4 

flags = paClipOff | paDitherOff

Output contains non-zero data

Key: . - pass, X - fail

in|  out:      f32     i32     i24     i16      i8     ui8   
f32             .       .       .       .       .       .   
i32             .       .       .       .       .       .   
i24             .       .       .       .       .       .   
i16             .       .       .       .       .       .   
 i8             .       .       .       .       .       .   
ui8             .       .       .       .       .       .   

Combined dynamic range (src->dest->float32)

Key: Noise amplitude in dBfs, X - fail (either above failed or dest->float32 failed)

in|  out:      f32     i32     i24     i16      i8     ui8   
 f32          -1.$  -187.2  -138.7   -84.8   -36.6   -36.6 
 i32        -144.5  -144.5  -138.5   -90.3   -42.1   -42.1 
 i24        -138.5  -138.5  -138.5   -90.3   -42.1   -42.1 
 i16         -84.8   -84.8   -84.8   -84.8   -42.1   -42.1 
  i8         -36.6   -36.6   -36.6   -36.6   -36.6   -36.6 
 ui8         -36.4   -36.4   -36.4   -36.4   -36.4   -36.4 
Clone this wiki locally