Skip to content

Conversation

@mtmccrea
Copy link
Contributor

What is the goal of this PR?

Convert filtering method of the BinauraliserNF plugin to the frequency domain. This somewhat mitigates artifacts that arise from fast source movement over large angular displacement.

The calculation of the DVF filter was previously based on azimuth, but is not more properly based on the lateral angle, which changes with elevation.

A utility was also added to SAF which returns the magnitude and/or phase of an IIR filter at specific frequencies, which can be useful for frequency domain filtering or graphical representations of EQ curves, etc. There are two versions for coefficients of different numerical resolution: float for more efficient operation but accuracy is limited to lower order filters, and double for accuracy with higher order filters at low frequencies in particular.

What are the changes implemented in this PR?

  • Add evalIIRTransferFunction and associated unit tests
  • Processing function now only updates coeffs on changed distatance/direction.
  • add src_dirs_cur pointer to switch between non/rotated directions.
  • doaToIpsiInteraural returns lateral angle alpha to properly parameterize the DVF with changing elevation.
  • Add binauraliser_nf to README.md
  • Updated comments and cleanup for docs
  • Binauraliser: remove unused var src_dirs.

- Add evalIIRTransferFunction and associated unit tests
- Processing function to only update coeffs on changed distatance/direction.
- BInauraliser: remove unused var src_dirs.
- add `src_dirs_cur` pointer to switch between non/rotated directions.
- `doaToIpsiInteraural` returns lateral angle `alpha` to properly parameterize the DVF with changing elevation.
- Add binauraliser_nf to README.md
@mtmccrea mtmccrea changed the title Convert filtering method to frequency domain BinauraliserNF: Convert filtering method to frequency domain Mar 21, 2022
@mtmccrea mtmccrea changed the base branch from master to develop March 21, 2022 11:39
@leomccormack leomccormack merged commit 152cda2 into leomccormack:develop Mar 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants