Quick Sign In:  

Forum: VirtualDJ Plugins

Topic: Need help to dev a dsp plug-in to remove silence

Dieses Thema ist veraltet und kann veraltete oder falsche Informationen enthalten.

Hi,

I successfully follow the topic (https://www.virtualdj.com/wiki/Plugins_SDKv8_Example1.html) and make my first plugin with vs2005.
It works in VDJ x64, I can identify silence by checking the buffer of samples values (for example between -0.001f and 0.001f), and replace by another value.
But I would like to remove this sample, so it's like I need to delete entries in the tab buffer. But I don't understand how I could do that.
Finally, I think I could do that by viewing or editing sample source codes. For example, in VDJ there is "backspin" plugin. If i could see the source code, maybe I could adapt this plug-in to jump silences (move forward until next sample with a value whose not in -0.001f and 0.001f range, for example).
I'm not really user friendly with C++. But I would like more documentation about How It Works.

Thank you.
Cédric P.
 

geposted Wed 25 Dec 19 @ 6:50 pm
Ok, now I use SendCommand("beat_juggle 0.01"); in the case of I encounter a 0 sample value... This is a little solution. I will try later do best.
 

geposted Wed 25 Dec 19 @ 8:04 pm
SendCommand("goto +100ms") is better !
 

geposted Wed 25 Dec 19 @ 9:34 pm
djcelPRO InfinityModeratorMember since 2004
Hi,

How many sucessive 'nb' stereo float samples around 0 do you consider to be silent? (equivalent of 500 milliseconds ?) = minimum duration of silence (use samplerate to convert time in number of samples)

You can also convert your amplitude in decibel with the following formula. It's a better approach than -0.001f and +0.001f

#include <cmath> // math.h

double sample_dB = 20 * log10(abs(sample[j]));

and then consider a threshold of - 40 dB for example
 

geposted Mon 06 Jan 20 @ 10:36 pm


(Alte Themen und Foren werden automatisch geschlossen)