The Harmonizer: Communal Synthesizer via Wifi-LAN and Mobmuplat
The Harmonizer: Communal Synthesizer via Wifi-LAN and Mobmuplat
The Harmonizer
The Harmonizer is a single or multi-player mini-moog synthesizer played over a shared LAN.
(credits: The original "minimoog" patch is used by permission from Jaime E. Oliver La Rosa at the the New York University, Music Department and NYU Waverly Labs (Spring 2014) and can be found at: http://nyu-waverlylabs.org/wp-content/uploads/2014/01/minimoog.zip)
One or more players can play the instrument with each player contributing to one or more copies of the synthesizer (via the app installed on each handheld) depending on whether they opt to play "player 1" or "player 2".
By default, all users are "player 1" so any changes to their app, ex. changing a parameter, playing a note, etc., goes to all other players playing "player 1".
If a user is "player 2", then their notes, controls, mod-wheel etc. are all still routed to the network, i.e. to all "player 1"'s, but they hear no sound on their own machine.
There are 2 pages in The Harmonizer. (See screenshots below.)
PAGE 1:
PAGE 2:
The first page of the app contains all controls operating on a (more or less) "meta"-level for the player: in the following order (reading top-left to bottom-right):
pl2: if selected (toggled) the user is choosing to play "player 2"
mot(ion): triggers system motion controls of the osc1,2&3 levels (volume) based on the accelerometer inside the smartphone (i.e as you twist and turn the handheld in your hand the 3 oscs' volumes change)
rate: how frequently should the handheld update its accelerometer data
slimit: by how much should the app slow down sending the (continuous) accelerometer data over the network
presets: from 1 to 5 preset "save-slots" to record and reload the Grid 1 and Grid 2 settings that are currently active
S: save the current Grid1 and Grid2 selections to the current "save slot"
L: load the currently selected preset into both Grids
">>": go the the next page (page 2 has the reverse, a "<<" button)
Grid 1: the settings, in 4 banks of 3 parameters per-, which are labeled top-down equating to left-right
Grid 2: the same as Grid 1, but with a different set of parameters
The second page comprises:
the 2-octave keyboard (lower notes on top),
a 9-button octave grid (which can go either up or down 4 octaves),
a quick-preset grid which loads one of the currently saved 5 presets
the "<<" button mentioned above, and
both a mod and pitch-bend wheel (as labeled).
SETUP:
All players install Mobmuplat;
Receive The Harmonizer (in the form of a .zip file either via download or thru email, etc.)
When on your smartphone, click on the zip file, for example, as an attachment in an email.
Both android and iphone will recognize (unless you have previously set a default behavior for .zip files) the zip file and ask if you would like to open it in Mobmuplat. Do so.
When you open Mobmuplat, you will be presented with a list of names, if in android click the 3 dots in the top right of the window and on the settings window , click "Network" Or on an iphone click "Network" just below the name list;
On the Network tab, click "LANDINI".
Switch "LANDINI" from "off" to "on".
(this will allow you to send your control data over your local area network with anyone else who is on that same LAN).
From that window, click "Documents".
You will be presented again, with the previous list of names.
Scroll down to "TheHarmonizer" and click on it.
The app will open to Page 1 as described and shown in the image above.
Enjoy with Or without Friends, Loved, Ones, or just folks who want to know what you mean "is possible" with Pure Data )!
Theories of Thought on the Matter
My opinion is:
While competition could begin over "who controls" the song, in not too great a deal of time, players will see first hand, that it is better (at least in this case) to work together than against one another.
If any form of competition emerges in the game, for instance loading a preset when a another player was working on a tune or musical idea, the Overall playablilty and gratitude-level will wain.
However, on the other hand, if players see the many, many ways one can constructively collaborate I think the rewards will be far more measurable than the costs, for instance, one player plays notes while the other player plays the controls.
p.s. my thinking is:
since you can play solo: it will be fun to create cool presets when alone then throw them into the mix once you start to play together. (Has sort of a card collecting fee ).
Afterward:
This was just too easy Not to do.
It conjoins many aspects of pure data together (I have been working on lately (afterward: i did this app a long time ago but for some reason and am only now thinking to share it) both logistical and procedural into a single whole.
I think it does both quite well, as well as, offer the user an opportunity to consider or perhaps even wonder: What is 'possible'?"
Always share. Life is just too damn short not to.
Love only.
-svanya
Artnet_DMX driven media server
@aartwouter Hello again Aart...... we met on the VPT7 forum.
VPT7 does have a dmx in/out module available on H.C. Giljes site....... https://hcgilje.wordpress.com/vpt/ but you need an Enttec Pro dmx interface. True, it's not artnet. Maybe that would help, but if you are still having trouble with your video then maybe it will not? Have you already tried a native .mov movie file?
You could try TouchDesigner for a ready made solution. It does most video stuff (quite powerful), and has a chop module "dmx in" which can receive from artnet devices. For non-commercial use it is free....... http://www.derivative.ca/
If you have ever used "Blender" you will understand it quickly.
Pure data is fairly similar to Max, which VPT7 was built on, and there are some very extensive patches already developed for video here......... https://puredata.info/downloads/extended-view-toolkit That toolkit also contains an ArtNet sender that is built with standard Pd objects, so reverse engineering a receiver would be fairly trivial.
As you will see at the top of that page, you will need and older version of Pure Data for it to run well........ You will need a 32-bit version of Pd.....
((extended-view-toolkit needs 32bit Pd and Gem for what you need, and nearly works (much of it does) with http://puredata.info/downloads/pd-extended .......BUT it was built for Pd Vanilla, and tested against Pd 0.43 vanilla with Gem added in. Adding Gem in can obviously be done, I will look for a link))
The video capabilities of Pure Data with Gem are being forgotten at the moment as Pure Data goes over to 64bit (Gem is only reliably available in 32bit). Gem uses OpenGl as does VPT7.
You might find the learning curve a bit steep with Pure Data. I would definitely look at TouchDesigner and see if it will do what you need, although if you need to buy a commercial license it is not very cheap.
If you decide to upload your video (or a partial chunk of it) and a copy of your VPT7 folder with the effects set I will try it on my machines and see if I am having the same problems as you. I have an Enttec DMX Pro somewhere as well. Upload it to a real transfer site though...... it would probably put this forum out of action for a day or two. Open a chat with me on this forum to send me the link.
David.
Ewolverine 4 U
New version 6.2
- added TARGET DRIVE
(you need [timbreID] !)
- changed designations of control assemblies to fit better with their functionality
- improved GUI functions for mouse control
- added display that shows the distance of evolved sounds to the target sample
Now you can use Ewolverine to re-synthesize a sample with any synth you own. Of course not every synth is able to convincingly synthesize any sound, but you can now get as close as possible with it. Just loop back the audio of your DAW into PureData using a virtual audio cable and send MIDI from PureData to your DAW using a virtual MIDI cable and let Ewolverine do the rest!
The re-synthesizing of samples using Ewolverine can take VERY long and I don't guarantee you that it works good, but as it is a free patch, see it as a Bonus!
EWOLVERINE v.6.2 by Henry Dalcke.pd
BEST POSSIBLE BREEDING FUNCTIONALITY NOW ENSURED!
Plans:
- storage for user SPLICER pattern
- 4 more random sounds per set (A/B) to select from (to save time)
- discontinuous MIDI messaging interrupted by assignment switching CC events to enable breeding especially for FMheaven VST
- possibility to interpolate between new random population sounds to smoothly re-direct the modwheel-morphing path while morphing
PdModular
So I'm working on a project right now and I'm interested in getting some input on the project as I'd like to open source it when I finish. Its a similar idea to the Nord modular but implemented in PD, Python and C. I will try to keep this up to date as the project continues and if there is interest I would be happy to upload some of the code to git
Parts:
Python GUI for building synthesizer utilizing pyata and tkinter
PD objects for each module(VCO, VCA, ENV, MIX, VCF, MIDI, OUTPUT)
Raspberry Pi Cluster(1 conductor and 4 voices) connected via an ethernet switch a d voices ran through a passive mixer
C program for converting midi to OSC messages and sending them to each voice for polyphony as well as uploading your patch of choice
The main idea is that you build a synthesizer patch in the GUI which runs on the conductor which is converted to a PD patch. This patch is then chosen on the conductor raspberry pi when in play mode and is distributed to the 4 voice raspberry pi. All pi's are connected through a switch. This signal for each voice is sent through a passive 4 channel stereo mixer which is sent to a speaker or headphones. A midi controller is plugged into the conductor via usb and its knobs/sliders can be mapped to slider objects within the patch
Adding Modules:
A module consists of a pd object and a python array that represents the inputs and outputs and generates the module object within the application. This will allow for the simple addition of new modules as long as they adhere to the input and output specifications. I hope to add substantially more modules once I get the minimal set needed to build a basic synthesizer.
Would people be interested in something like this at all?
help synthesis
@alexandros
[expr] does read the "chapo_spect' table, but always at index 127,
we are agree , ( I said it does not read the table because it only read one value, whereas the table has 128 value... so there is a mistake somewhere).
edit : the synthesis is suppose to be one voice of "28 voices of additive synthesis with spectral envelope applied to each partial ...
@whale-av : strange !
I will ask to the mailing list to have information on the desired synthesis
thanks again
help synthesis
Hello,
let me try again , (I removed all the details) .
I have some problems with the synthesis name "chapo" inside Jupiter patch.
- capture of the main window ( a copy)
- capture of the abstraction {chapo]
I don't get the algorithm on the left side of the main window ;
neither the synthesis. I see additive synthesis but their is this table named 'chapo_spect'..
I copied this chapo part with the depedencies there :
http://www2.univ-mlv.fr/~larrieu/jupiter/share-chapo.zip
( a text file describe some problems, i have no sound)
the original patch of Jupiter is there (PDRP project ) : http://musicweb.ucsd.edu/~mpuckette/pdrp/latest/
edit : it's possible that an an error is present inside the source patch... and so in my copy
thank you,
Noob needs to build an oscilloscope
Hello everyone.
Im polishing my PD skills and reading a lot about synthesis i stumbled upon additive synthesis and im making my patch to build waveforms using sine waves with this method of synthesis.
The problem i have is i found the default oscilloscope in PD not very good and since im new at PD i was wondering if anyone had the time to explain how to build a decent oscilloscope to make sure my additive synthesis methods are correct.
EFFICIENT TECHNIQUES FOR MODIFYING AUDIO PLAYBACK RATES
@slur said:
not realy
in granular synthesis you change the playbackrate of a small block and change the start position
These aren't really requirements for granular synthesis, though; they're just some of the many parameters that can be manipulated. Granular synthesis is pretty flexible and open-ended. This looks to me like some kind of granular time-stretching.
Miller Puckette's book The Theory and Technique of Electronic Music
2randal: this one - Dodge, Charles and Thomas A. Jerse. Computer Music: synthesis, compsition and performance. New York: Schirmer Books, 1985. or just now i found this - http://books.google.com/books?id=_W9Ek2LmPNMC&printsec=frontcover&dq=Sound+Synthesis&hl=cs&sig=sFnEm6IeSKyOGJjvulwz5J4NLP0
Real time pitch shift
Hello,
Not sure about the real-time aspect (live unpredicable streaming or straight from a file that you can read let's say 20ms in advance?), but there is some hints in a beginning chapter of the P. Cook book, Real Sound Synthesis for Interactive Applications. The chapter is about wavetable synthesis if my memory is good enough ...
See : http://www.amazon.com/exec/obidos/tg/detail/-/1568811683/qid=108853467 0/sr=1-1/ref=sr_1_1/104-8251597-6652725?v=glance&s=books