Profile

Cover photo
Werner Van Belle
160,253 views
AboutPosts

Stream

Werner Van Belle

Shared publicly  - 
 
It is almost entertaining to write posts in the G+ graveyard. Just shows how desperate people can become. Anyway, starting to write an abstract for a potential presentation at SHA2017.

Please check for typos and attractiveness. I would like to have a full packed audience at my feet, looking upward exasperating oh's and ah's. It is a pity that does not happen on itself. Therefor, the action plan is to make this text such that it neurolinguistically programs the reader and induces happiness and a feeling of well being and lasting positive attitude. You catch my drift.

Title: Time stretching BpmDj

Abstract: Time stretching: or how to change the speed/length of an audio track ? If the audio were simply stretched by interpolating missing samples, or shrunk by throwing away samples, then its pitch would change. Slower speed would result in a lower pitch. Higher speeds would result in a higher pitch. For BpmDj, we set out to create a time stretcher that would not alter the pitch when the playback speed changed.

In this talk we would like to discuss how we created a qualitative but fast time stretcher. We explain how a sinusoidal signal is extracted from the input track, its envelope modeled and then used to synthesize a new audio track with a time stretched envelope, but same pitch. The resulting time stretcher performs its work with only a frame overlap of 4, which reduces the amount of memory access and computation compared to other techniques.

We assume the listener will have a notion of what Fourier analysis is. However we do not require the listener to be fluent in it and will explain all technicalities in detail to make such a time stretcher a success.

Demos can be heard at http://werner.yellowcouch.org/log/zathras/ The paper that accompanies this talk is at http://werner.yellowcouch.org/Papers/zathras15/
1
Olivier Malinur's profile photoWerner Van Belle's profile photo
7 comments
 
I would guess that they already apply wavelet compression to this type of data ?
Add a comment...

Werner Van Belle

Shared publicly  - 
 
BpmDj just got a new nearest neighbor module. One that is a lot better than our previous attempts. The drawback is that it requires a reanalysis of all tracks, which takes some time.

What to expect ? The new nearest neighbors is inspired largely on minimization of a L1 metric in neural networks. And although the algorithms differ, the result is still that two vectors are considered near when a sparse change can map them onto each other. For music, it means that a song is considered near if only a few of the repetitions in the rhythm pattern change. Of course that can go in two directions: something can be added or something can be removed. Imagine a 4/4 beat with a 1/16th hi-hat overlaid. A near neighbor can be simply a 4/4 beat (the 1/16th being removed) or a 4/4 beat with a 1/16th hi-hat and a 1/8th snare (in this case only a 1/8th snare was added). The result is a nearest neighbor algorithm that will provide you with a series of candidates in all directions. Thereby you still have to decide on the direction in which you want to take the mix.

If you sometimes think: "why did BpmDj suggest this ? This is certainly not a near neighbor", then just try to mix it. You will often be surprised by the result.

The Heat Problem ! Aside from the new neighbors, BpmDj will use all available cores to upgrade the nearest neighbors. In doing so your processor might need to work somewhat harder than it ordinarily does. In our particular case we even had to open the computer, clean the processor fan and then develop further, otherwise the machine would crash after starting BpmDj.

