Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

Martin's famous 10 Octaves, 40 bands splitter question.

For general discussion related FlowStone

Martin's famous 10 Octaves, 40 bands splitter question.

Postby pshannon » Thu Jun 18, 2020 5:50 pm

Martin,

You did amazing work on this and I noticed it was used in several ways through the forum. I have went through this design many times and some things with my "humble" :oops: ignorance don't add up when I try to expand the bands or narrow them down to certain ranges. I attached a the schematic 3.0.6 of what I am trying to describe and my goals.

1. 40 bands across the entire freq range: How would I narrow the freq for this and make it specific ones and or expand it to more bands with the exact freq. I did mess with the BW values as well with mixed results.
The smallest unit I thought was 1.059 which is being used for the semitones (minor second) in the Octave Cascade. I assume I would not change this?

2. I tried the changing 8371.94 labeled as "C5@ hop 16". The hop part is really vague, I only found a couple of things on this, however, I noticed different results when I changed this number. When I put a sine wave at different freq, I get mixed results that appears to be duplicating in different areas.
I see plenty of radio related hop - https://en.wikipedia.org/wiki/Frequency ... d_spectrum
How does this relate to this use?

3. Freq values: 2^n to get .8192, .4096, .2048 etc. seem to make the most sense and I have the most positive response. However, it I still can't narrow down all 40 bands to exactly what I want with predictable results.
As I stated above I tried to expand and I would like to get 88 band freq like a piano has.
I assume this framework can be achieved by playing with the numbers and not changing the actual framework correct?

Thanks for all help,

Patrick
Attachments
martin v - 40 band Schematic.fsm
(71.73 KiB) Downloaded 839 times
Last edited by pshannon on Fri Jun 19, 2020 4:05 am, edited 2 times in total.
User avatar
pshannon
 
Posts: 144
Joined: Fri Jan 02, 2015 3:08 am

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby wlangfor@uoguelph.ca » Thu Jun 18, 2020 8:09 pm

40 bands.. that's insane lol.
My youtube channel: DSPplug
My Websites: www.dspplug.com KVRaudio flowstone products
User avatar
wlangfor@uoguelph.ca
 
Posts: 912
Joined: Tue Apr 03, 2018 5:50 pm
Location: North Bay, Ontario, Canada

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby pshannon » Sat Jun 20, 2020 1:48 am

I am very surprised I didn't get any responses on this one. From my tests, I think I might have solved it and I don't need help now. I will be deleting my post.
User avatar
pshannon
 
Posts: 144
Joined: Fri Jan 02, 2015 3:08 am

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby k brown » Sat Jun 20, 2020 2:07 am

Well, Martin checks in pretty sporadically, so you might want to await his input.
Website for the plugins : http://kbrownsynthplugins.weebly.com/
k brown
 
Posts: 1198
Joined: Tue Aug 16, 2016 7:10 pm
Location: San Francisco, CA USA

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby pshannon » Sat Jun 20, 2020 2:49 am

k brown wrote:Well, Martin checks in pretty sporadically, so you might want to await his input.


I know he does and I was just giving an update, I was a little proud of myself that I figured something out. I am not an expert in this area, I read a lot on this subject recently and I learned a lot. Dissecting MV filters helped me put the logic together. I just assumed there were others out there too that might have known something even though this is Mr. MV's design. MV might not see a reason why I wanted to do this. I read a lot of the hop and I have a better understanding of it now, but how he came up with the standard number in the filter, I couldn't figure that one out. The cascade made perfect sense, the freq splits did, the Q I am still figuring that one out. It appears the Bandwidth and Q overlap to me in the design. Bandwidth had much more effect than the Q changes. MV has his reasons.
User avatar
pshannon
 
Posts: 144
Joined: Fri Jan 02, 2015 3:08 am

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby martinvicanek » Sat Jun 20, 2020 8:59 am

Sorry Patrick, I was busy. invQ aka 1/Q is the relatve bandwidth aka bandwidth/center_frequency. I might have posted a spectrum analyser with semitone resolution in the past, if you want to search for it. Today I would probably use a 16k FFT and sum up the squared amplitudes that belong to each band. Since the semitone breakpoints will not coincide with FFT bin boundaries, there will have to be some interpolation. Hope that helps for the moment.
User avatar
martinvicanek
 
Posts: 1328
Joined: Sat Jun 22, 2013 8:28 pm

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby pshannon » Sat Jun 20, 2020 1:51 pm

