PDA

View Full Version : HLS - Marine Snipper Hit Bull with Beat Track and Piano Notes



JHinkle
09-28-2014, 04:57 AM
Version 22C is now released.

I have released a new capability -- HLS now has FFT capability.

A FFT will analyze a window of audio and tell you what frequencies it contains.

Place a window around a beat -- BANG -- pin-pointed.

Place a window around a piano note you are trying to pin-point --- BANG.

The FFT will tell you the frequency.

Then use the DSP BandPass -- set that center frequency -- set Bandwidth - Q and Gain -- and have the DSP pull it out of the noise.

Run an envelope on the audio --- use the envelope profile to auto0place effects perfectly inline with the beat or note.

Enjoy.

Joe


https://www.youtube.com/watch?v=PtdLIeaVVXE&feature=youtu.be

cnbales
09-28-2014, 07:56 AM
Very nice Joe! HLS continues to be an amazingly progressive sequencer thanks to you. This new feature gives us the ability for precision sequencing!!!

DrNeutron
09-28-2014, 10:03 AM
This is exactly the type of capability I always wanted. Sure "beats" fighting with audacity and using LOR auto beat detection.
Thanks Joe! Man, you continue to amaze me how quick you can code new abilities into HLS!

Donny M. Carter
09-28-2014, 01:03 PM
I was playing with the new FFT and received the following error.

http://doityourselfchristmas.com/forums/attachment.php?attachmentid=24917&stc=1

JHinkle
09-28-2014, 01:08 PM
That is a hard-drive write error.

It's either my bug or HLS is telling you to watch your hard-drive.

If you can reproduce it --- it's probably me and I want to know how so I can address it.

Joe

MindTrik
09-28-2014, 01:09 PM
We're always breaking your stuff Joe, can't have anything nice...

JHinkle
09-28-2014, 01:16 PM
Donny

It looks like your FFT is showing two distinct freq -- right?

I tried to find that for the video.

If so --- please post a pic so people can see the FFT identifying more than one predominate freq.

Thanks.

Joe

Donny M. Carter
09-28-2014, 01:18 PM
That is a hard-drive write error.

It's either my bug or HLS is telling you to watch your hard-drive.

If you can reproduce it --- it's probably me and I want to know how so I can address it.

Joe

I was able to duplicate a few times Joe.


https://vimeo.com/107399074

Donny M. Carter
09-28-2014, 01:24 PM
Donny

It looks like your FFT is showing two distinct freq -- right?

I tried to find that for the video.

If so --- please post a pic so people can see the FFT identifying more than one predominate freq.

Thanks.

Joe
The first is at .75 Sec of audio and the second is 1.5. Song is Dance of the Sugar Plum Fairy.

http://doityourselfchristmas.com/forums/attachment.php?attachmentid=24918&stc=1http://doityourselfchristmas.com/forums/attachment.php?attachmentid=24919&stc=1

JHinkle
09-28-2014, 01:32 PM
I got hooked on doing the FFT last night (did not go to bed until 5am).

When I was doing the video --- something kept nagging me that I did not like.

The FFT had a resolution of 40hz --- I thougth that was sufficient to help ....

This morning I changed it to 10hz resolution --- now it will show multiple frequencies --- I think this will work better.

The FFT will identify frequencies from 10 hz to around 3000hz --- should cover most fundamental frequencies of all instruments.

Version 22 E

Joe

JHinkle
09-28-2014, 01:35 PM
Donny --- can you post the 1.5sec FFT using 22E --- I'd like to see how the better resolution affects your display.

Thanks.

Joe

JHinkle
09-28-2014, 01:39 PM
Another thought --- I'm going to remove the "Remove Vocals" as default.

As I stated in the video --- I subtract R from left to remove vocals -- BUT it will also remove (or partially remove) and instrument that appears in both channels producing frequency components NOT in the song but produced by the subtraction process --- each channel has same freq but they are phased shifted from each other producing the artifact when subtracted.

Matter of fact ... I'm going to remove it altogether .... I think it will cause more confusion than benefit.

It will be gone in the next release.

Joe

Donny M. Carter
09-28-2014, 02:00 PM
Donny --- can you post the 1.5sec FFT using 22E --- I'd like to see how the better resolution affects your display.

Thanks.

Joe

http://doityourselfchristmas.com/forums/attachment.php?attachmentid=24920&stc=1

JHinkle
09-28-2014, 02:04 PM
Thanks -- I like it better.

Joe

JHinkle
09-28-2014, 03:00 PM
Let me explain some things about what the FFT is telling you:

