All Projects → tyiannak → Pyaudioanalysis

tyiannak / Pyaudioanalysis

Licence: apache-2.0
Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects
HTML
75241 projects

Projects that are alternatives of or similar to Pyaudioanalysis

Pyo
Python DSP module
Stars: ✭ 904 (-79.85%)
Mutual labels:  audio, signal-processing
Sincnet
SincNet is a neural architecture for efficiently processing raw audio samples.
Stars: ✭ 764 (-82.97%)
Mutual labels:  audio, signal-processing
Python Acoustics
A Python library aimed at acousticians.
Stars: ✭ 308 (-93.14%)
Mutual labels:  audio, signal-processing
Euterpe
Real-time Audio-to-audio Karaoke Generation System for Monaural Music
Stars: ✭ 19 (-99.58%)
Mutual labels:  audio, signal-processing
Edsp
A cross-platform DSP library written in C++ 11/14. This library harnesses the power of C++ templates to implement a complete set of DSP algorithms.
Stars: ✭ 116 (-97.41%)
Mutual labels:  audio, signal-processing
Nara wpe
Different implementations of "Weighted Prediction Error" for speech dereverberation
Stars: ✭ 265 (-94.09%)
Mutual labels:  audio, signal-processing
Surfboard
Novoic's audio feature extraction library
Stars: ✭ 318 (-92.91%)
Mutual labels:  audio, signal-processing
Snapcast
Synchronous multiroom audio player
Stars: ✭ 4,028 (-10.23%)
Mutual labels:  audio
Nussl
A flexible source separation library in Python
Stars: ✭ 383 (-91.46%)
Mutual labels:  audio
Hedron
Perform live shows with your three.js creations
Stars: ✭ 372 (-91.71%)
Mutual labels:  audio
Tswechat
A WeChat alternative. Written in Swift 5.
Stars: ✭ 3,674 (-18.12%)
Mutual labels:  audio
Supercollider
An audio server, programming language, and IDE for sound synthesis and algorithmic composition.
Stars: ✭ 4,036 (-10.05%)
Mutual labels:  audio
Musig
A shazam like tool to store songs fingerprints and retrieve them
Stars: ✭ 388 (-91.35%)
Mutual labels:  audio
Canaree Music Player
Complete music player published in the Play Store. Heavily relies on Dagger, kotlin coroutines and Clean architecture.
Stars: ✭ 371 (-91.73%)
Mutual labels:  audio
Mystiq
Qt5/C++ FFmpeg Media Converter
Stars: ✭ 393 (-91.24%)
Mutual labels:  audio
Eartrumpet
EarTrumpet - Volume Control for Windows
Stars: ✭ 4,761 (+6.11%)
Mutual labels:  audio
Dx7 Supercollider
My accurate Yamaha DX-7 clone. Programmed in Supercollider.
Stars: ✭ 395 (-91.2%)
Mutual labels:  audio
Duckhunt Js
DuckHunt ported to JS and HTML5
Stars: ✭ 390 (-91.31%)
Mutual labels:  audio
Supercolliderjs
The JavaScript client library for SuperCollider
Stars: ✭ 381 (-91.51%)
Mutual labels:  audio
Midiwriterjs
♬ A JavaScript library which provides an API for programmatically generating and creating expressive multi-track MIDI files and JSON objects.
Stars: ✭ 381 (-91.51%)
Mutual labels:  audio

A Python library for audio feature extraction, classification, segmentation and applications

This is general info. Click here for the complete wiki and here for a more generic intro to audio data handling

News

General

pyAudioAnalysis is a Python library covering a wide range of audio analysis tasks. Through pyAudioAnalysis you can:

  • Extract audio features and representations (e.g. mfccs, spectrogram, chromagram)
  • Train, parameter tune and evaluate classifiers of audio segments
  • Classify unknown sounds
  • Detect audio events and exclude silence periods from long recordings
  • Perform supervised segmentation (joint segmentation - classification)
  • Perform unsupervised segmentation (e.g. speaker diarization) and extract audio thumbnails
  • Train and use audio regression models (example application: emotion recognition)
  • Apply dimensionality reduction to visualize audio data and content similarities

Installation

  • Clone the source of this library: git clone https://github.com/tyiannak/pyAudioAnalysis.git
  • Install dependencies: pip install -r ./requirements.txt
  • Install using pip: pip install -e .

An audio classification example

More examples and detailed tutorials can be found at the wiki

pyAudioAnalysis provides easy-to-call wrappers to execute audio analysis tasks. Eg, this code first trains an audio segment classifier, given a set of WAV files stored in folders (each folder representing a different class) and then the trained classifier is used to classify an unknown audio WAV file

from pyAudioAnalysis import audioTrainTest as aT
aT.extract_features_and_train(["classifierData/music","classifierData/speech"], 1.0, 1.0, aT.shortTermWindow, aT.shortTermStep, "svm", "svmSMtemp", False)
aT.file_classification("data/doremi.wav", "svmSMtemp","svm")

Result: (0.0, array([ 0.90156761, 0.09843239]), ['music', 'speech'])

In addition, command-line support is provided for all functionalities. E.g. the following command extracts the spectrogram of an audio signal stored in a WAV file: python audioAnalysis.py fileSpectrogram -i data/doremi.wav

Further reading

Apart from this README file, to bettern understand how to use this library one should read the following:

@article{giannakopoulos2015pyaudioanalysis,
  title={pyAudioAnalysis: An Open-Source Python Library for Audio Signal Analysis},
  author={Giannakopoulos, Theodoros},
  journal={PloS one},
  volume={10},
  number={12},
  year={2015},
  publisher={Public Library of Science}
}

For Matlab-related audio analysis material check this book.

Author

Theodoros Giannakopoulos, Principal Researcher of Multimodal Machine Learning at the Multimedia Analysis Group of the Computational Intelligence Lab (MagCIL) of the Institute of Informatics and Telecommunications, of the National Center for Scientific Research "Demokritos"

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].