Git Product home page Git Product logo

node-red-contrib-max-audio-classifier's Introduction

node-red-contrib-max-audio-classifier

Audio Classifier Node

This repo contains a Node-RED node that wraps the functionality of the MAX Audio Classifier from the Model Asset eXchange (MAX) in a form that can be used within a Node-RED flow.

The process of creating this node with the Node Generator tool has been documented in a blog post here.

Following the steps outlined in the post, you should be able to create your own nodes to wrap any microservice that is defined with an OpenAPI specification. This is a common format used by tools like Swagger to document many API's, and this process should allow you to create functional nodes for them with little to no code required.

About the MAX Audio Classifier

This model recognizes a signed 16-bit PCM wav file as an input, generates embeddings, applies PCA transformation/quantization, uses the embeddings as an input to a multi-attention classifier and outputs top 5 class predictions and probabilities as output. The model currently supports 527 classes which are part of the Audioset Ontology.

Notes:

To use this node effectively, you'll need a running instance of the MAX Audio Classifier model from the Model Asset eXchange.

Audio Classifier Model

If you'd like more information on how to get started with this and other free, open-source deep learning models from the Model Asset eXchange, visit this tutorial.

Install:

Run the following command in your Node-RED user directory - typically ~/.node-red

$ npm install node-red-contrib-max-audio-classifier

Usage:

Since this node acts essentially as a wrapper around the MAX Audio Classifier model, it provides the same methods defined in that model's OpenAPI specification, documented with Swagger here.

get_metadata

Inputs:

none

Outputs:

payload object
Returns the metadata associated with the model.

predict

Inputs:

payload Buffer
Buffer data of 16-bit PCM wav file.

Outputs:

payload object
Prediction.

Visit this link at the Node-RED Library for an example flow that uses this node in a typical way. In it, you can identify sounds in audio WAV files or through captured audio from your computer's microphone. The clip below shows a file (included in the assets/ directory) being sent to the model, followed by the prediction appearing in the Node-RED debug console on the right-hand side of the screen.

Example Node-RED Flow

NOTE: To use the Microphone and File Inject nodes pictured in this example flow, you'll need to add them to your Node-RED palette by installing the node-red-contrib-browser-utils package. You can accomplish this from within Node-RED by using the Palette Manager or by running the following command in your Node-RED directory as described above:

$ npm install node-red-contrib-browser-utils

For more information, visit the package's page in the Library.

node-red-contrib-max-audio-classifier's People

Contributors

kastentx avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

prachigupta22

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.