Which plugin idea should I develop?

DSP, Plugin and Host development discussion.
RELATED
PRODUCTS

Post

aciddose wrote:some sort of quantum atomic extradimentional computer of some sort.
when you cut into the future, the present leaks through :hihi:
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Post

when you cut into the future, the present leaks through :hihi:
Or into the "past" : (quoted from https://en.wikipedia.org/wiki/Zecharia_Sitchin )
William Irwin Thompson comments on what he calls Sitchin's 'literalism':

What Sitchin sees is what he needs for his hypothesis. So figure 15 on page 40 is radiation therapy, and figure 71 on page 136 is a god inside a rocket-shaped chamber. If these are gods, why are they stuck with our cheap B movie technology of rockets, microphones, space-suits, and radiation therapy? If they are gods, then why can't they have some really divine technology such as intradimensional worm-hole travel, antigravity, starlight propulsion, or black hole bounce rematerializations? Sitchin has constructed what appears to be a convincing argument, but when he gets close to single images on ancient tablets, he falls back into the literalism of "Here is an image of the gods in rockets." Suddenly, ancient Sumer is made to look like the movie set for Destination Moon. Erich Von Däniken's potboiler Chariots of the Gods? has the same problem. Nazca plains in Peru is turned into a World War II landing strip. The gods can cross galactic distances, but by the time they get to Peru, their spaceships are imagined as World War II prop jobs that need an enormous landing strip. This literalization of the imagination doesn't make any sense, but every time it doesn't, you hear Sitchin say "There can be no doubt, but..."
~stratum~

Post

stratum wrote:Or into the "past"
ancient.jpg
SLH - Yes, I am a woman, deal with it.

Post

looks better than terminator by arnold s.:)
~stratum~

Post

Vertion wrote:aciddose,

You are on the right track, I don't think it's nearly as massive an undertaking as you think.. it's an arrangement of simple concepts. I recommend you look into the work of Kenneth Stanley. Including looking into creating a CNN/CPPNs to do some of this.. I'm not talking about the propaganda machine.. I mean compositional neural networks. Here are some links about it:
Yeah... I've seen much of this stuff already. Unfortunately these systems are still ridiculously primitive when you look at the results produced. The issue in my opinion is the algorithm/generator itself is far too limited although justifiably so of course. The reason the complexity of the generator is limited is due to the random nature of the results produced by randomly evolved networks. "Garbage-in, garbage-out."

If you have a very simple generator with few parameters in limited ranges, you can ensure the result no matter how random is limited to a "sane" range. Unfortunately this means all the results are merely minor variations of the same predefined result.

With a complex generator without limits applied to input parameters the output generated will be noise 99.999% (or however many nines) of the time.

For example directionless random preset generation in a reasonably complex synthesizer such as Xhip. You can download the release-candidate and generate some random presets to see what I mean. The only way to avoid this is to skew the probability of each parameter ahead of time, and to set up combinations of skews for different ranges of sounds such as pads, leads, basses, percussion, noise and sound effects or others.

My hope would be to code for these skews ("structures") in enough detail to provide the flexibility to generate sounds that previously may not have had a recognizable or familiar categorization. For example you might end up with a "fitzgerald" along with your leads, basses and pads. Improbable in the world of synthesis of course but just as an example to be viewed in a more abstract rather than concrete sense.

This is the great difficulty associated with the task. To develop not only a sophisticated generator capable of meeting or exceeding human creativity but also a system to code for (genetics) and rate for fitness (subjective interpretation) the inputs/outputs of these generators.

This is why I ended with the "joke" about general intelligence. It wasn't really a joke :)

If you think about it, the state of the brain of the artist and the artist's environment upon beginning the creative process is what defines the results produced. This is the amount of data required to code for what I'm talking about! A state snapshot of a portion of the artist's inverse lightcone?

If you consider it further: every existing and even every possible human composition would have a unique identifying code under such a system.


... If I only wanted to "automate" the process of creating crappy "music" I'd just open up my DAW and take a bong hoot! :)

Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

Aciddose:

I could go into this all day, but a live conversation is best for the limited amount of time, energy, and attention I have. I will try to keep this in a nutshell and simplified for reading.

