Recent Posts

Pages: 1 2 [3] 4 5 ... 10
Host Forum: Sonic Visualiser / Sonic Visualizer- fine control of zoom
« Last post by rcarroll on May 03, 2016, 12:48:11 »

I'm new to Sonic Visualizer, running on Mac.

With the spectrogram views, I can see the scroll wheels for zoom adjustment, but the results are pretty unpredictable. Is there any other way to set a specific zoom percentage or view range?
Plugin Development / Debugging / Console output
« Last post by Vampire on March 21, 2016, 17:03:38 »
Is there a good way to debug?

I'm trying to do some simple std::cout or std::cerr commands. Where would I see these when running the Sonic Visualiser application and loading my plugin?

or is there another way to inspect elements?
Plugin Development / Re: linking files
« Last post by Vampire on March 21, 2016, 14:44:26 »
thanks Chris! - working well now

I found it useful

1. in Makefile.osx, define a variable
OTHER_SRC_DIR := PathToMyFolder

I actually just added a folder to the 'skeleton' folder example and copied source, but you could add a path to existing source also.

2. in
CXXFLAGS   := <other flags> -I$(OTHER_SRC_DIR)

3. add to: PLUGIN_LDFLAGS   :=  <other stuff> -framework Accelerate

(as I used the Apple internal framework Accelerate)

4. as Chris explained above
PLUGIN_SOURCES := MyPlugin.cpp $(OTHER_SRC_DIR)/ExtraSrcCode.cpp

Then the command

make -f Makefile.osx

will generate required .o objects

I'm not using gmake (any reason to pursue that on Mac OS X?) over 'make -f ...'?

Plugin and Host Announcements / Sonic Annotator v1.4 now available
« Last post by cannam on March 18, 2016, 16:52:36 »
Sonic Annotator is a utility program for batch feature extraction from audio files.  It runs Vamp audio analysis plugins with specified parameters on audio files, and writes the result features in a selection of formats.

Version 1.4 is now available. This is a bugfix release. Changes include:

Front-end changes:

 - Better error reporting, especially for invalid transform files
   and transform-not-found

 - Avoid crashing out when a single plugin (that is not being used)
   can't be loaded because of e.g. an undefined symbol

Bug fixes:

 - Fix (with test) horrible crash with --multiplex option

 - Fix erroneous quantization to 16 bits for coded file types of
   greater bit depth

 - Fix multiple outputs when requesting both summary and non-summary
   for the same output

It appears I did not announce the previous v1.3 release in this forum; for the record, the changes in v1.3 were as follows:

Back-end (feature writer) changes:

 - Add the --csv-digits, --lab-digits, and --jams-digits options to
   control the number of significant figures printed for feature values

 - Update the JAMS writer to JAMS 0.2.0 format

 - Show a more useful error message when user provides a filename
   instead of a transform id to the -d option (happened to me when
   cut-and-pasting command lines and I was quite baffled at first)

Plugin Development / Re: linking files
« Last post by cannam on March 18, 2016, 16:49:58 »
The way the skeleton files in the v2.6 SDK are arranged, the platform-specific stuff goes in Makefile.osx, Makefile.linux etc and the platform-independent stuff goes into, which is included by the other Makefiles.

In most cases, any header and object files you add are going to be needed regardless of platform, and so should go in There are variables PLUGIN_SOURCES and PLUGIN_HEADERS near the top that can be extended with further headers and .c/.cpp files (the .o files will be deduced from the .c/.cpp names) or you can add .o files directly to PLUGIN_OBJECTS further down.

I hope that addresses your question!
Plugin Development / linking files
« Last post by Vampire on March 17, 2016, 19:34:39 »
suppose MyPlugin.h has a dependency on MyClass.h

what's the standard way to link this file in?

[would it be something like:
DEPS = MyClass.h
OBJ = MyPlugin.o MyClass.o
in one of the Makefiles?
Plugin Development / Re: arch flags
« Last post by Vampire on March 17, 2016, 18:02:22 »
as a note for future, I found that for vamp-simple-host (32bit), it's necessary to install


brew install libogg
brew install libvorbis
brew install flac

so that it could read the file formats
Plugin Development / Re: arch flags
« Last post by Vampire on March 17, 2016, 15:45:08 »
it's looking like

if you add in both architectures to the build/Makefile.osx

you can successfully build both i386 and x86_64

I had a typo

but the compilation of the sdk and plugins (make -f build/Makefile.osx plugins) will presumably have to be for both architectures for this to work?

I now have some warning, unused parameters and empty identifiers

one thing - why does a simple 'make' not work?
Plugin Development / Re: arch flags
« Last post by Vampire on March 17, 2016, 15:39:14 »
hi Chris

thanks. So I redid the tutorial

changing this line in build/Makefile.osx

to be BOTH architectures

ARCHFLAGS ?= -mmacosx-version-min=$(MINVERSION) -arch i386 -arch x86_64 -stdlib=libc++

(not just x86_64) which may have been the problem (?)

Now it seems I have built a .dylib.

file structure-wise, do I have a folder with

vamp-plugin-sdk on the same level as my

my-skeleton-tutorial-plugin ?

2. a simple 'make' is unhappy
(Undefined symbols for architecture x86_64:)

make -f Makefile.osx is okay (compiles just i386 perhaps)

I still need to work out what I'm doing architecture-wise


Plugin Development / Re: arch flags
« Last post by cannam on March 17, 2016, 15:23:32 »
Hi there -- thanks for posting. My immediate response was "hang on, surely the Vamp plugin tester is 64-bit by now". It turns out that although I had uploaded a 64-bit OSX build of it, I hadn't updated the Vamp website to link to it!

So the download available at is 64-bit, but the links from are still to the old ones. I'll fix that right away, sorry about that.

It is definitely recommended to make 64-bit plugins these days. The command line you listed looks like it should work if the arch is x86_64; does it?

Pages: 1 2 [3] 4 5 ... 10