Development Topics > Plugin Development

Coding in Vamp and Compiling it..

(1/2) > >>

haze:
Good day!

I already started coding my project, and used PercusionOnsetDetector  codes and modify it. I will be using audio-signal processing for the plugin.

I would like to ask for help if anybody here got some idea on how to code the actual process of my plugin. To recall, I will have a pre-recorded track and the plugin will get the range of frequencies of the high and low notes. By that, it will output the vocal range which is soprano, bass, etc.

And, what compiler should I use to compile the codes in Vamp SDK?. I can't compile/build it using MS Visual C++ 2005 Express Edition. Do i have to compile something first before i could compile my own codes?..

I've downloaded all that has to be downloaded as stated in the Vamp website.

Thanks ahead.

cannam:
Hazel,

There is a VC++ project file for the Vamp example plugins (VampExamplePlugins.vcproj) in the build folder of the Vamp SDK 2.0 release.  This could easily be modified to build other plugins -- just remove the examples\*.cpp files from the project and replace them with your own.

The project file provided is for Visual C++ 2008 (full or express edition), rather than 2005.  However, I had thought that project files for VC++ projects were backward compatible and could be opened in VC++ 2005 as well -- I know that this is not the case for solutions or .NET projects, but I thought it was true of pure C++ projects like these.  I may be wrong about that.  What sort of errors are you seeing?

I'm not especially familiar with pitch detection algorithms, I'm afraid.  There is quite good overview with several promising-looking references on the Wikipedia page on the subject (http://en.wikipedia.org/wiki/Pitch_detection_algorithm) -- some of those links may be worth a try.

Remember that to carry out a frequency-domain algorithm, you should need only to have your plugin return FrequencyDomain from its getInputDomain() method and the host will provide data that has already been processed through FFT (you just need to make sure you've properly understood the format of the data that is passed to the process() call!).  For time domain methods, return TimeDomain and the host will give you the original audio samples, block by block, in process() calls.


Chris

haze:
Hi,

As i open VampExamplePlugins.vcproj, there opens a Visual Studio Conversion Wizard which says that 'the solution or project was created in a previous version of Visual Studio. It must be converted to the format used by this version...' As I proceed it cannot be converted. What is that?

I used some of the codes of aubio pitch detection plugin, does it also mean that i have to include the aubio shared library? Where could I get the documentation of the aubio plugins? I mean the documentation of their codes.

Hazel

haze:
Also, do i need to add DSP application on my plugin such as filtering the noise? Or Vamp already caters DSP.

haze:
hi..

I got to compile and build .vcproj in MVSC++ 2008.

I would like to ask if it would be possible if I put these sample codes to process() method:

    if(range){
           while(m_minfreq >= 270 && m_maxfreq <= 1100) {
               std::cerr<<"(soprano)"
            }
           while....

--that is by basis of frequency. soprano is in the range of 270-1100 hz. could that be possible?.

thanks.

Hazel

Navigation

[0] Message Index

[#] Next page

Go to full version