Using NNs as a basis, the common NN is used as a function approximation.. a mapping from input to output, with the possibility of returning output back to input (acting similarly to a coded variable in a standard program). I will use a standard 2D image as a simple analogy for higher dimensional data for the sake of explanation. An image has bounds and allows an easy conceptualization of a space. It also allows a simple concept.. 2 inputs (X and Y) give a 3 color output (R, G, B).

As an image gets larger, it takes more data to capture important details. As an image goes up in dimension (2D to 3D to 4D spatially and so on), this space increases dramatically.

We are in essence trying to take a snapshot of reality with a type of camera, that will either directly sample reality and/or manipulate the image randomly or using differentiation combined with a scoring function to let us know how close we are to the real picture.

The function of music generally seems to be the emotional affect it has on the listener.. typically favored by familiar pleasant sounds and relationships from the users prior experiences. Subjectivity may greatly vary, from person to person, culture to culture. The music that is favorable is a very small percentage of all possible sounds/music that can exist.. most sounds generated in this space of all possible outputs would sound as static noise to us, and usually is unfavorable. Each person would likely require their own 'snapshot' of the favorable sounds/music.

We are usually confined to existing continuous functions to recreate such large-scale data, saving valuable data storage and computation in the process. The CPPNs I showed you were very tiny in terms of data representation, they were intended only to demonstrate these concepts to everyone for the sake of understanding.

In terms of search space, it is extremely important to design the search space and scoring function with combinatorics in mind. The way the data is modeled may be the difference between seconds and years to find an accurate solution/snapshot. If you were trying to walk a very high dimensional maze, with only one possible solution and the distance function..it could take almost forever to solve with perhaps the exception of quantum computation.

The actual space we are in is beyond the simplistic theories we make about music and it's affect on people. We as humans try to abstract data for the sake of processing ease and energy conservation.. but data can be infinitely more dense in detail then what we can try to compress with a few abstractions. The categories you came up with are such abstractions that will be hit and miss in the realm of actuality.. so that is where you will find it's natural shortcomings... Godel's theorem applies here, as well as information entropy. Information cannot be compressed infinitely (the limits of abstraction).

The fact is we as humans must be a part of the search/optimization algorithm.. that means a lot of trial and error.. forge the image with much of the footwork ourselves.. and I recommend you use your abstractions to begin this process per your understanding.

Other than mapping/function approximation/association, there is also random generation by restriction to regions.. however this is also an abstraction. In this your inputs would consist of a random stream, and the output would be confined to regions described by our abstractions. The idea of my preset navigator rides this concept. It's only because of my actual experience with preset randomization that I was able to mentally see this detailed image as a practical means to come up with new yet desirable outcomes. I simply see it has the ability to get the user to where they want to go faster than what currently exists, as it gives the user the ability to direct regions in hyperspace with a simple set of controls.. and experience with it would give a person a kind of walking stick, and quickly get to their destination.

For the sake of some of the readers sanity.. I'll wrap this up here. If you are up for it, I'd love to throw a online conference for you and interested developers..a relaxed brain storming session. Just for the inspiration, and so our ideas don't die on the drawing board with us.. and so good ideas can propagate across many developers and give more value to the scene and it's users.
SLH - Yes, I am a woman, deal with it.

Post

The most important abstraction in my opinion is language. In this case it might be the preset data itself (for your idea) or the musical notation and associated components (MIDI, preset data, selections of modules for mine.)

I know it isn't an issue to represent music with this data with 100% accuracy because that is exactly how we create music in software today.

Likewise it isn't an issue to represent a sound exactly with the preset data because it very much is the genetic code or seed input to the generator (synthesizer) to create the output!

So further abstraction or compression of the data may be useful as an optimization. In the case of musical notation for example I'm inclined to believe it is most likely essential to any working implementation as the raw data we use is far too sparse or low-entropy in order to make it possible for a human to work with that data.

The limits of such abstractions however are not at all an issue, don't you agree?

