Csound Csound-dev Csound-tekno Search About

[Csnd] tempo from orch

Date2010-06-14 17:14
FromJim Aikin
Subject[Csnd] tempo from orch
Is there a way to affect the playback tempo (the data contained in a t
statement) from an instrument during performance?

Or is it possible that I've finally discovered something that Csound can't
do?

A subtler question: is the p3 value passed to an instr by an i line
pre-interpreted by the compiler in the light of subsequent changes in tempo
caused by the t statement, or is p3 based strictly on the tempo in effect at
the moment when the instrument is instantiated? In other words, if p3 for an
event is 10, but after five beats the tempo is suddenly and drastically
slowed, will the p3 value received by the instr be increased accordingly by
the compiler?

And finally, a suggestion for the manual: The page describing the t
statement seems to have an error. It says this: "p3, p5, p7,... -- Times in
beats per minute (in non-decreasing order)." That should simply be "Times in
beats," not "Times in beats per minute," shouldn't it? The latter phrase
would appear to be meaningless. The values in p4, p6, p8, ... are in bpm.
The values in p3, p5, p7, ... are simply a raw number of beats.

--JA

Date2010-06-14 17:25
FromAndres Cabrera
Subject[Csnd] Re: tempo from orch
Hi

On Mon, Jun 14, 2010 at 5:14 PM, Jim Aikin  wrote:
>
> Is there a way to affect the playback tempo (the data contained in a t
> statement) from an instrument during performance?
>
> Or is it possible that I've finally discovered something that Csound can't
> do?

It's not that it can't do it, it's that you are misunderstanding what
it's doing =)

When you create a score and set tempo changes, the score is
preprocessed, and new times are calculated for the events from the
tempo values, so what reaches Csound is not a score with tempo
changes, but a score whose times reflect those changes. So you would
have to use different mechanism to the score preprocessor to allow
this, e.g. building some sequencing mechanism in the csound orc, or
build your own sequencer which feeds events using the API.

Maybe blue already does this?

Cheers,
Andrés


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"


Date2010-06-14 17:30
FromSteven Yi
Subject[Csnd] Re: Re: tempo from orch
blue does not do this;  I have to check, but it's graphical tempo
editor either outputs a t-statement or preprocesses the score (I think
the latter).

I think Csound could be modified to make tempo a part of the engine
and at runtime the tempo modifications could be applied, but it would
take a little bit of work. I think the modification would be backwards
compatible.

On Mon, Jun 14, 2010 at 12:25 PM, Andres Cabrera  wrote:
> Hi
>
> On Mon, Jun 14, 2010 at 5:14 PM, Jim Aikin  wrote:
>>
>> Is there a way to affect the playback tempo (the data contained in a t
>> statement) from an instrument during performance?
>>
>> Or is it possible that I've finally discovered something that Csound can't
>> do?
>
> It's not that it can't do it, it's that you are misunderstanding what
> it's doing =)
>
> When you create a score and set tempo changes, the score is
> preprocessed, and new times are calculated for the events from the
> tempo values, so what reaches Csound is not a score with tempo
> changes, but a score whose times reflect those changes. So you would
> have to use different mechanism to the score preprocessor to allow
> this, e.g. building some sequencing mechanism in the csound orc, or
> build your own sequencer which feeds events using the API.
>
> Maybe blue already does this?
>
> Cheers,
> Andrés
>
>
> Send bugs reports to the Sourceforge bug tracker
>            https://sourceforge.net/tracker/?group_id=81968&atid=564599
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"


Date2010-06-14 17:45
FromJim Aikin
Subject[Csnd] Re: tempo from orch

Andres Cabrera wrote:
> 
> It's not that it can't do it, it's that you are misunderstanding what
> it's doing =)
> 
I think I sort of knew what it was doing, in a vague way. So I guess the
answer is, "No, Csound can't do that."

I'm pretty sure I could get an equivalent result by moving my entire piece
into a bunch of event lines in a playback instrument. But it would be
complicated and messy, and would likely result in a loss of precision in the
event start times -- either that, or some really large numbers and untold
hours hunched over a pocket calculator.

One issue, if Csound were modified to allow t statement changes from the
orchestra at run-time, might be the loss of smooth ramping. At present, a t
statement can output a very smooth, gradual tempo change, given a single
pair of p-fields. But if an instr were to send a message saying, "Change
tempo to X," that message would most likely need to cause an instant change
_now_ (whenever "now" happens to be). So you'd have to manage an accelerando
manually using a line envelope or equivalent.

--JA