sfstoolbox / sfs-matlab

SFS Toolbox for Matlab/Octave
https://sfs-matlab.readthedocs.io
MIT License
98 stars 39 forks source link

Representation of sound fields and driving functions as circular and spherical harmonics #63

Open fietew opened 8 years ago

fietew commented 8 years ago

Background

Data based Sound Field Synthesis has not been covered in the Sound Field Synthesis Toolbox, so far, as most of the implemented algorithms are based on mathematical models of the desired sound field. The expansion of sound fields into circular or spherical basis functions is common approach to describe arbitrary sound fields. It is also implicitly used in Near-Field-Compensated Higher Order Ambisonics.

Scheme

scheme

The image illustrates the current implementations in master (blue) and the additional implementations in harmonics (red) for the spherical case. Same holds for the circular case. The graph shows, how to get from a parameterization, i.e x_s, to the desired sound field S or the synthesized sound field P. D denotes the driving function.

TODO List

Circular/Spherical Expansion of Sound Fields

fietew commented 8 years ago

Maybe the following functions could be replaced by their recurrence relation sphbesselh_derived sphbesselj_derived sphbessely_derived besselh_derived besselj_derived bessely_derived

Also this might not be necessary: isargsquaredinteger.m

hagenw commented 8 years ago

Can you please make sure that you use always 4 spaces as tab in for loops etc. and also that you have no spaces between , and arguments in function calls: f(a, b, c) => f(a,b,c). This would be nice to maintain consistency across all functions in the Toolbox.

fietew commented 8 years ago

I added it to the TODO list

hagenw commented 5 years ago

If I remember correctly, we included some (or most?) of your proposals by other pull requests. What is the current status and plan for this pull request?

fietew commented 5 years ago

I would suggest to wait for the upcoming discussions on the DAGA poster for SFS Toolbox. Then I will have a more holistic view on what is already implemented and what might be taken from this PR.