annotate README.md @ 171:395304838d4d

Emscripten 1.37.28+ apparently need these exports explicitly listed
author Chris Cannam <cannam@all-day-breakfast.com>
date Wed, 16 May 2018 11:56:21 +0100
parents 4fc5d24a3272
children
rev   line source
cannam@147 1
cannam@147 2 # Piper Vamp Javascript and JSON Adapter
cannam@147 3
cannam@147 4 Compile your C++ Vamp plugin code into a Javascript module that
cannam@147 5 exports the Piper JSON protocol, for use with Javascript code that
cannam@147 6 uses Piper audio feature extractors.
cannam@147 7
cannam@161 8 If you have an existing Vamp plugin with source code, you can
cannam@161 9 generally use the code here to convert it (with a little tweaking) to
cannam@161 10 a browser/runtime-independent Javascript module that can then be
cannam@161 11 distributed and used in browser applications via the Piper
cannam@161 12 protocol. Limitations on performance and memory usage may apply.
cannam@149 13
cannam@147 14 ## What this repository contains
cannam@147 15
cannam@147 16 * Adapter code to make a Vamp plugin library into a module that
cannam@147 17 exports request-handling functions for the Piper protocol's JSON
cannam@147 18 serialisation. This code is in C++ and can be compiled to a native
cannam@147 19 shared library or to Javascript with Emscripten.
cannam@147 20
cannam@147 21 * Examples of usage with Vamp plugin code, found in the
cannam@147 22 examples/vamp-example-plugins and examples/vamp-test-plugin
cannam@147 23 directories.
cannam@147 24
cannam@170 25 * A utility (piper-vamp-stub-generator) that loads up an existing
cannam@170 26 Vamp plugin and queries it along with its accompanying metadata,
cannam@170 27 writing out a first draft of the converted module's main function
cannam@170 28 code based on what it finds in the plugin.
cannam@170 29
cannam@170 30 * A complete worked example of using that utility and building the
cannam@170 31 resulting module, in a Docker script that can be read as
cannam@170 32 documentation or run within Docker on Linux, found in
cannam@170 33 examples/docker/Dockerfile.
cannam@170 34
cannam@147 35 ## Authors and licensing
cannam@147 36
cannam@147 37 Written by Chris Cannam and Lucas Thompson at the Centre for Digital
cannam@147 38 Music, Queen Mary, University of London.
cannam@147 39
cannam@147 40 Copyright (c) 2015-2017 Queen Mary, University of London, provided
cannam@147 41 under a BSD-style licence. See the file COPYING for details.
cannam@147 42