All Projects → invokemedia → audio-to-svg-waveform

invokemedia / audio-to-svg-waveform

Licence: MIT license
Convert an audio file to a compressed (gzip) SVG waveform

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to audio-to-svg-waveform

Soundwaveform
Generate WaveForms Images from Sounds and Videos on macOS and iOS (Swift 5.x)
Stars: ✭ 119 (+440.91%)
Mutual labels:  waveform
Waveform analysis
Functions and scripts for analyzing waveforms, primarily audio. This is currently somewhat disorganized and unfinished.
Stars: ✭ 193 (+777.27%)
Mutual labels:  waveform
waveplayer.js
An HTML5 based audio player with a waveform view
Stars: ✭ 73 (+231.82%)
Mutual labels:  waveform
Wfplayer
🌊 WFPlayer.js is an audio waveform generator
Stars: ✭ 124 (+463.64%)
Mutual labels:  waveform
Torch Audiomentations
Fast audio data augmentation in PyTorch. Inspired by audiomentations. Useful for deep learning.
Stars: ✭ 164 (+645.45%)
Mutual labels:  waveform
Webgl Plot
A high-Performance real-time 2D plotting library based on native WebGL
Stars: ✭ 200 (+809.09%)
Mutual labels:  waveform
Musicott
JavaFX application that manages and plays music files.
Stars: ✭ 97 (+340.91%)
Mutual labels:  waveform
sl2influxdb
Fetch seedlink data and store them into InfluxDB
Stars: ✭ 28 (+27.27%)
Mutual labels:  waveform
Akwf Free
Adventure Kid Wave Forms are a collection of sampled one cycle waveforms for use in synthesizers or similar sound generators.
Stars: ✭ 179 (+713.64%)
Mutual labels:  waveform
tree-core-ide
The next generation integrated development environment for processor design and verification. It has multi-hardware language support, open source IP management and easy-to-use rtl simulation toolset.
Stars: ✭ 79 (+259.09%)
Mutual labels:  waveform
React D3 Components
D3 Components for React
Stars: ✭ 1,599 (+7168.18%)
Mutual labels:  waveform
Speechrecognizerbutton
UIButton subclass with push to talk recording, speech recognition and Siri-style waveform view.
Stars: ✭ 144 (+554.55%)
Mutual labels:  waveform
Rfxgen
A simple and easy-to-use fx sounds generator
Stars: ✭ 221 (+904.55%)
Mutual labels:  waveform
Waveformseekbar
Android Waveform SeekBar library
Stars: ✭ 120 (+445.45%)
Mutual labels:  waveform
drop
A LÖVE visualizer and music player
Stars: ✭ 17 (-22.73%)
Mutual labels:  waveform
Scituner
SciTuner is a guitar tuner written in Swift3
Stars: ✭ 118 (+436.36%)
Mutual labels:  waveform
Vudio.js
音频可视化展示模块
Stars: ✭ 194 (+781.82%)
Mutual labels:  waveform
klangsynthese
Waveform and Audio Synthesis library in Go
Stars: ✭ 57 (+159.09%)
Mutual labels:  waveform
just waveform
A Flutter plugin to extract waveform data from an audio file suitable for visual rendering.
Stars: ✭ 53 (+140.91%)
Mutual labels:  waveform
Dswaveformimage
Generate waveform images from audio files in iOS
Stars: ✭ 228 (+936.36%)
Mutual labels:  waveform

Audio To SVG Waveform

Convert an audio file to a compressed (gzip) SVG waveform

This module uses a converted version of antonKalinin/audio-waveform-svg-path that runs in Node instead of in the browser.

Usage

const audioToSvgWaveform = require('audio-to-svg-waveform');

audioToSvgWaveform('./infile.mp3', './output.svg.gz')
  .then(() => console.log('complete!'))
  .catch(console.error)

Output

screenshot of the waveform output

The default stroke color is set to #000 but you can override with SVG_STROKE environment variable. But that can be changed with CSS when the file is included inline.

Babel.js

The current, stable version of node.js supports 95% ES6 features.

Also, we build npm modules to run on older versions of Node.js.

We will use Babel.js with ES2015 preset to compile ES6 code to ES5.

Coding style

Airbnb has an excellent style guide for ES6. We will follow the guide and adhere to the recommended coding style.

ESLint

We will use ESLint with Airbnb style and pre-parse our code to detect violations of the style.

Quick Start

  1. Make sure you have recent, stable version of node (>= 6.1.0).
nave use stable
node -v
  1. Clone or download this repo.

  2. Get latest releases of the tools

npm update --save

Commands

Test

npm run test

Lint

npm run lint

Build

npm run build

Run

ES6 code via babel

npm run dev

ES5 code (Transpiled)

npm run build

node lib/

or

npm start

Code Directories

./src - source code, stays in git repo.

./lib - transpiled ES5 code, not saved in git, gets published to npm.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].