szk! | ableton live
19
archive,tag,tag-ableton-live,tag-19,ajax_leftright,page_not_loaded,,select-theme-ver-1.7,wpb-js-composer js-comp-ver-4.3.4,vc_responsive
  • Sort Blog:
  • All
  • Festival
  • Interaction
  • M4L
  • Minimalism
  • Music
  • Newsletter
  • Performance
  • Process
  • Tutorial
pp

Exploring Steve Reich’s Piano Phase

Ten years ago I discovered the Steve Reich’s Piano Phase (1967), and since this moment this piece became for me a huge fascinating source of inspiration and reflexion about minimalism and music perception.

“In Piano Phase, their are two pianists beginning by playing a rapid twelve-note melodic figure over and over again in unison (E4 F4 B4 C5 D5 F4 E4 C5 B4 F4 D5 C5). After a while, one of the pianists begins to play his part slightly faster than the other. When he is playing the second note of the figure at the same time the other pianist is playing the first note, the two pianists play at the same tempo again. They are therefore playing notes at exactly the same time, but they are not the same notes as they were at the start of the piece. The process is repeated.”

Working recently on Max For Live devices I included the Steve Reich notes’s sequence into one of my patch dedicated to create midi loops. Here is a demonstration of how the device works and allows to explore the infinite Steve Reich’s piece sonic possibilities. If you never heard about Piano Phase, go watch and listen to the videos, hope it could become a great discover and inspiration for you too.

pp

Exploring Piano Phase with the M4L Midi Loop Drawer device

Live performances on the web :

Special for this performance with dancers (Anne Teresa De Keersmaeker & Michele Anne de Mey)

Online ressources to explore the piece :

http://www.pianophase.com/

http://dangerousminds.net/comments/avant_garde_app_visualizes_steve_reichs_piano_phase

More about my device :

szk.MIDILOOPDRAWER.amxd

patchtut32

How to remote volume using dB values in Max For Live ? DB conversion to 0-to-1 linear value

I had this issue when creating a M4L patch to remote live set track’s volume. Troubleshooting of course, so it was a good occasion to speak a little more about this no-tricky-but-not-so-easy issue. Maybe useful ?

Observe / Remote volume track

You can check this controling live with Max tutorial and use this kind of patch to observe and set back a track volume :

The Live.Observer and Live.Object work with linear values between 0. and 1. My issue was to convert these values to « understandable » dB values for monitoring and setting back purposes.

Empirical observation

dB-by-dB variations of track volume, from -69 to +6 dB returned a step-by-step set of linear values from 0. to 1. and gave a function linear = f (dB)

Polynomial fit

Values of linear = f (dB) are used to fit different high-degrees polynomials. I just limited the use to 2nd and 3rd order polynomials to improve the CPU usage, considering that the resulting maximum ∆dB error nearly ± 0.5 dB is not so bad for my live sessions needs.

Polynomials are given below :

# 2nd degree

y = 2.07201247*(x*x)/10000 + 2.57503387*(x)/100 + 8.342259079/10

# 3rd degree

y = 2.027132923*(x*x*x)/1000000 + 3.987653083*(x*x)/10000 + 3.002900816*(x)/100 + 8.422843694/10

Plots

Figure below indicates the different fit compared to the empirical behaviour

# black : empirical monitored values | linear = f(dB)

# strawberry : 2nd degree polynomial | linear = p2(dB)

# orange : 3rd degree polynomial | linear = p3(dB)

dev71

Data

Values for dB and linear given by the Live.Observer are downloadable below in .txt format for your own calculations if you need it.

Internet discussions and ressources

I found useful informations about this topic at these different places. Check it or die.

https://cycling74.com/forums/topic/linear-to-gui-live-value-to-understandable-db-or-amplitude/
https://forum.ableton.com/viewtopic.php?f=1&t=182375&p=1418659&hilit=lemur+right+expression
https://cycling74.com/forums/topic/db-to-gain-to-db/

# Note

This post is dedicated to a quick discussion about the db-to-linear conversion. You can find related M4L patches and devices that I created here :

szk.DB2LINEAR.amxd
szk.PITCH2LEVEL.amxd