Trance Forum | Stats | Register | Search | Parties | Advertise | Login

There are 0 trance users currently browsing this page
Trance Forum » » Forum  Music Software - App I made a while back for calculating harmonics and the frequencies between them.
← Prev Page
1 2
First Page Last Page
Share on facebook Share on twitter Share on StumbleUpon
Author

App I made a while back for calculating harmonics and the frequencies between them.

knocz
IsraTrance Junior Member

Started Topics :  40
Posts :  1151
Posted : Feb 24, 2015 19:45
Great thing your a system architect My job is irrelevant here, we are just guys speaking of music

But, if I want to find the fifth or octave of C, in normal music programming, I'll just do some math (a char occupies 1 byte so I can represent 256 states, which is more than enough to represent the available notes in western notation, and if I add 12 to that char value I get my octave )

Same goes for the fifth and, even if we are speaking about intervals inside the scales, I would just have a simple representation of my scale (so, the 3rd interval would map into X actual steps) - the same way the scale is defined to a student (but thinking way faster than a student.
No DB required.

Also, this increases performance by a huge amount - reading from the DB is extremely slow compared to a simple CPU addition
Sometimes the simpler solutions are better and more efficient than the industry-standard ones.

But, if you are really interested in this, I recommend to look for real-time processing design patterns, and optimization tricks But a couple of free months will soon turn out to be a live-long quest for more hehe           Super Banana Sauce http://www.soundcloud.com/knocz
moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Feb 24, 2015 23:27
Okey, no DB required for 256 states, I see your point. But honestly if I got a project to make a simple application for harmonics like those discussed in the links here and in the rest of the appstore, which means apps providing a knowledge base of music theory only, I would propose this to be done for example with a table in SQL, a simple query (since the relationship between the first note of an octave, or the fifth, or a circle of quints, or table of chords all have a simple database structure suitable for SQL queries) and then I would say that javascript or jquery would be the fastest way to visualise the data for a mobile application. No need for high level languages. But of course, there are many ways to the goal - especially with a simple project. It all depends on what you need the knowledge base for.

And btw my personal goal has never been to make a knowledge database of harmonics, because I learned them 20 years ago . However, in the model that I have of music theory ( it is a very old one and it is called the signature of the spheres and yes you are right that if I had a choice I would make this to live-long quest for more), the octave is sometimes more complicated than the description above ( which is of course what modern software uses) because of the pythagorean komma. And then 256 states would not be enough, but this is a completely different topic and another project on its own.

Real-time processing patterns sounds interesting, however it is sometimes a bit difficult to learn without examples of how coding for music software is really done. Not impossible, but it would take more than months.

However, the comparison with the potato and the wave - I just said this about the jobs to emphasise on the fact that developers are not always the most simple people and being a project manager of really complicated and agile projects I consider myself worth talking more specificly than the comparison with the potato for c# and java .
moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Feb 25, 2015 00:22
Quote:

On 2015-02-24 18:19, knocz wrote:
Quote:

On 2015-02-24 15:14, moki wrote:
But c# is supposed to be able to do anything that objective c and java can? Is this your opinion too?



Errr c#, c++, obj-C and java are all programming languages. Up to here all ok.
But they really are and do different things...



Okey, last Exkursus to that: I refered for example to Xamarin: http://xamarin.com/
C# is the best language for mobile app development according to them, check why if you want:
"With Xamarin, you write your apps entirely in C#, sharing the same code on iOS, Android, Windows, Mac and more. Anything you can do in Objective-C, Swift or Java, you can do in C#. "

This is not my opinion but many people swea r that .net and c# is a very good choice. I dont have much experience with them, but I prefer to be catched where I am really wrong.

Anyway, good luck further to the developer of the exe file. Didn't want to hijack.
knocz
IsraTrance Junior Member

Started Topics :  40
Posts :  1151
Posted : Mar 1, 2015 14:29
Quote:

On 2015-02-24 23:27, moki wrote:
Okey, no DB required for 256 states, I see your point. But honestly if I got a project to make a simple application for harmonics like those discussed in the links here and in the rest of the appstore, which means apps providing a knowledge base of music theory only, I would propose this to be done for example with a table in SQL, a simple query (since the relationship between the first note of an octave, or the fifth, or a circle of quints, or table of chords all have a simple database structure suitable for SQL queries) and then I would say that javascript or jquery would be the fastest way to visualise the data for a mobile application. No need for high level languages. But of course, there are many ways to the goal - especially with a simple project. It all depends on what you need the knowledge base for.


Sorry, developing for mobile apps and you'll use javascript / jQuery? Fast?
jQuery -> visualize? hmm..

Wait, "no need for high-level languages"? Than what is javascript?
Cmon man..


Quote:

On 2015-02-25 00:22, moki wrote:
Okey, last Exkursus to that: I refered for example to Xamarin: http://xamarin.com/
C# is the best language for mobile app development according to them, check why if you want:
"With Xamarin, you write your apps entirely in C#, sharing the same code on iOS, Android, Windows, Mac and more. Anything you can do in Objective-C, Swift or Java, you can do in C#. "

This is not my opinion but many people swea r that .net and c# is a very good choice. I dont have much experience with them, but I prefer to be catched where I am really wrong.


Oh no..
These guys only want to sell their product, don't count on it being anything close to true.

The "one-framework-compiles-to-all-OS" systems are lame, as you really cannot get into the details of each programming language / mobile phone framework - not only for performance issues, but feature wise too

If you just look at the code of each language, it composed probably on only 50 reserved keyworks, and the pretty much do the same on their own (well, I dare you to take care of pointers in C# / Swift / Java as you do in Obj-C )

But the real power of the language comes with the entire framework coupled to it. And if there is a framework with millions and millions of functions and features, that have been around for years and work for much more than simple mobile operating systems, do you really think you can just make them compatible? To some extent, yes. But, I'm not talking of simple programming - I'm talking about advanced DSP processing on a real-time system, trying to hog as least CPU and memory footprint as possible

At the end, .Net can be a good choice. But, only depending of your scope - for sure it's not good for all applications Wanna develop for IOS and / or Android? It's the worst choice. And C# isnt build for speed, but build to counteract with the whole "JAVA-movement" (it's pretty much a copy of the language, fixing a couple mistakes in the Java syntax.

But if you only want a simple app that displays numbers based on a note, then yeah, anything works.
If you want the app to tell you this info in real time based on your input signal, then it's a whole different story.

Quote:

On 2015-02-24 23:27, moki wrote:
Real-time processing patterns sounds interesting, however it is sometimes a bit difficult to learn without examples of how coding for music software is really done. Not impossible, but it would take more than months.

However, the comparison with the potato and the wave - I just said this about the jobs to emphasise on the fact that developers are not always the most simple people and being a project manager of really complicated and agile projects I consider myself worth talking more specificly than the comparison with the potato for c# and java .



I'm an engineer and an analyst more than a developer - more of a problem solver (with quite extensive knowledge in the entire development stack - from top to bottom). So unfortunately you're out of luck.

Perhaps project managers shouldn't be thinking about technologies when they should be defining the project boundaries, risks, scopes, communication, monetizaiton and scheduling for a project. That's the worst mistake I see in the field (and too many PjM's do it), project managers going out of their way, imposing technical requirements to the analysts when they should be exposing what the actual expectations are (AS a USER I WANT to obtain the fifth for a desired note SO THAT I can have a quick dynamic cheat sheet for my music composing).


So in the end you already want to impose C#, with some weird "non-official" do-it-all framework, using a database and visualizing in JavaScript (in specific jQuery for some reason) on the development. So, the project is crippled from the very beginning, and is doomed to be yet another one of the million apps out there that has failed short of efficiently solving the underlying issue. Congrats!           Super Banana Sauce http://www.soundcloud.com/knocz
moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Mar 2, 2015 15:32
Nice that you wrote back, thanks. I thought you would not speak about it any more .

Quote:
But if you only want a simple app that displays numbers based on a note, then yeah, anything works.
If you want the app to tell you this info in real time based on your input signal, then it's a whole different story.



Well yes, and this is exactly the point. As I said, most harmonic helper apps (and there are plenty of them) just display numbers and the particular note that fits to the numbers. Javascript is strong with visualizing data : this is an example of a good lecture about it http://www.amazon.de/BigData-mit-JavaScript-visualisieren-Darstellung/dp/3645603476 . Last week I got another one about creating fractals only with javascript.

And as you say - for this simple purpose anything goes and it would be the fastest thing for me to do myself , as I find Java and C++ more difficult. And even in a commercial project, Java and C++ developers are much more expensive too.

I got luck this week because while I was surfing in the public library I found a book called Audioprogrammierung, written by a Dr. Steppart, who teaches in Berlin. All codes are inside to be seen, as far as I see, available only in German. Even a comparison between C++ and Java is there. I think I will know much more, after I have gone through it. http://www.amazon.de/Audioprogrammierung-Klangsynthese-Bearbeitung-Ulrich-Schmidt/dp/3446432221 This is it, and it is an amazing one!! Strange because it is written by someone who teaches where I do the master media computer science.

Btw, just for you to know, I might have a good experience as a project manager (and scrum owner doing requirements engineering) but I am a beginner with object oriented languages like Java and C++ (and not Javascript). I just began to study media informatics for two years master last year, seven years after finishing my first field of university studies. So I hope to learn more with the time.

Nevertheless, I am really very familiar with the problems that occur within a project, if the project lead interrupts too much the process of development. It is a very hard thing to do, especially if you deal with projects with budgets of hundred thousands. Developers might know everything better, but they often can't see the fastest and simplest way to implement certain things or just love to code complexity which is sometimes without a business value and a great burden to the project.

However, talking about project management for music software development would be a great thing to do, but I know you are right, that it is almost impossible to get a job for such an enterprise. May be I should try it first after I write a master thesis on a related topic, and may be I should never try it . I do not know either.

Quote:
So, the project is crippled from the very beginning, and is doomed to be yet another one of the million apps out there that has failed short of efficiently solving the underlying issue.



Well yes, and this is exactly how I see it too (there must be some misunderstanding if you think I see it differently). Another harmonics app is not what will strike the market or even what will gain respect among those who are involved in audio engineering. Object oriented languages are a must.




moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Mar 2, 2015 18:23
Or to put it more simple: there are two types of projects that can be done with harmonic apps:

1. a knowledge base displaying numbers and relationships
-> for this I proposed to take a database approach and a javascript visualisation, then implementation in a mobile framework (and yes jquery is a great thing to do if you want to serve it to more users with different mobile devices in the mobile jungle)

2. an interactive type of a knowledge base approach + object oriented patterns of programming and API to music software

Hope you now understood me, if not, never mind, it was a pleasure talking. Going to study the book now.
moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Mar 3, 2015 14:27
Oh, and last but not least, I do not think, that I ever proposed C#. I simply asked if for this exe file C# was used, because it is the first thing to think about if .net is required. But I have the feeling you simply try to point out how little I know about anything, which is your freedom of choice to believe:). And nothing new for me because I have grown up with this and similar forums and I have heard this countless times. Luckily the world is bigger than a forum.

What I did propose however, long before this thread, was a harmonic application based on a very particular architecture. But I would prefer to do it for main stream computer musicians...Also, as I simply do not believe in this PLUR attitude any more, I think it has to be commercially sustainable. If you involve C++ developers and engineers for 100 euro per hour, you can count how many hours you can spend with them to make an app sustanable that costs 5 or 10 euro, and how many ppl should install it.



Falkon303

Started Topics :  9
Posts :  33
Posted : Mar 6, 2015 18:27
Yeah it was written in C#, and it works. Now, obviously there's better languages, but it makes more sense to make it a vst anyways and package it with a vst exe runtime.

Anything above Windows XP has .NET, but I agree .NET is a pain. It's pretty standardized now (cept the occasional annoying download of libraries and redistributables) , but yeah it's not a good platform/idea to have dependencies like that I agree.
ansolas
IsraTrance Full Member

Started Topics :  108
Posts :  977
Posted : Mar 19, 2015 00:02
@Falcon303
Awesome!

I remember back in time while studiying Msc Digital Media and we were discussing novel ideas relating sound.

The group were amused as I presented my idea of a new music instrument based on Pads where you can load up scales layout. Years later Push was introduced.

Same with an eq with a keyboard beneith the Graph which can now be found at Waves H-EQ

I wonder why noone created a EQ which lets you substract the tritone (6th harmonic) and any other disharmonics.

The only one which comes close is Bass exorcist:
http://www.maxforlive.com/library/device/1949/faint-response-bass-exorcist

This in combination with midi tracking as it can be found in Surfer EQ would be very useful in my opinion:
http://www.soundradix.com/products/surfer-eq

Unfortunately I have very less experience in coding VST Plugins. (Only web stuff and Java) If I would have I would implement it immediately.

I tried things like Flowstone or MAX but they are less useful so far. Either it is x86 only or you cant create VST Plugins with it.

Anyone got experience in creating VSTs in here? It would be lovely if we could team up to implement such kind of EQ.
I could contribute with my knowledge of OOP           http://facebook.com/ansolas
http://ansolas.bandcamp.com/music
http://myspace.com/ansolas
http://soundcloud.com/ansolas
http://ansolas.de
moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Mar 23, 2015 17:22
Quote:

On 2015-03-19 00:02, ansolas wrote:


I wonder why noone created a EQ which lets you substract the tritone (6th harmonic) and any other disharmonics.

The only one which comes close is Bass exorcist:
http://www.maxforlive.com/library/device/1949/faint-response-bass-exorcist

This in combination with midi tracking as it can be found in Surfer EQ would be very useful in my opinion:
http://www.soundradix.com/products/surfer-eq





I wonder if the extraction of a tritone, the way you mean it, would not be possible directly in a good synth. For example in z3ta it is possible to work that way with tritones - in many different modes of extracting...But I guess this is exactly why people make VSTs: to make things easier for those doing it without special hardware or virtual synths. The best thing to do, in my opinion, is to go through all the hundreds of topics in isratrance since the very beginning and to see what people need. However, this is on my to do list since 5 years and I never did.


Quote:


Unfortunately I have very less experience in coding VST Plugins. (Only web stuff and Java) If I would have I would implement it immediately.

Anyone got experience in creating VSTs in here? It would be lovely if we could team up to implement such kind of EQ.
I could contribute with my knowledge of OOP




This was the first thing I had in mind while starting to participate here. But this topic reminds me that it is extremely difficult to work in teams that do not know and trust each other personally - working only on a network basis. For me, doing a VST with SDK Steinberg is something I have on the to do list until end of the year. Nothing complicated, just to have done it once.

Of course the more ppl are involved, the better the result. However, organizing the process is sometimes more difficult than coding things, but I already said this.
ansolas
IsraTrance Full Member

Started Topics :  108
Posts :  977
Posted : Mar 23, 2015 23:56
Moki we should meet up in a chat some day to talk a bit and get better aquainted.

I have the same quest regarding the vst sdk.

Regarding tritones, we could simply use a keytracked notch which cuts out the tritone and a second filter for the snap
I tried that with serum instantly aft i wrote the post above.
Lol

Anyways back to the network quest.
It would be lovely to meet some interesed guy in chat... Maybe good old irc ? What do you think ?


          http://facebook.com/ansolas
http://ansolas.bandcamp.com/music
http://myspace.com/ansolas
http://soundcloud.com/ansolas
http://ansolas.de
ansolas
IsraTrance Full Member

Started Topics :  108
Posts :  977
Posted : Mar 23, 2015 23:57
Moki, could you get more into depth regarding zeta and tritones please?           http://facebook.com/ansolas
http://ansolas.bandcamp.com/music
http://myspace.com/ansolas
http://soundcloud.com/ansolas
http://ansolas.de
moki
IsraTrance Junior Member

Started Topics :  38
Posts :  1931
Posted : Jul 25, 2015 16:41
Hi, it has been a while, did you guys get together to work something out?

About z3ta: what I referred to was the extraordinary modulation matrix, here you see a screenshot from z3ta 2+:



I do not say that only z3ta can do this, but I guess I have never seen a better one ( and I have not seen so much). It is simply extremely powerful - you can choose whatever destination you want to for your modulation, which means that at least in theory it should be possible to extract tritones and send them whereever you want to. But to try it out in the practice, a more detailed description is needed - for example from where you want to extract tritones exactly...

About the VST programming - I still think that software programming is an extremely difficult job to do and serious projects should not be underestimated. In my head there is a scheme like: I need to do A to achieve B and then C to get to D and then understand E and combine it with F and use B to get to know how to get to X. And there is no way to go straight to X, never ever. So I think I am still not ready to start anything...Unfortunately every letter in the scheme is connected to an experience in a certain field (a job in a certain field of software production somewhere outside of music business) and to a lot of time before starting anything with music software at all. But the further the goal, the more certain it is that you won't get bored in life:P


Trance Forum » » Forum  Music Software - App I made a while back for calculating harmonics and the frequencies between them.
← Prev Page
1 2
First Page Last Page
Share on facebook Share on twitter Share on StumbleUpon


Copyright © 1997-2024 IsraTrance