Synfire 2.0 Preview

268 posts / 0 new
Letzter Beitrag
Bild des Benutzers andre
andre
Offline
Last seen vor 1 Tag 7 Stunden

Oh, and editable keyboard shortcuts, finally. Exportable as HTML so you can print a cheat sheet.

keys.png

Bild des Benutzers blacksun
blacksun
Online
Last seen vor 2 Stunden 2 Minuten

will it be possible to mute a parameter? also if you have a container that has only parameters present, no figures, if you mute it, will it mute those paramter changes?

 

Bild des Benutzers HiEnergy
HiEnergy
Offline
Last seen vor 11 Stunden 23 Minuten

This keeps getting better and better... can't hide my excitement about the upcoming Synfire 2.

Bild des Benutzers andre
andre
Offline
Last seen vor 1 Tag 7 Stunden

will it be possible to mute a parameter?

Not individually, but yes, you can mute a container with any parameters in it and they'll be ignored.

On a general note, in addition to new features, version 2 will unleash a lot of power that was previously present already, but inconvenient to access or difficult to understand.

Bild des Benutzers richardbartlett
richardbartlett
Offline
Last seen vor 4 Monate 3 Wochen

absolutely stellar!

Bild des Benutzers richardbartlett
richardbartlett
Offline
Last seen vor 4 Monate 3 Wochen

amazing

 

Bild des Benutzers richardbartlett
richardbartlett
Offline
Last seen vor 4 Monate 3 Wochen

fantastic

 

Bild des Benutzers richardbartlett
richardbartlett
Offline
Last seen vor 4 Monate 3 Wochen

Superlative! Way beyond wildest expectations! Cannot wait!

Bild des Benutzers Ruchir
Ruchir
Offline
Last seen vor 16 Stunden 32 Minuten

This is excellent Andre.

Bild des Benutzers andre
andre
Offline
Last seen vor 1 Tag 7 Stunden

Now for something completely different: KIM (recursive acronym for "KIM is Music").

I must caution that there will be no KIM IDE (editor, debugger) in 2.0. In the short time frame, we find it impossible to integrate, document and support a new programming language that is not yet mature. With forward chaining rules, semantics, probabilities, constraints, parallelism, recursion and spatial expansion, it is very unlike other scripting languages. An explosion of complexity, great for music but hard to wrap your head around. So this post is just to give you an idea of what's going on under the hood.

Here's a few examples:

kim1.png

The first rule Phrase creates an ABAB pattern with the second round of AB requested to be "alike" the first (similar). The ampersand is like a carriage return that continues processing from the start. Here this humanizes the entire phrase.

Here's another excerpt of a Factory that generates generates elements for melodies:

kim2.png

Legend:

Blue = Term
Green = Variable
Pink = Keyword
% = Probability
* = Transmutation of entire right-hand-side of a rule
[] Constraints
{} Arguments
=> Expansion  (+ sequential, & parallel, | alternative)
>> Block of commands on expansion (top-down)
<< Block of commands after return from expansion (bottom-up)

Basically, KIM can create and/or process containers, phrases and parameters. So in theory it's possible to expand a set of rules to an entire composition and populate the containers with parameters and generated phrases. Such a random song generator would sure be instant fun, at least for a few hours, but the idea has serious limitations. I'll spare the details, but it boils down to a tradeoff between random + meaningless vs. stylish + canned.

To escape the canned music trap, Synfire takes a hunter & gatherer approach. It generates millions of small building blocks that you can assemble music from in a controlled fashion (think LEGO where you 3D-print your own blocks and accessories).

I wish I had more time working on KIM, but it's good enough now to let it do some magic for you and me.

Bild des Benutzers HiEnergy
HiEnergy
Offline
Last seen vor 11 Stunden 23 Minuten

This is so completely mindblowing, I'm missing the right words. KIM is different from every programming language I have used so far.

Looking forward to hearing what the KIM scripting language can do for generating my own material or creating the ever-changing "best of" of my pre-existing phrases.

I can hardly await the first release of Synfire 2.0.

