If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Portamento
6 posts
• Page 1 of 1
Portamento
Please could someone explain how portamento works? I understand portamento is the polyphonic version of glide or slide, where the pitch of a tone is approached from the last played tone's pitch. But how is it done when,say, you play a 5 tone chord, then a 4 tone chord and, while holding it, you add another two notes. This is just one example to illustrate the ambiguity in what is the "previous note" in polyphony.
Is there a standard algo that tells you for each new note where to slide from based on the key pressing history? Some paper where this is explained?
Is there a standard algo that tells you for each new note where to slide from based on the key pressing history? Some paper where this is explained?
-
martinvicanek - Posts: 1328
- Joined: Sat Jun 22, 2013 8:28 pm
Re: Portamento
A very interesting question Martin!
I didn’t find any authoritative information on poly Portamento but here is a discussion I found interesting:
https://www.gearslutz.com/board/electro ... mento.html
It seems that the terms Portamento, Glide, Slide and slur are generally interchangeable too.
Monophonic glide is easy and probably the most common, but the algorithms used for poly glide seem to vary from designer to designer.
There is also the concept of “intelligent” Portamento (as discussed in the link above). This would mean that if you play a triad chord in C then the same chord in G, the C voice would glide up to G, the E voice to B and the G voice up to D.
It might help to think about real-world instruments that can achieve this. For example, a violin or a pedal steel guitar. In these you could say that each string is akin to an oscillator or voice. So the algorithm to simulate that would hold a memory of the pitch for a poly channel and when the channel was opened again it would slide from the previous pitch to the new one. However, what would be the previous pitch of a new channel? One way around this is to limit the polyphony to say 4 or 6 voices, but without intelligence it would be difficult for the player to predict what would happen.
Here’s a discussion about emulating the glide of a pedal steel guitar:
https://www.harmonycentral.com/forum/fo ... 18/344683-
I find it a very complex issue and if you or anyone else can add information I’d be very interested.
Cheers
Spogg
I didn’t find any authoritative information on poly Portamento but here is a discussion I found interesting:
https://www.gearslutz.com/board/electro ... mento.html
It seems that the terms Portamento, Glide, Slide and slur are generally interchangeable too.
Monophonic glide is easy and probably the most common, but the algorithms used for poly glide seem to vary from designer to designer.
There is also the concept of “intelligent” Portamento (as discussed in the link above). This would mean that if you play a triad chord in C then the same chord in G, the C voice would glide up to G, the E voice to B and the G voice up to D.
It might help to think about real-world instruments that can achieve this. For example, a violin or a pedal steel guitar. In these you could say that each string is akin to an oscillator or voice. So the algorithm to simulate that would hold a memory of the pitch for a poly channel and when the channel was opened again it would slide from the previous pitch to the new one. However, what would be the previous pitch of a new channel? One way around this is to limit the polyphony to say 4 or 6 voices, but without intelligence it would be difficult for the player to predict what would happen.
Here’s a discussion about emulating the glide of a pedal steel guitar:
https://www.harmonycentral.com/forum/fo ... 18/344683-
I find it a very complex issue and if you or anyone else can add information I’d be very interested.
Cheers
Spogg
-
Spogg - Posts: 3358
- Joined: Thu Nov 20, 2014 4:24 pm
- Location: Birmingham, England
Re: Portamento
When I was designing my synth I just took cues of how others do it. When you hold many notes it remembers the last key you pressed (even if you press them at the same time the midi note on information is sequential) and glides from that one to the next. I used the midi mono float output to get the last pitch and I sample and hold it.
- adamszabo
- Posts: 667
- Joined: Sun Jul 11, 2010 7:21 am
Re: Portamento
I was thinking in that direction, too,adamszabo wrote:When you hold many notes it remembers the last key you pressed (even if you press them at the same time the midi note on information is sequential) and glides from that one to the next.
Don't you get green timing issues?I used the midi mono float output to get the last pitch and I sample and hold it.
-
martinvicanek - Posts: 1328
- Joined: Sat Jun 22, 2013 8:28 pm
Re: Portamento
Portamento is not the polyphonic version of glide. It may often be used in a polyphonic synth, but that's another story.
Portamento was invented in classical orchestrations. More precisely to define a technique for a singer. In classic orchestral definitions of musical terms, you can find:
There is no mentioning of mulitple (aka polyphonic) notes. And it describes it as a "mild glissando". So what is a glissando?
This means that, while glissando is basically a linear transfer from one note to another (say, C to E), portamento is an "expressive effect" reached through a "mild glissando". Instead of a linear approach, portamento is meant more as a stylizing of an otherwise boring note. In effect, portamento is non-linear (if you will, say it's a short glissando to a then held note). Portamento would already reach and hold E, when glissando is maybe at D
While glissando is meant to slide or glide, protamento is meant to carry a note. For example, a synthetic kick drum based on a sine oscillator, uses portamento over a range of two, three or even more ocatves to create a transient that is followed by a straight deep note.
Maybe these videos can further express the difference.
https://youtu.be/OyDAh2sUl6U
https://youtu.be/VzUABTP0pvA
To summarize, portamento is an exponential glide to the significant note. It has nothing to do with polyphony. It is up to you to support multiple notes, but that still is one portamento per note.
Portamento was invented in classical orchestrations. More precisely to define a technique for a singer. In classic orchestral definitions of musical terms, you can find:
Portamento - A mild glissando between two notes for an expressive effect.
There is no mentioning of mulitple (aka polyphonic) notes. And it describes it as a "mild glissando". So what is a glissando?
Glissando - Sliding between two notes.
This means that, while glissando is basically a linear transfer from one note to another (say, C to E), portamento is an "expressive effect" reached through a "mild glissando". Instead of a linear approach, portamento is meant more as a stylizing of an otherwise boring note. In effect, portamento is non-linear (if you will, say it's a short glissando to a then held note). Portamento would already reach and hold E, when glissando is maybe at D
While glissando is meant to slide or glide, protamento is meant to carry a note. For example, a synthetic kick drum based on a sine oscillator, uses portamento over a range of two, three or even more ocatves to create a transient that is followed by a straight deep note.
Maybe these videos can further express the difference.
https://youtu.be/OyDAh2sUl6U
https://youtu.be/VzUABTP0pvA
To summarize, portamento is an exponential glide to the significant note. It has nothing to do with polyphony. It is up to you to support multiple notes, but that still is one portamento per note.
"There lies the dog buried" (German saying translated literally)
- tulamide
- Posts: 2714
- Joined: Sat Jun 21, 2014 2:48 pm
- Location: Germany
Re: Portamento
Excellent info tulamide.
I would take issue with one point only; that it doesn’t have to be exponential.
In the early days of analogue synths it was achieved using an R-C type of slugging filter, and that was always exponential and became the classic synth glide. But you can have linear and/or fixed rate or fixed time too.
Cheers
Spogg
I would take issue with one point only; that it doesn’t have to be exponential.
In the early days of analogue synths it was achieved using an R-C type of slugging filter, and that was always exponential and became the classic synth glide. But you can have linear and/or fixed rate or fixed time too.
Cheers
Spogg
-
Spogg - Posts: 3358
- Joined: Thu Nov 20, 2014 4:24 pm
- Location: Birmingham, England
6 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 35 guests