Csound Csound-dev Csound-tekno Search About

new spatialisation (5.1) tool for CsoundQt added to github

Date2016-02-01 11:51
FromKarin Daum
Subjectnew spatialisation (5.1) tool for CsoundQt added to github
Hi,

maybe some of you may remember questions I asked beginning this year in connection with my project which ist intended to use multichannel sound and in which synthetisised voices should be placed (or moving) in a virtual room. In order to understand the behaviour of the different spatialisation methods I've written a small tool which allows the different methods to be compared and their  features to be studied. 

In contrast to Joachim's spatialisation example already available in CsoundQt my tool is specifically tailored to Quadrophonie/Surround 5.1 with the focus on the simulation of moving sound. Joachim added my program to Github yesterday. It can be found here:
https://github.com/mantaraya36/CsoundQt/blob/master/examples/Miscellaneous/Spatialization_5.1.csd
It should be also attached to this mail.

Some details:

The program allows the comparison of
- VBAP (5.1)
- VBAP with distance dependent spread (5.1)
- In phase Ambisonics 1st and 3rd order (Quadro + LFE)
- In phase Ambisonics 3rd oder with modified distant dependent damping of the higher order contributions (Quadro + LFE)
- Ambisonics Equivalent Panning (Quadro + LFE)
- Bilinear Panning (Quadro+LFE and 5.1)

In all approaches the distance dependence of the amplitudes is treated in the same way using the function given in the manual for the W channel of Ambisonics. In Ambisonics the HO channels are treated in general as given in the manual with the exception of the 4th method in the list above. The "Bilinear Panning" is not described in the manual. This is a translation of my C-code to a Csound opcode of what I've implemented in my program before I learnt of the existence of Csound.

In this new tool different types of movements of the sound can be simulated: circles with different radii, spirals, straight lines and the possibility to enter a position manually or moving the position using the mouse.  

In addition to the audio signals generated the tool provides additional informations extracted from the amplitudes of the individual channels via the associated widgets, like:
- the rms value of the individual channels in dB
- the rms weighted estimate on the number of active speakers, which provides a measure for the diffuseness of sound
- the position in x,y of the source reconstructed from the rms of the amplitudes in comparison to the simulated position.

I learnt o lot about the different methods using this tool, especially of the artefacts present in most of the methods, like suddenly switching from one side to the other (pure VBAP) or the non-uniformity of space (VBAP,Ambisonics) which enhances the effect of surround, but leads to a fast "acceleration" of the perceived movement when passing close to the origin.

Maybe this tool is of some interest for others too.

Cheers,

Karin   

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-02-01 13:12
FromTarmo Johannes
SubjectRe: new spatialisation (5.1) tool for CsoundQt added to github

Great, thank you very much!
Can't wait  until I get to a proper room with good surround sound.
Tarmo

01.02.2016 13:51 kirjutas kuupäeval "Karin Daum" <karin.daum@desy.de>:
Hi,

maybe some of you may remember questions I asked beginning this year in connection with my project which ist intended to use multichannel sound and in which synthetisised voices should be placed (or moving) in a virtual room. In order to understand the behaviour of the different spatialisation methods I've written a small tool which allows the different methods to be compared and their  features to be studied.

In contrast to Joachim's spatialisation example already available in CsoundQt my tool is specifically tailored to Quadrophonie/Surround 5.1 with the focus on the simulation of moving sound. Joachim added my program to Github yesterday. It can be found here:
https://github.com/mantaraya36/CsoundQt/blob/master/examples/Miscellaneous/Spatialization_5.1.csd
It should be also attached to this mail.

Some details:

The program allows the comparison of
- VBAP (5.1)
- VBAP with distance dependent spread (5.1)
- In phase Ambisonics 1st and 3rd order (Quadro + LFE)
- In phase Ambisonics 3rd oder with modified distant dependent damping of the higher order contributions (Quadro + LFE)
- Ambisonics Equivalent Panning (Quadro + LFE)
- Bilinear Panning (Quadro+LFE and 5.1)

In all approaches the distance dependence of the amplitudes is treated in the same way using the function given in the manual for the W channel of Ambisonics. In Ambisonics the HO channels are treated in general as given in the manual with the exception of the 4th method in the list above. The "Bilinear Panning" is not described in the manual. This is a translation of my C-code to a Csound opcode of what I've implemented in my program before I learnt of the existence of Csound.

In this new tool different types of movements of the sound can be simulated: circles with different radii, spirals, straight lines and the possibility to enter a position manually or moving the position using the mouse.

