Csound Csound-dev Csound-tekno Search About

Re: commentaries about vbap opcodes

Date2007-08-30 18:57
From"Art Hunkins"
SubjectRe: commentaries about vbap opcodes
Thanks, David, for your clear explanation.

I'm intrigued by the last part of your last sentence: what's this about a
"flexible number of inputs"? For each spatially independent channel of audio
(input), doesn't there need to be a separate instance of pan, bformenc *or*
vbap - and their outputs summed?

And would any of these methods handle a *stereo* file input (for example, of
cricket choruses) without multiple instances? (I presume that maybe with an
ambisonic *recording* setup this might be possible. Probably this is what
your last sentence was referring to.)

For my next piece, I'm planning such a realtime Csound "mix" of multiple
cricket choruses, recording either in mono or stereo. This would require
k-time control of location, so I guess vbap would not be possible at this
point.

However - has anyone considered creating an 8-channel (circular) version of
pan? (This could be very handy for me.) It might simply be an add-on to the
current pan, with an optional flag/code for 8-channel. I'd think (and hope)
the syntax would stay the same - the extra speakers represented by
intermediate points, such as (0, -.5). [Or it could be a new opcode, pan8;
but I'd prefer an extension of the current pan.]
----- Original Message ----- 
From: "David Ogborn" 
To: 
Sent: Wednesday, August 29, 2007 11:16 PM
Subject: Re: [Csnd] commentaries about vbap opcodes


> Hi Art,
>
> vector based amplitude panning: takes mono audio signal to some or other
> fixed configuration of loudspeakers given position variables.
>
> pan: essentially a particular case of VBAP.
>
> Ambisonics: takes mono signal to ambisonically encoded signal that is
> "later" decoded for flexible configuration of loudspeakers (OR an
> ambisonically _recorded_ signal can be decoded to flexible configuration
> of loudspeakers).
>
> I think it comes down to whether you want a flexible number of
> loudspeakers or not (or alternately but much less often exploited:
> whether you want a flexible number of inputs or not).
>
> Yours truly,
> David
>
> Art Hunkins wrote:
> > A realtime k-rate version of vbap sounds intriguing and useful to me as
> > well.
> >
> > Please someone explain to me - *in layman's terms* - the practical
> > difference between the vbap opcodes and both pan and the ambisonic
> > opcodes. Please note that, for me, layman's terminology does not include
> > the words angle, vector or azimuth.
> >
> > Otherwise, I'm in the dark. TIA.
> >
> > Art Hunkins
> >
> >     ----- Original Message -----
> >     *From:* Hector Centeno 
> >     *To:* csound@lists.bath.ac.uk 
> >     *Sent:* Wednesday, August 29, 2007 6:11 PM
> >     *Subject:* [Csnd] commentaries about vbap opcodes
> >
> >     So, I got vbap working in PureData and I found it very useful. I'm
> >     able to control the position realtime which is what I was looking
> >     for. I emailed the author, Ville Pulkki, and asked him about the
> >     possibility of having a k-rate controllable version for Csound. He
> >     replied and confessed that he has been away of Csound for very long
> >     time and he doesn't plan to get into it again any time soon. He said
> >     he remembered John ffitch doing some additions to these opcodes some
> >     time ago, so he might know how they are built.
> >
> >     Anyways, I'm just throwing this out there to see if I'm luck and we
> >     get a realtime controllable vbap, I prefer working with Csound than
> >     with the box-and-wire interface of pd!
> >
> >     Cheers,
> >
> >     Hector
> >
> -- 
> Send bugs reports to this list.
> To unsubscribe, send email to csound-unsubscribe@lists.bath.ac.uk

Date2007-08-30 23:03
FromDavid Ogborn
SubjectRe: commentaries about vbap opcodes
Hi Art,

Art Hunkins wrote:
> Thanks, David, for your clear explanation.
> 
> I'm intrigued by the last part of your last sentence: what's this about a
> "flexible number of inputs"? For each spatially independent channel of audio
> (input), doesn't there need to be a separate instance of pan, bformenc *or*
> vbap - and their outputs summed?

Imagine that you have a transformation that takes Ambisonic B-format as
its input.  That transformation "doesn't need to know" that your input
was created from a mono signal encoded with bformenc, or a stereo signal
encoded with multiple instances of bformenc, or a recording made with a
soundfield microphone.


> And would any of these methods handle a *stereo* file input (for example, of
> cricket choruses) without multiple instances? (I presume that maybe with an
> ambisonic *recording* setup this might be possible. Probably this is what
> your last sentence was referring to.)

You can position the left and right signals on or within the unit sphere
to taste.  It won't sound the same as the equivalent stereo playback,
but I've always found the technique to work for me, crude as it may be.


> For my next piece, I'm planning such a realtime Csound "mix" of multiple
> cricket choruses, recording either in mono or stereo. This would require
> k-time control of location, so I guess vbap would not be possible at this
> point.

One gotcha with bformenc (if I remember correctly) is that you will get
zipper noise if you change the k-rate position quickly.  The solution is
to use a UDO encoding algorithm that accepts a-rate position information
(probably one kicking around on the mailing lists, if not I'm glad to
provide one).

Yours truly,
David


> 
> However - has anyone considered creating an 8-channel (circular) version of
> pan? (This could be very handy for me.) It might simply be an add-on to the
> current pan, with an optional flag/code for 8-channel. I'd think (and hope)
> the syntax would stay the same - the extra speakers represented by
> intermediate points, such as (0, -.5). [Or it could be a new opcode, pan8;
> but I'd prefer an extension of the current pan.]
> ----- Original Message ----- 
> From: "David Ogborn" 
> To: 
> Sent: Wednesday, August 29, 2007 11:16 PM
> Subject: Re: [Csnd] commentaries about vbap opcodes
> 
> 
>> Hi Art,
>>
>> vector based amplitude panning: takes mono audio signal to some or other
>> fixed configuration of loudspeakers given position variables.
>>
>> pan: essentially a particular case of VBAP.
>>
>> Ambisonics: takes mono signal to ambisonically encoded signal that is
>> "later" decoded for flexible configuration of loudspeakers (OR an
>> ambisonically _recorded_ signal can be decoded to flexible configuration
>> of loudspeakers).
>>
>> I think it comes down to whether you want a flexible number of
>> loudspeakers or not (or alternately but much less often exploited:
>> whether you want a flexible number of inputs or not).
>>
>> Yours truly,
>> David
>>
>> Art Hunkins wrote:
>>> A realtime k-rate version of vbap sounds intriguing and useful to me as
>>> well.
>>>
>>> Please someone explain to me - *in layman's terms* - the practical
>>> difference between the vbap opcodes and both pan and the ambisonic
>>> opcodes. Please note that, for me, layman's terminology does not include
>>> the words angle, vector or azimuth.
>>>
>>> Otherwise, I'm in the dark. TIA.
>>>
>>> Art Hunkins
>>>
>>>     ----- Original Message -----
>>>     *From:* Hector Centeno 
>>>     *To:* csound@lists.bath.ac.uk 
>>>     *Sent:* Wednesday, August 29, 2007 6:11 PM
>>>     *Subject:* [Csnd] commentaries about vbap opcodes
>>>
>>>     So, I got vbap working in PureData and I found it very useful. I'm
>>>     able to control the position realtime which is what I was looking
>>>     for. I emailed the author, Ville Pulkki, and asked him about the
>>>     possibility of having a k-rate controllable version for Csound. He
>>>     replied and confessed that he has been away of Csound for very long
>>>     time and he doesn't plan to get into it again any time soon. He said
>>>     he remembered John ffitch doing some additions to these opcodes some
>>>     time ago, so he might know how they are built.
>>>
>>>     Anyways, I'm just throwing this out there to see if I'm luck and we
>>>     get a realtime controllable vbap, I prefer working with Csound than
>>>     with the box-and-wire interface of pd!
>>>
>>>     Cheers,
>>>
>>>     Hector
>>>
>> -- 
>> Send bugs reports to this list.
>> To unsubscribe, send email to csound-unsubscribe@lists.bath.ac.uk
>