Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Easier configuration of simulator #7

Open
hagenw opened this issue Feb 22, 2016 · 1 comment
Open

Easier configuration of simulator #7

hagenw opened this issue Feb 22, 2016 · 1 comment
Assignees

Comments

@hagenw
Copy link
Member

hagenw commented Feb 22, 2016

The usability of the Binaural simulator is a little bit complicated at the moment and it would be great if we could improve it. Maybe we should first start with a list what is the most confusing and what we could do better. It would be great if all people that reported some problems could be participating in creating such a list.

I will start with a few things:

  • automatically decide if we need the binaural or the brs renderer on the basis of the SOFA convention
  • read head orientation and position from SOFA file if no value is specified
  • only specify how many number of sources we will use together with the corresponding numbers from the SOFA file
  • make the specification of the used signal easier. Give a wav file or a command like noise.
  • make it easier to specify if we should do a loop or not.
  • automatically use the first source from the SOFA file if not other specified.
@hagenw
Copy link
Member Author

hagenw commented Mar 3, 2016

I found three other examples. How should we handle this? Should we list all the things we encounter in this issue? Or should we create a new milestone "Easier configuration of simulator" and then create maybe single issues for all the things we would like to have changes? This is maybe a little bit easier to handle as you can then directly reject some of the issues.

But first I will start to list both examples here, before I forget them:

1.) Provide a list or an overview for the xml and Matlab configuration which entries are mandatory.
2.) Index sources by names in Matlab: we can give names to sources in the xml config, for example:

    <source Name="Male_Speaker1"
                  Type="point"
                  Position="1.48 0.26 0.00"/>

But in Matlab we can index them only by numbers:

set(sim.Sources{1}.AudioBuffer, 'File', 'male_speaker1.wav');

It would be easier if we could also use the names:

set(sim.Sources{'Male_Speaker1'}.AudioBuffer, 'File', 'male_speaker1.wav');

3.) Make creation of high number of sources easier. Assume we want to simulate an anechoic loudspeaker array, from which we want to use single loudspeakers during our simulations. It is easy to use a single anechoic HRIR for this, but the problem is that it takes some time to set up all the sources.
For example in the xml configuration it would look similar to this, I guess:

<scene
    BlockSize="4096"
    SampleRate="44100"
    LengthOfSimulation = "1"
    HRIRs="impulse_responses/qu_kemar_anechoic/QU_KEMAR_anechoic_2m.sofa">
    <source
        Name="Loudspeaker_1"
        Type="point"
        Position="1.00 0.00 0.00">
        <buffer ChannelMapping="1"
            Type="fifo"/>
    </source>
    <source
        Name="Loudspeaker_2"
        Type="point"
        Position="2.00 0.00 0.00">
        <buffer ChannelMapping="1"
            Type="fifo"/>
    </source> 

    [...]

    <source
        Name="Loudspeaker_30"
        Type="point"
        Position="30.00 0.00 0.00"> 
        <buffer ChannelMapping="1"
            Type="fifo"/>
    </source>
    <sink Name="Head"
          Position="0 0 0"
          UnitX="1 0 0"
          UnitZ="0 0 1"/>
</scene>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants