Jump to content


Photo

New Tool (3.0): Grid Pie


  • Please log in to reply
84 replies to this topic

#1 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 08 November 2010 - 17:39

Grid Pie
Renoise cut and pastry.


Posted Image

Conceived, developed and launched at Music Hackday Montreal 2011.

About the hack:
Renoise is a sophisticated music sequencer and audio processing application with a mod tracker interface. One of the new trends in our community is the concept of a meta-interface. In essence, users use the Lua API to transform Renoise into something else, hide the Renoise window, and work with hardware interfaces connected to their own scripts.

Three current examples:


Grid Pie is "yet another meta interface". It turns Renoise into a live performance audio recombination machine.

Download it here: http://tools.renoise.../tools/grid-pie

Edited by Conner_Bw, 27 June 2014 - 21:16.

  • Djeroek, D.A.T., kaneel and 2 others like this

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#2 danoise

danoise

    Probably More God or Borg Than Human Member

  • Renoise Team
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6873 posts
  • Gender:Male
  • Location:Berlin
  • Interests:wildlife + urban trekking

Posted 08 November 2010 - 18:14

Nice one.

I've been working with a similar concept for basic clip-like functionality. Could probably even be combined with this approach!
So, do you imagine that the Grid is organized into 4 vertical columns, with each column representing a choice among 4 options?

Tracking with Stuff. API wishlist | Soundcloud


#3 kazakore

kazakore

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6140 posts
  • Gender:Male

Posted 08 November 2010 - 18:16

Very similar to the idea I proposed when the possibility of scripting was first announced. Anything that makes live more fun, easy or interesting is worth exploring in my book :)

#4 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 08 November 2010 - 18:37

I've been working with a similar concept for basic clip-like functionality. Could probably even be combined with this approach!
So, do you imagine that the Grid is organized into 4 vertical columns, with each column representing a choice among 4 options?


I was thinking this could be an option.

What I envision is having up to 16 tracks playing at once (4 x 4).

The copy/delete mechanism would use FIFO; move the track in the first available slot.

What remains nebulous is if I should copy the DSP chains too, dunno if this would work, this is where your quoted idea makes more sense.

Hence the tard, as this could simply be done using the scopes...

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#5 s-n-s

s-n-s

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2029 posts
  • Gender:Male

Posted 10 November 2010 - 21:22

this is a nice idea

Subbase - Danish Dark DnB


#6 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 13 November 2010 - 18:19

It turns out I don't have time to work on this, after all.

On the TODO list.

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#7 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 12 September 2011 - 14:57

First, a PSA:

http://www.youtube.com/watch?v=T549VoLca_Q

I'm convinced, so the project is renamed: Grid Pie.

Translated to french: Grid Tarte, twice removed.

I will be working on this idea during Music Hackday Montreal. I will spend 24 hours on it.

To be inspired by:

http://www.youtube.com/watch?v=lpgpwyNytbw

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#8 danoise

danoise

    Probably More God or Borg Than Human Member

  • Renoise Team
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6873 posts
  • Gender:Male
  • Location:Berlin
  • Interests:wildlife + urban trekking

Posted 12 September 2011 - 18:11

Pattern 1 is 80 lines
Pattern 2 is 40 lines
Pattern 3 is 13 lines


Here is some code to figure out the resulting pattern length (lowest common multiplier)
Hint: those tracks above would result in a pattern with 1040 lines...IOW, not an optimal fit.

[lua]

-- greatest common divisor
function gcd(m,n)
while n ~= 0 do
local q = m
m = n
n = q % n
end
return m
end

-- least common multiplier (2 args)
function lcm(m,n)
return ( m ~= 0 and n ~= 0 ) and m * n / gcd( m, n ) or 0
end

-- find least common multiplier with N args
function least_common(...)
local cm = arg[1]
for i=1,#arg-1,1 do
cm = lcm(cm,arg[i+1])
end
return cm
end

-- the following will output "1040"
print(least_common(80,40,13))
[/lua]
  • Conner_Bw likes this

Tracking with Stuff. API wishlist | Soundcloud


#9 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 25 September 2011 - 18:39

Grid pie has arrived, Check the first post.

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#10 Dr. Drips

Dr. Drips

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 1418 posts
  • Gender:Male
  • Location:Groningen, the Netherlands

Posted 25 September 2011 - 19:30

I loaded the beat slicing tutorial to test Grid Pie but it crashes with that song.
maybe because there are to few tracks?
"It's nice to be important, but it's more important to be nice"