It says --- this is a frequency where there is energy.

Take a guitar string that produces a fundamental frequency of 82hz.

Will you expect to see 82hz throughout your sequence --- NO.

Any string instrument will produce a note where the frequency being generated varies ... lets say an an example --- 78 to 86hz for the guitar string above.

Mostly it vibrates at 82 -- but actually the distribution is from 78 to 86 hz.

The other thing to realize is that the frequency will change based on temperature and humidity.

At the start of a song --- a piano note may be at 443 hz --- at the end of the song it may be at 451 hz due to being beaten to death during the song and getting warmer than at the start.

THOSE shifts in frequency --- due to the nature of vibration (say 78 to 86 above) and shifts due to change in temperature can cause your your DSP bandpass to NOT be centered throughout the song --- thereby giving a LOWER envelope profile at some points in the song.

You can attempt to resolve that by properly setting the DSP ORDER (or Q) of the filter AND the Bandwidth setting.

The Bandwidth says ... How Wide the filter is centered around the center frequency selected.

As an example ... lets say there are 2 frequencies of interest --- one at 300 and one at 350 hz

If you set a Bandpass center freq at 300 and a bandwidth of 100hz --- the 350 is actually in the filters acceptance window. How much of that 350 is going to get thru --- that will depend on the ORDER or Q.

If the ORDER or Q is 1 --- that is a simple 3db rejection at the edge of the filter's skirts --- 250 to 350. That 350 signal WILL get through

If the ORDER is 5 --- then there will be approximately 5 * 3db or 15 db of rejection --- THAT is a lot --- so little will get thru.

The other thing about the FFT that you need to be aware of is HARMONICS.

All instruments produce a note that contains the fundamental frequency BUT there are also many harmonics frequencies (mostly ODD harmonics) also generated.

If the note was produced by a 100hz SQUARE wave ... the FFT will show energy at 100, 300, 500, 700, 900, 1100 hz ....

THOSE frequencies are NOT different notes or different instruments --- those harmonics are what give the note its quality. The same note played on a piano, guitar, violin will each have a different distribution of harmonic frequencies -- its what makes them sound different.

There are some instruments where the energy of a harmonic is actually higher than the energy of the fundamental frequency you are trying to find -- beware.

The LOW PASS filter option in the FFT is there to help remove the harmonics and let you focus on the fundamental frequency.

Using that square wave example above ... fundamental freq of 100hz but the FFT whose BLIPS at 300, 500, 700 ....

Set the LowPass Filter at 400hz and all of those harmonics will disappear from the FFT display.

Do a google search on FFT, musical notes and harmonics, DSP, BandPass filters --- there is a ton of information out there.

Knowing how to properly interpret what the FFT is telling you and then how to use that information to set your DSP Bandpass filter properly will allow you to quickly pull out any instrument being played in a song.

Hope all of this technical stuff helps.

Joe

JHinkle
09-28-2014, 03:05 PM
I was able to duplicate a few times Joe.


https://vimeo.com/107399074

I think I see the issue.

You are selecting a channel to drop the envelope generated effects on but THAT channel is NOT currently in the Display Group.

Hence the channel is NOT available to attach an effect to --- ERROR.

I will modify the Envelope Profile channel select to ONLY be those channels in the display group.

That should keep others from doing the same thing.

If that is NOT the root-cause for the issue --- let me know.

Joe

JHinkle
09-28-2014, 03:49 PM
HLS 22G -- Prevent Non-Display Group channels from being used -- thereby addressing the issue.

Thanks.

Joe

Donny M. Carter
09-28-2014, 04:55 PM
I think I see the issue.

You are selecting a channel to drop the envelope generated effects on but THAT channel is NOT currently in the Display Group.

Hence the channel is NOT available to attach an effect to --- ERROR.

I will modify the Envelope Profile channel select to ONLY be those channels in the display group.

That should keep others from doing the same thing.

If that is NOT the root-cause for the issue --- let me know.

Joe

I guess the issue was the music file! I tried it on a second computer and it did the same thing. I got a different version of the song and it works fine now. Did you change anything when selecting the channels in the FFT box? I have to select channels in both the select channel tab and in the upper channel bar to have the effect appear in the track. Thanks Joe!

JHinkle
09-28-2014, 05:18 PM
Yah .......

Missed an area in the 22G change -- fixed in 22H.

Anyone using 22G --- get off it NOW if you are using the Envelope Profile. The process is writting to the wrong channel!!!

Get on 22H!!!!!

Joe