martinvicanek wrote:Sorry Patrick, I was busy. invQ aka 1/Q is the relatve bandwidth aka bandwidth/center_frequency. I might have posted a spectrum analyser with semitone resolution in the past, if you want to search for it. Today I would probably use a 16k FFT and sum up the squared amplitudes that belong to each band. Since the semitone breakpoints will not coincide with FFT bin boundaries, there will have to be some interpolation. Hope that helps for the moment.


No worries and I assumed you were a busy either in life or some DSP design. ;) I have found just about everything you posted. In here, I will post the link to them.

Thanks for your response that helps with the BW and Q. Tula pointed me down the path of FFT and I spent extensive hours on this one. I was getting good results until I tried to split the bins up to the exact points I wanted and boom spillage and poor results started happening. The sign wave worked with 80% and that was not my expectation. I was also trying to integrate a good envelope follower like Exonerate's, but the results were
poor. It is most likely my fault of course, but the E.F. worked great in your 10 octave/40 band example. I was able to expand to 125 bands with great results from 15hz to 20khz. The sign wave worked as expected and each time I changed the semitone or octave, the results were as expected. It was a good day! :D

I am told by you and Tula to use FFT. I need to go back to this one, which was amazing!

spectralEnvelopecloner
viewtopic.php?f=2&t=3972&hilit=scoope&start=50

I sectioned the bins from the results of your 4k example. Dividing the bins up, interpolating the ranges together similar to ocatavespectrumdisplay.fsm didn't work as expected to capture semitones correctly.

octavespectrumdisplay.fsm
viewtopic.php?f=2&t=22575&hilit=goertzel

That was a clever and very simple example. Your quote "have run" and Yes, I had fun! Everything failure I am saying has nothing to do with your great work, it is all me capturing the results and doing something usable with it. I keep thinking I am there and then I start the expansion and spillage starts with some ranges.

I noticed you used your 40 band 10 octave in many projects and you windowed this one. I made one attempt to integrate blue source input with the windowed and failed. But again you used your splitter, I am losing the point between when to use FFT vs Splitting the bands. My actual goal is to find/isolate the instruments and notes. Export the results and use them. I know it is challenging, but watching the bars move up and down during a song playing, I was able to pick out visually the drum beats, piano playing and other instruments. I got exited! :D I would like to exaggerate the changed move more to show even more results. I like Stats and I tested standard deviation running the stream through in real time with some interesting results.

SpectralEnvelope2.fsm
viewtopic.php?f=2&t=3972&hilit=scoope&start=10

I changed my path from FFT to band splitting because of this clever work. I never thought about using array shifting to achieve these kind of results. That was cool.

Spectrogram
http://www.dsprobotics.com/support/view ... 89&p=21566

E.F. = Envelope Follower

But again, the E.F. for the FFT examples does not give me the smoothing I am looking for and I believe you and Tula on the path I should take. However, I keep failing because I understand working with EQ spectrum analyzers more than I do FFT. That is my limitation and I finally achieved results I was looking for, but I want the best results of course.

Sorry for the long post, my points did jump around a lot here. I wanted to include some of your major work that I spent many hours going through.
The 4k smoothing you used with triggers worked well for the graph provided, but does not work well in the meter bar like displays. Choppy compared to an E.F. ;)
Now you know where I am at and thanks to your work, I learned a lot and I still realize there is so much I don't know and I can appreciate your talents in this area is top notch.

Regards,

Patrick
User avatar
pshannon
 
Posts: 144
Joined: Fri Jan 02, 2015 3:08 am

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby tulamide » Sat Jun 20, 2020 2:06 pm

I'm not sure I actually help with this, because I can't give you actual DSP code editor examples. But the nature of sound knows two domains; the time domain and the frequency domain.

You can ever only work in one domain at a time. FFT moves data from the time domain to the frequency domain. An envelope follower is working in the time domain. Realtime filters are mostly working in the time domain, although you can create filters that work in the frequency domain.

Here's a "FFT explanation for starters", that helped me a lot understanding it better:
https://www.dspguide.com/ch12/2.htm

I leave the actual code help up to Martin ;)
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Martin's famous 10 Octaves, 40 bands splitter question.

Postby pshannon » Sat Jun 20, 2020 2:24 pm

Thanks Tula, the link you shared was really good and quickly made sense with pictures on how it is broken down. I will read more on it.

I have an idea using FFT 4k spectrum display with all the windowed MV posted. I might be to isolate the bins properly with some more analysis.
User avatar
pshannon
 
Posts: 144
Joined: Fri Jan 02, 2015 3:08 am


Return to General

Who is online

Users browsing this forum: No registered users and 48 guests