CPU:Intel Core i5 3570K, OS:Windows 7 (64 bit), mem:16 GB, video:NVIDIA GeForce GTX 670 DCII 2GB
CPU:Intel Atom Z3740, OS:Windows 8.1 (32 bit), mem:2 GB

Soundcard: Focusrite Scarlett 2I2

#11 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 26 September 2011 - 02:27

I loaded the beat slicing tutorial to test Grid Pie but it crashes with that song.
maybe because there are to few tracks?


Can you send me the steps to reproduce, or some log?

Cheers.

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#12 Dr. Drips

Dr. Drips

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 1418 posts
  • Gender:Male
  • Location:Groningen, the Netherlands

Posted 26 September 2011 - 17:48

I can't reproduce it anymore so it seems fine.
It was as simple as: open renoise>drag grid pie onto it>load beat slice tutorial song>execute grid pie.
great tool btw, lot's of potential.

anyway here is what my log said about the incident:
Error Message: 'C:\Users\Paul\AppData\Roaming\Renoise\V2.7.2\Scripts\Tools\com.renoise.GridPie.xrnx\' failed to execute in one of its menu entry functions.
Error Message: Please contact the author (Dac Chartrand [dac@renoise.com]) for assistance...
Error Message: std::logic_error: 'ViewBuilder: invalid value for valuebox: '2'. value must be [1 - 1].'
Error Message: stack traceback:
Error Message: 	[C]: in function 'valuebox'
Error Message: 	main.lua:237: in function 'build_interface'
Error Message: 	main.lua:326: in function <main.lua:321>

"It's nice to be important, but it's more important to be nice"

CPU:Intel Core i5 3570K, OS:Windows 7 (64 bit), mem:16 GB, video:NVIDIA GeForce GTX 670 DCII 2GB
CPU:Intel Atom Z3740, OS:Windows 8.1 (32 bit), mem:2 GB

Soundcard: Focusrite Scarlett 2I2

#13 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 26 September 2011 - 20:44

anyway here is what my log said about the incident:


OK, I figured out the bug. File in first post (v0.2).

great tool btw, lot's of potential.


Thanks!

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#14 D.A.T.

D.A.T.

    Member

  • Normal Members
  • PipPip
  • 68 posts

Posted 28 September 2011 - 23:54

thanks for this one its great idea! just the 4x4 is very small 8x8 and playable with launchpad would be great i think it would be also helpful to jump 4 positions (or 8 in an 8x8 matrix)on the x and y axis - this really have potential!!

#15 kaneel

kaneel

    Local Chief Member

  • Normal Members
  • PipPipPipPipPip
  • 204 posts
  • Gender:Male
  • Location:London, UK
  • Interests:¯\_(ツ)_/¯

Posted 29 September 2011 - 08:05

this is a good idea!
And don't forget to check and comment The Baguetter: A perfect tool for Baguettist in their Baguettery.

#16 dr4g0n76

dr4g0n76

    Advanced Member

  • Normal Members
  • PipPipPip
  • 87 posts

Posted 29 September 2011 - 10:35

thanks for this one its great idea! just the 4x4 is very small 8x8 and playable with launchpad would be great i think it would be also helpful to jump 4 positions (or 8 in an 8x8 matrix)on the x and y axis - this really have potential!!


Luckily the programmer did a very intelligent job here:

Just look at the source code in the main.lua script part (and change the marked lines to your need),
then restart renoise:


require "toolbox"

--[[ Globals ]]--

local my_interface = nil
local vb = nil
local gridpie_idx = nil
local x_pos = 1
local y_pos = 1


--[[ Future ]]--

local matrix_width = 8
local matrix_height = 8
local matrix_cells = table.create{}


local matrix_view = nil

Attached Images

  • GridPie.jpg

  • D.A.T. likes this

#17 kaneel

kaneel

    Local Chief Member

  • Normal Members
  • PipPipPipPipPip
  • 204 posts
  • Gender:Male
  • Location:London, UK
  • Interests:¯\_(ツ)_/¯

Posted 29 September 2011 - 11:46

Well, I guess this part of the code could become

local matrix_width = table.count(renoise().song.tracks) -- add an observable event on track addition
local matrix_height = anyNumberThatCouldBeComingFromAValueBox

But that's just my 2 noob cents.
And don't forget to check and comment The Baguetter: A perfect tool for Baguettist in their Baguettery.

#18 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 29 September 2011 - 14:21

