Piper is a protocol for driving audio feature extractors.

It defines a data schema and API that can be used for remote feature extraction services, or feature extractors loaded directly into a host application.

Piper is intended to be used

  • as an interface for audio analysis and feature extraction methods for web applications and servers
  • to make Vamp plugins, and feature extractors written in other languages such as Javascript, available through a service API or as loadable modules

The Piper schema is language- and serialisation-independent and the API is transport-independent. We provide initial implementations using JSON in Javascript and C++, and using Cap'n Proto in C++.

This project contains the Piper definition and schema. Implementations and utilities can be found in the subprojects.


Manager: Chris Cannam, Lucas Thompson

Recent activity

2018-08-09 10:45 AM Chris Cannam
Revision 212:d62a69f8d649: Or, we could do this only for Linux since the OSX build should be more up-to-date?
2018-08-09 10:43 AM Chris Cannam
Revision 211:41ec8ed1c2cb: Require capnp v0.6.1, because newer code won't build with the older compilers available in this Travis image