A valid point may be if I were to interpret what you've said as referring to the scoring/rating/fitness mechanism used in the evolutionary algorithm. This is absolutely true in some senses and there are far more talented individuals than either of us who have worked tirelessly and failed miserably in an attempt to create a system to automate music rating. They've failed despite large datasets available that accurately reflect the markets they're interested in. I've seen (at a glance) some of the research on this topic but I wouldn't say I'm particularly familiar with it.

While acknowledging that is an entirely valid concern I have to disagree regarding whether it actually matters. Individuals have individual preferences of course, and every artist creates unique works based upon those preferences. The dataset used in the synthesis of music by a system like I propose could be thought of as the "artist's soul" or "ghost" if you're familiar with Ghost in the Shell :)
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

Pragmatism is of course a view I share, but the density and accuracy of information desired might also be a user to user preference. Reminds me of the argument about analog vs digital, and how some believe that digital lacks the soul and character of analog. But it also reminds me of image compression vs image quality...

A perfectly sharp detailed image of a red bird on a branch, next to it is an image of a solid red color about the same color as the bird (which I will assume is the most abstract version of the image). Between these two images are possible degrees of abstraction between the two. How much lossy compression is practical or preferential.. I know that when I was a photography snob back in the day.. nothing but the highest quality would do.. but now I only care it's enough quality that there are no generally noticeable artifacts to bug me...a more pragmatic balance. I can assume that from this point of view, you are absolutely correct that it does not require the perfect image... but the concept should not be ignored either... as some people are sticklers for quality over pragmatism. Also, although you can build up the image gradually from abstraction into detail using scoring functions, I usually find that people prefer to start with the highest quality image first and then move down in to abstraction (save as jpeg).
SLH - Yes, I am a woman, deal with it.

Post

I'm not sure what you're referring to though.

The generators and genetics would of course need to be limited in some way initially, but to what degree and why should that be necessarily permanent?

A human artist also has such limitations in their capability or range of expression whether due to limited talents and inspiration or tools and mediums with which to convey. They are limited by time exactly as the software artist would be.

So I'm not sure why this matters? Are you making some sort of distinction between the software implementation and a human artist? I'm not able to see it. Why would it matter for the software where it does not matter for the human?

As I said (again, not really a joke) I am a computer. It requires you to take up the mind/body dualism to start in order to arrive at this as a problem. I don't see any reason to accept the concept of dualism due to the fact it lacks evidence supporting it. There is none at all. None. So it is indeed facing the problem from the wrong direction in attempting to start with "a work of art" and break it down rather than building the fundamental component parts and assembling them to create art.

That isn't how humans create art. You may start with an idea but this is wholly abstract and doesn't actually exist. The end product is also very different from that initial "idea" despite the fact that we interpret it as representing the end product, ex post facto.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

Here is something you might like

http://www.people.fas.harvard.edu/~msan ... _Final.pdf

I do not know whether Mr.Bach himself produced enough number of compositions to train a model like this or whether the model itself is a suitable abstraction or an oversimplification, but apparently somebody has written a thesis about it so it might be worth a look.

Mentioned Markov Chains are in use in speech recognition. They can be used as generative models too. In both cases they model probabilistic transitions between states. If you assign each state to a note, the resulting model looks oversimplified to me, and wouldn't work as a general model regardless of how much data you have, so probably the research paper above uses another model, perhaps each state could be assigned to a chord to model harmony instead of a whole composition and model melody separetely in a loosely integrated way. I haven't actually read it.

The paper itself is about a genre called "chorales" , and while I do not know anything about it, looking at https://en.wikipedia.org/wiki/Chorale it seems to be a slow tune sang at a church, lacking typical richness of a Bach composition, so seems like they have found a toy problem for themselves.

Anyway, whenever A.I. has success in any real world problem beyond playing chess,whether it may be speech recognition or machine translation it is always accompanied by a large amount of training data. That kind of data is available to large corporations and research institutions and perhaps somebody doing a PhD would take the time to scan whole compositions of J.S.Bach and proof read automated note recognition results for the sake of completing his/her thesis, but otherwise it is too much work for an individual. The linked paper is a BSc thesis so at a first glance it seems like it shouldn't be too difficult to extend and improve, if you really have time to work on something like this. Of course, that can happen only if there isn't a serious shortcoming of the statistical model they have chosen. If one assigns each state of a Markov Chain to a note, it's not likely to work on, say, something like 'Goldberg Variations' regardless of how much data one may have.
~stratum~