Well, I guess this part of the code could become [...]


I've had problems making dynamic grids in the past. Too many Lua errors last time I tried. I'm sure it's possible, somehow, but I won't be the one to do it. Patches welcome. :)

Luckily the programmer did a very intelligent job here:


Hey, thanks. :)

What I will do for the next version is a menu. Something like

* Tools -> Grid Pie -> 4 x 4...
* Tools -> Grid Pie -> 8 x 8...
* Tools -> Grid Pie -> Custom...

But like you said, it's possible now by looking at the Lua.

The most important hurdle to tackle is the MIDI mapping stuff. It's pretty straightforward. I just didn't have time (or a controller to test with) during the Music Hack Day. The stubs are already in place. It's just a matter of finding more free time. Patchers look near line ~435 for:

--------------------------------------------------------------------------------
-- MIDI Mappings
--------------------------------------------------------------------------------

renoise.tool():add_midi_mapping{
  name = "Grid Pie:X Axis",
  invoke = function(message)
    -- TODO
    -- vb.views.gp_x.value = FOO
  end
}

renoise.tool():add_midi_mapping{
  name = "Grid Pie:Y Axis",
  invoke = function(message)
    -- TODO
    -- vb.views.gp_x.value = BAR
  end
}

for x = 1, matrix_width do
  for y = 1, matrix_height do
    renoise.tool():add_midi_mapping{
      name = "Grid Pie:Slice " .. x .. "," .. y,
      invoke = function(message)
        -- TODO
        -- toggler(x, y)
      end
    }
  end
end


(PS: I added the functions/procedures that will need to be called, not in code as I type this)

Inspire yourself with the code snippet from: this example.

I won't have time to mess around with this script for a couple of weeks. But that doesn't mean you guys/girls can't have a go at it. Post your hacks?

Edited by Conner_Bw, 03 October 2011 - 05:23.
Had time after all.

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#19 s-n-s

s-n-s

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2029 posts
  • Gender:Male

Posted 30 September 2011 - 19:01

gonna check this out,does it work with the launchpad?that would be super sweet,great job conner

Subbase - Danish Dark DnB


#20 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 03 October 2011 - 03:51

Grid Pie 0.3 available as attachement in first post.

Here's a video where I test/demo it with an AKAI LPD8

http://www.youtube.com/watch?v=5eZlF_XsGk4

Cheers.
  • D.A.T. and kaneel like this

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#21 kaneel

kaneel

    Local Chief Member

  • Normal Members
  • PipPipPipPipPip
  • 204 posts
  • Gender:Male
  • Location:London, UK
  • Interests:¯\_(ツ)_/¯

Posted 03 October 2011 - 11:39

It looks like dope from where I'm standing.
And don't forget to check and comment The Baguetter: A perfect tool for Baguettist in their Baguettery.

#22 Djeroek

Djeroek

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6763 posts
  • Gender:Male
  • Location:Borneo

Posted 03 October 2011 - 13:57

cool, I have one of those Akai's, going to jam around with it using your tool B)

#23 f+d+k

f+d+k

    Big Super GrandMasta Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 716 posts
  • Gender:Not Telling
  • Location:On Land
  • Interests:고추장

Posted 03 October 2011 - 22:34

Awesome, thanks!

#24 Conner_Bw

Conner_Bw

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7167 posts
  • Gender:Male
  • Location:Montreal, Quebec, Canada

Posted 04 October 2011 - 16:48

Grid Pie 0.4. released on the Tools page:

http://tools.renoise.../tools/grid-pie

cpu Lenovo X220, Intel i7-2640M @ 2.80GHz ×4 os Windows 10 / Ubuntu 16.04 LTS
My Homepage » : My Renoise Tools » : Normalize Your Sig » : MBC Archives »


#25 rhowaldt

rhowaldt

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2259 posts
  • Gender:Male
  • Location:The Hague, Netherlands

Posted 04 October 2011 - 17:16

ok if nobody is going to link it, i will: http://createdigital...ble-music-tool/

kudos Conner!

specs: [cpu] AMD Turion64 X2 TL-56 1.80 Ghz [ram] 2Gb DDR2 [audio] Realtek HD [os] Win7 x86
gear: cheap-ass no-functions-whatsoever midi-keyboard, Zoom H4 recorder, MeeBlip
home: http://www.roaldblijleven.net (forever under construction)
renoise: http://roald.exul.nl...oise/cheatsheet
music: http://soundcloud.com/rhowaldt