Bild des Benutzers csfigu
csfigu
Offline
Last seen vor 2 Wochen 16 Stunden

Beta release in days:

T-30

;)

 

Bild des Benutzers Ruchir
Ruchir
Offline
Last seen vor 16 Stunden 32 Minuten

If it's a Kitbash approach to music, with KIM smoothing the edges, sounds good to me. I note that it will also permutate the Kitbash components. The key for me though is the ability to manage the data of the song, such that I can go in and change an element, and have Kim ripple it out across the song.

Bild des Benutzers richardbartlett
richardbartlett
Offline
Last seen vor 4 Monate 3 Wochen

Hi Andre

What you have done with 2.0 is simply amazing. I have a feeling that this is going to be a real game changer for everyone that is using Synfire. Please include me in the desire to beta test. I am so grateful for you and your unending effort to improve this wonderful product. There's nothing like Synfire on the market.

Bild des Benutzers spartacus
spartacus
Offline
Last seen vor 1 Monat 3 Wochen

+1 for the Beta test. Thanks

beatmakerleague.com is the best webside for producers and musicians

Its re-coming soon in  september 2021

Bild des Benutzers Hangdog Cat
Hangdog Cat
Offline
Last seen vor 1 Tag 7 Stunden

Likewise...sign me up for the Beta!

Never do more in the morning than you can undo in the afternoon.

Bild des Benutzers F Dixon
F Dixon
Offline
Last seen vor 2 Tage 5 Stunden

lmao sorry Andre I posted about being in the beta when there isnt a beta and now everyone wants to be in the beta.  My bad :)

Bild des Benutzers Hangdog Cat
Hangdog Cat
Offline
Last seen vor 1 Tag 7 Stunden

Yup...you really got my hopes up, and now they are dashed. Dang. :)

But I'm eagerly anticipating the new Synfire, in whatever form.

Never do more in the morning than you can undo in the afternoon.

Bild des Benutzers Dewdman42
Dewdman42
Offline
Last seen vor 4 Monate 3 Wochen

The KIM concept is going to be exciting for a lot of people, including me.  This will really expand the possibilities of Synfire exponentially

5,1 MacPro 12x3.46ghz, 128gb ram, SynfirePro

Bild des Benutzers xhevahir
xhevahir
Offline
Last seen vor 4 Monate 1 Woche

Have you thought about making KIM's source code available? It sounds like a lot of work to maintain.

Bild des Benutzers andre
andre
Offline
Last seen vor 1 Tag 7 Stunden

Some community driven development would be absolutely great (on the long term to do list already), but KIM sources can't be compiled or tested in isolation. It literally lives inside Synfire's data structures. After all the rules-based magic is done, it invokes Synfire functions on a phrase.

For a language to become mature, much thought needs to be spent on naming conventions and how to organize a code base (KIM factories) and optimize it for maximum modularity. This is an evolutionary process that takes time. I've streamlined the thing like five times already and it's still in motion. It's inevitable that KIM will not yet be mature with Synfire 2.0.

It will do mind blowing stuff nevertheless. 

Bild des Benutzers andre
andre
Offline
Last seen vor 1 Tag 7 Stunden

The big picture:

KIM is a kind of "modular synth" that generates parameters and phrases and populates containers. Each module is a KIM Factory that takes other factories for input. In theory, an entire song could be assembled from factories, but that would get deep and confusing very quickly. 

Imagine each factory potentially expands to millions of outputs (based on your settings and its stochastic variables). Then you'd branch into the inputs, each again with millions of outputs, and so forth. For an average song, you'd have more final outputs than there are particles in the universe. This vast combinatorial space is impossible to control with sliders and check boxes in any meaningful way, unless you want to spend the rest of your life navigating a deeply nested user interface.

That's why Synfire encourages you to create lots of smaller building blocks incrementally and assemble them in different ways: Bass lines, chord stabs, arpeggiators, melodies, counterpoint melodies, build-ups, licks, soli, minimalist patterns, etc. Even stuff that doesn't yet have a name.

Although all Synfire users will start with the same factories, everyone will gather their own personal libraries of building blocks that will set their music apart from others.
 