In addition to the audio signals generated the tool provides additional informations extracted from the amplitudes of the individual channels via the associated widgets, like:
- the rms value of the individual channels in dB
- the rms weighted estimate on the number of active speakers, which provides a measure for the diffuseness of sound
- the position in x,y of the source reconstructed from the rms of the amplitudes in comparison to the simulated position.

I learnt o lot about the different methods using this tool, especially of the artefacts present in most of the methods, like suddenly switching from one side to the other (pure VBAP) or the non-uniformity of space (VBAP,Ambisonics) which enhances the effect of surround, but leads to a fast "acceleration" of the perceived movement when passing close to the origin.

Maybe this tool is of some interest for others too.

Cheers,

Karin

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2016-02-19 15:23
From"Dr. Richard Boulanger"
SubjectRe: new spatialisation (5.1) tool for CsoundQt added to github
Thanks for sharing this wonderful work.  I am currently building a nice surround room for Csound Surround Xplorations.  Looking forward to using your .csd and exploring your algorithm.   Dr.B.

_____________________________________________
Dr. Richard Boulanger
Professor of Electronic Production and Design
Professional Writing and Music Technology Division
Berklee College of Music
1140 Boylston Street, FB-75
Boston, MA 02215-3693
Office @ 161 Mass Ave - 4th Floor
617-747-2384 (office)  774-488-9166 (cell)
______________________________________________
rboulanger@berklee.edu (email)
https://www.facebook.com/richard.boulanger.58 (facebook)
______________________________________________
President of Boulanger Labs - http://boulangerlabs.com
Director of Csounds.com - http://csounds.com
Author & Editor: The Csound Book - http://mitpress.mit.edu/books/csound-book
Author & Editor: The Audio Programming Book - http://mitpress.mit.edu/books/audio-programming-book
______________________________________________
about: http://www.boulangerlabs.com/about/richardboulanger/
about: http://www.csounds.com/community/developers/dr-richard-boulanger/
______________________________________________
music: http://www.csounds.com/community/developers/dr-richard-boulanger/dr-richard-boulanger-music/


On Mon, Feb 1, 2016 at 6:51 AM, Karin Daum <karin.daum@desy.de> wrote:
Hi,

maybe some of you may remember questions I asked beginning this year in connection with my project which ist intended to use multichannel sound and in which synthetisised voices should be placed (or moving) in a virtual room. In order to understand the behaviour of the different spatialisation methods I've written a small tool which allows the different methods to be compared and their  features to be studied.

In contrast to Joachim's spatialisation example already available in CsoundQt my tool is specifically tailored to Quadrophonie/Surround 5.1 with the focus on the simulation of moving sound. Joachim added my program to Github yesterday. It can be found here:
https://github.com/mantaraya36/CsoundQt/blob/master/examples/Miscellaneous/Spatialization_5.1.csd
It should be also attached to this mail.

Some details:

The program allows the comparison of
- VBAP (5.1)
- VBAP with distance dependent spread (5.1)
- In phase Ambisonics 1st and 3rd order (Quadro + LFE)
- In phase Ambisonics 3rd oder with modified distant dependent damping of the higher order contributions (Quadro + LFE)
- Ambisonics Equivalent Panning (Quadro + LFE)
- Bilinear Panning (Quadro+LFE and 5.1)

In all approaches the distance dependence of the amplitudes is treated in the same way using the function given in the manual for the W channel of Ambisonics. In Ambisonics the HO channels are treated in general as given in the manual with the exception of the 4th method in the list above. The "Bilinear Panning" is not described in the manual. This is a translation of my C-code to a Csound opcode of what I've implemented in my program before I learnt of the existence of Csound.

In this new tool different types of movements of the sound can be simulated: circles with different radii, spirals, straight lines and the possibility to enter a position manually or moving the position using the mouse.

In addition to the audio signals generated the tool provides additional informations extracted from the amplitudes of the individual channels via the associated widgets, like:
- the rms value of the individual channels in dB
- the rms weighted estimate on the number of active speakers, which provides a measure for the diffuseness of sound
- the position in x,y of the source reconstructed from the rms of the amplitudes in comparison to the simulated position.

I learnt o lot about the different methods using this tool, especially of the artefacts present in most of the methods, like suddenly switching from one side to the other (pure VBAP) or the non-uniformity of space (VBAP,Ambisonics) which enhances the effect of surround, but leads to a fast "acceleration" of the perceived movement when passing close to the origin.

Maybe this tool is of some interest for others too.

Cheers,

Karin

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here