Post

gotta rush so quick. as said, the results are dependent on the programmer, instance of individual. too many assumptions, like good results and familiarity.

most people can't think enough to achieve intriguing results because they envaluate things like "entertainment is good". fitting methods to this task is a deficit in consideration of what listening to stuff is. gotta run, could word that better, but you'll get enough of it.

chess has a clear objective. breeding presets, i don't think cheesemaking is what you want going into your ears.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Post

let's see if i can make this clearer,

assuming that confluence is absent .. off the top of my still morning arse, confluence may actually be what music is all about.. if not a wider scope of things.. ..is a paucity of rationale..... given a transdimensional supercomputer, the first thing you do is throw it out and demand unliving results. then you wonder, why do they suck. because the development of technology is sophistry for such ends. and tangible sophistry will permeate in all parts. okay maybe glorious, glorious sophistry. i can direct you to scores of examples of pure wonder produced by the most primitive methods like chamberlin random number generators.

okay, let's go a whole lot clearer.

if you are building a system to generate good music, you're already done for. can you see the logical error in such an aspiration? i'm sure you can. the problem, is your ego of voluminous methods and achievements makes it difficult for you to stop and see the fallacy before you decide, with me, such a thing would be possible. surely me, surely modern mankind with all of his accomplishments.

what have we accomplished. there is a disparity that some refuse to consider.

i can't make you consider it :)


when we are concerned with method only, and not intent or function, then it is sophistry.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Post

stratum wrote:Here is something you might like

http://www.people.fas.harvard.edu/~msan ... _Final.pdf

Yes I've read this paper back in 2013 :)

The unfortunate fact about it though is that this is a highly specialized system designed to model and reproduce a very specific and limited range of melodies/progressions that are statistically indistinguishable from the compositions used to train the model.

Due to that fact it is actually going from a "top down" direction by taking final works and limiting the range of possible outputs by modelling specifically those works rather than creating assemblies of component parts defined by identifying codes / genetics which are slowly mutated.

This is similar to the difference between your memory and understanding of an image you've seen vs. a simple reproduction or approximation like a jpeg file.

I'm very much aware of some of the attempts made in this field which is why I disagree that I've overestimated the complexity of the task being a decades long effort by a highly specialized individual at best. I believe others may significantly underestimate the complexity of the task, which may be my fault due to not having provided the best possible detailed explanation.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

xoxos wrote:if you are building a system to generate good music,

That's quite an assumption.

No, not at all. I've never suggested that and I'm full well aware it isn't possible. First most because it isn't real.

My understanding is that people are deluded and believe their emotional responses dictate some sort of "higher truth" and resort to all sorts of completely imaginary abstractions to attempt to describe this.

Unfortunately the reality is quite a lot more simple. The brain is a "computer" (or something) that given specific inputs in combination with a specific state generates a specific response. The problem is that you're trying to interpret this response as having some "meaning". There is none. It simply is. It doesn't need meaning to exist.

You need to try looking at music free of your emotional delusions about it. What do you have then? This may be impossible or prohibitively difficult for yourself or most other individuals to accomplish. My suggestion is to find music you absolutely abhor and train yourself to accept it. Look at it in great detail from a neutral perspective where you would never normally be capable of accepting what you experience and so would normally avoid any such contact with this abhorrent material. This refusal to accept and experience things outside your own sphere of what you subjectively define as "good" is the basis of your delusion about what things truly exist and are.

"Higher truth" = not just truth, but truth++. A sort of truth defined by itself from its own existence alone as being true and therefore impossible to be untrue.

In reality such a definition is self-defeating. This sentence must be false.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

aciddose wrote:My suggestion is to find music you absolutely abhor and train yourself to accept it.

This refusal to accept and experience things outside your own sphere of what you subjectively define as "good" is the basis of your delusion about what things truly exist and are.
iamyourfather.jpg
SLH - Yes, I am a woman, deal with it.

Post Reply

Return to “DSP and Plugin Development”