Bild des Benutzers tanders
tanders
Offline
Last seen vor 20 Stunden 58 Minuten

As someone who has been coding in the field of rule-based algorithmic composition for many years, I would very much like to learn more about KIM. I applaud your overall direction to combine algorithmic generation/transformation (in a way that seemingly already implements concepts of musical form), manual selection of resulting building blocks and then controlling the overall result also manually. Very interesting what you shared so far! 

Do you plan to allow users to implement their own building blocks (factories?) and perhaps to already do that in the upcoming version 2.0, regardless how mature KIM already is?

If I remember correctly, Synfire is implemented in Smalltalk, but this language looks like a domain specific language with its own syntax etc., right? Do you plan to share some documentation of this language like a tutorial and/or a reference? 

Again, great to see this development! I recently celebrated my birthday -- this is a bit like a voucher for a nice gift to get a bit later ;-) 

Bild des Benutzers andre
andre
Offline
Last seen vor 1 Tag 7 Stunden

KIM factories are deeply configurable to produce a wide variety of phrases and musical expressions. Generated phrases remember all KIM settings, so each generated phrase pool basically is a factory in itself. This means you can make new factories by re-configuring existing ones, without writing a single line of code. That's what we envisioned for 2.0.

As for coding, there's only rudementary documentation yet and the current IDE runs within our development environment only. You'd also need some deep introductory prose to even get started. We hardly have enough time to complete the new Synfire documentation and videos, so that is really out of the question for 2.0. Let's see how this evolves.

Bild des Benutzers tanders
tanders
Offline
Last seen vor 20 Stunden 58 Minuten

Thanks for your response. We are all looking forward to what is already planned to be included in the update. User-coding support would likely only cater for a small slice of  your user base, so it makes completely sense that this is not a  priority. 

> each generated phrase pool basically is a factory in itself

Wow, that could be very interesting for creating variations etc! 

Bild des Benutzers xhevahir
xhevahir
Offline
Last seen vor 4 Monate 1 Woche

tanders, are you the creator of Strasheela?

Bild des Benutzers ishagshafeeg
ishagshafeeg
Offline
Last seen vor 2 Wochen 3 Tage

Sure. Looking forward for it.

Bild des Benutzers Alpho
Alpho
Offline
Last seen vor 1 Tag 13 Stunden

Organizing instrument tracks.

Is it possible (to make)
1. To combine instrument tracks into a folder track?.
2. And to make (a selection of) tracks invisible?
3. Give instrument tracks their own color?
That would be very helpful when working with large orchestral scores.
As possible in Cubase for example.

 

 

Bild des Benutzers tanders
tanders
Offline
Last seen vor 20 Stunden 58 Minuten

> are you the creator of Strasheela?

Yes, but that software is not maintained anymore, sorry. If you are looking for something similar, I would recommend Cluster Engine by Örjan Sandred. However, this is only something for geeks – not comparable with Synfire. 

    Bild des Benutzers andre
    andre
    Offline
    Last seen vor 1 Tag 7 Stunden

    Organizing instrument tracks ...

    In a way, yes. You'd use containers where you minimize the instruments you're not interested in. So if the string section is doing something important for the narrative, place a container (with a specific color and label) an put all the string phrases in there. 

    The thing is, there's actually no "track" per instrument in Synfire where you'd have phrases over the course of the entire song. That would make it very hard to change things at a higher level. Things would be set in stone early on and that totally defeats the idea of prototyping.

    By the way, Logic X has containers too (not sure if it's still the case), but since it's all static MIDI, moving them around is of very limited use.

    The new 'Overview' page is actually a virtual track sheet, i.e. a different perspective that shows which containers each instrument is influenced by over the course of the song. It is more like a navigation map however. Once you double-click on an object, it will take you to the same place on the 'Containers' page. Using the new '<' and '>' buttons, you can switch back and forth between them.

    Seiten

    Zum Verfassen von Kommentaren bitte Anmelden oder Registrieren.

    Scholarly Lite is a free theme, contributed to the Drupal Community by More than Themes.