The power consumption/heat problem is also real on phones. Our tests on a HTC made it so hot that it gave a battery malfunction warning (I didn't even know a phone could give such), then considered flying around the room in a cheerful dance to get away from the heat. Yet, before even getting to that point, it shut down after realizing it couldn't fly anyway. Just sayin' the next update might burn your house down. We solved that particular problem in typical engineering fashion by fully charging the phone, and then putting it in the refrigerator for a couple of hours while it performed the reanalysis

To push the point, in another room, a Kamboocha found itself fortunate to stand next to a machine from 1998, which was slowly working its way through a huge pile of MP3s. This lasted a couple of weeks. During that time the room was a cozy 25 degrees.

http://bpmdj.yellowcouch.org/nnn.html
New Nearest Neighbors. With version 4.7.3, BpmDj got a new nearest neighbor module. One that is a lot better than our previous attempts. The drawback is that it requires a reanalysis of all tracks, which takes some time. What to expect ? The new nearest neighbors is inspired largely on minimization of ...
1
Phillip Adkins's profile photoWerner Van Belle's profile photo
2 comments
 
We extracted a rhythm pattern as described in http://werner.yellowcouch.org/Papers/rhythmcl/index.html then we send those patterns through a deep believe network (a denoising autoencoder). The data that was saved were the features this encoder extracted. Yet, in the general sense it mainly measured overall energy content, it did not understand much of what it saw. The new one should be a lot better.
Add a comment...

Werner Van Belle

Shared publicly  - 
 
It often amazes me how a clean idea, when I implement it, becomes distorted. And that I only recognize it years later as a bug in the code. When I then think about people who do not validate their ideas in any way (the EU comission, relgious zealots, politici, philosophers and many more), then I wonder: how wrong are they really if they would know everything there was to know about the claims they make and the believes they hold.

Just a long intro to the realization that I should not perform a garbage collect of my database on the main UI thread.
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
Das bijna gelijk diepzeeschaak. Useles sport.
 ·  Translate
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
The following chart are some of the results of creating a denoising autoencoder.
The idea is that a neural network is trained to map a 1482 dimensional input space to a 352 dimensional space in such a way that it will recover 30% of randomly removed data. Once that first stage is trained, its output is used to train the second stage which maps the data to 84 dimensions. The last stage bring it further down to 21 dimensions. The advantage of this method is that such denoising autoencoders grab patterns in the input, which are then at a higher level combined into higher level patterns.
I have been testing various optimizers. The results below show how much of a signal can be recovered. To do that, we take the 1482 dimensional dataset map it through to 21 dimensions and then map it back to 1482 dimensions. After that we compare the original and recovered signal. The error we get is then compared against the most simple predictor; namely the average of the signal.
Now, the first thing we noticed is that although rmsprop style approaches go extremely fast, they do result in an average signal (literally, they just decode the signal by producing the average). Secondly, stochastic data corruption should of course not be combined with an optimizer that compensates for such noise (which the rmsprop and momentum methods do to a certain extend).
In the end, sgd turns out to retain the most 'local patterns', yet converges too slowly. Using adam improves the convergence speed. In this case, because mean-normalizing the data fucks up the results we actually modified adam to calculate the variance correctly.
This is of course all very beginner style stuff. Probably in a year or so I will look back at this and think: what the hell was I thinking when I did that ?
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
A new lovely mix made by undersigned. Throwback 90-ies: https://www.mixcloud.com/5dbb/bulldozer-launched/
Another mix made with BpmDj. It includes isomorphic crossfading. Transitions that include a progressive offset shift between the tracks. Crosslimited fades, tempo changes and a beautiful picture by NASA.
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
And another research article that is full of it. This time an all too often cited article on bottleneck distance matching. Keeping the impact factor of algorithmica at its grasping 0.79 probably. So a retraction of that claim is not to be expected. http://werner.yellowcouch.org/Papers/bottleneck17/index.html Tell me where I sound like a complete ass and I will reformulate it :) I will also not reformulate everything. Thank you.
Recently we tried implementing 'Geometry helps in Bottelneck Matching and Related Problems'. In doing so we figured out that the presented algorithm does not work.
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
And here is a mix for the poor sleepless souls among us: https://www.mixcloud.com/5dbb/the-new-neighbors-arrived/
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
Trying to move away from what I normally mix, this is another BpmDj Demo. Started out with 'What else is there' from Trentemoller. And tried to move out from there, without really succeeding. As picture I chose Paul Magnette, a Belgian politician who had the guts to give CETA the big ****ing middlefinger. We don't need no investor state dispute resolution. This is a big fat thank you.

https://www.mixcloud.com/5dbb/what-else-is-there/
Trying to move away from what I normally mix, this is another BpmDj Demo. Started out with 'What else is there' from Trentemoller. And tried to move out from there, without really succeeding. As picture I chose Paul Magnette, a Belgian politician who had the guts to give CETA the big ****ing middlefinger. We don't need no investor state dispute resolution. This is a big fat thank you.
1
Add a comment...

Werner Van Belle

Shared publicly  - 
 
Oh fuck me. The newest Android studio update butchered my configuration AGAIN. Google VIP's are a bunch of incompetent fucks.
1
Add a comment...

Werner Van Belle

Shared publicly  - 
See a deep blue sea. Mixed with BpmDj: http://bpmdj.yellowcouch.org/
1
Add a comment...
Story
Tagline
Als uw hond kan schrijven.... dan is het eerder een pen.
Links