Git Product home page Git Product logo

musicprocessing.jl's Introduction

MusicProcessing.jl

MusicProcessing.jl is a music and audio processing library for Julia, inspired by librosa. It is not feature complete and in a very early stage of development.

Performance

Thanks to Julia's performance optimizations, it is significantly faster than librosa, a mature library in Python

Imgur

All measurements are done by averaging over 100 repetitions, after one warmup run.

Usage

The following commands will display a graphic visualization and/or an HTML5 <audio> component for playing audio, when run in IJulia.

Loading an audio file

julia> using MusicProcessing, MP3
julia> audio = load("Sour_Tennessee_Red_Sting.mp3")

Converting to a mono audio

julia> audio = mono(a)

Resampling in 22050 Hz

julia> audio = resample(audio, 22050Hz)

Speeding up the audio

julia> speedup(audio, 2)

Pitch-shifting

julia> pitchshift(audio, 4)

Displaying Spectrogram

julia> spectrogram(audio)

Displaying Mel Spectrogram

julia> melspectrogram(audio)

Displaying MFCC

julia> mfcc(audio)

Roadmap

There are a lot to be implemented, including and not limited to:

  • Harmonic Features
  • CQT, Chroma, Tonnetz
  • Rhythmic Features
  • Onset Detection, Beat Detection
  • Melodic Features
  • F0 tracking, multi-pitch tracking
  • Source Separation
  • Harmonic-Percussive Source Separation
  • Performance Tuning, Tests...

musicprocessing.jl's People

Contributors

ashwani-rathee avatar jongwook avatar datseris avatar github-actions[bot] avatar jparcill avatar

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.