PyAbsorp is a python module that has the main focus to help estimate the Sound Absorption Coefficient.

Overview

GitHub release GitHub last commit GitHub issues LICENSE

PyAbsorp logo

This is a package developed to be use to find the Sound Absorption Coefficient through some implemented models, like Biot-Allard, Johnson-Champoux and others. This project is in alpha stage.

Dependencies

PyAbsorp runs under Linux, Windows and MacOS, a Python 3.8.10 installation is needed with the latest Numpy (1.20.3 or higher), Scipy (1.6.3 or higher). Matplotlib is recommended, but not necessary.

Implemented Models

  • Delany-Bazley (with Miki and Allard-Champoux variation)
  • Biot-Allard
  • Johnson-Champoux (with Allard and Lafarge variation)
  • Rayleigh

How to Install

  1. First make sure that you have the package setuptools installed.
  2. Install through pip, by using the following command: pip install git+https://github.com/Toktom/PyAbsorp

Future Objectives

  • More analytic models (Wilson and others).
  • Code validation.
  • Implementation of absorbers models.
  • Theoretical review of the implemented models.
  • English review.

How to contribute

For more details, read the CONTRIBUTING file.

License

This project is under MIT License. Check the license here.

Authors

Contributors

You might also like...
Oliva music bot  help to play vc music
Oliva music bot help to play vc music

OLIVA V2 🎵 Requirements 📝 FFmpeg NodeJS nodesource.com Python 3.7+ PyTgCalls Commands 🛠 For all in group /play - reply to youtube url or song file

This is an AI that runs in the terminal. It is a voice assistant that can do common activities and can also help in your coding doubts like

This is an AI that runs in the terminal. It is a voice assistant that can do common activities and can also help in your coding doubts like

SolidMusic rewrite version, need help

Telegram Streamer Bot This is rewrite version of solidmusic, but it can't be deployed now, help me to make this bot running fast and good. If anyone w

A Simple Script that will help you to Play / Change Songs with just your Voice
A Simple Script that will help you to Play / Change Songs with just your Voice

Auto-Spotify using Voice Recognition A Simple Script that will help you to Play / Change Songs with just your Voice Explore the docs » Table of Conten

Python module for handling audio metadata

Mutagen is a Python module to handle audio metadata. It supports ASF, FLAC, MP4, Monkey's Audio, MP3, Musepack, Ogg Opus, Ogg FLAC, Ogg Speex, Ogg The

Speech recognition module for Python, supporting several engines and APIs, online and offline.

SpeechRecognition Library for performing speech recognition, with support for several engines and APIs, online and offline. Speech recognition engine/

cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding for Python

audioread Decode audio files using whichever backend is available. The library currently supports: Gstreamer via PyGObject. Core Audio on Mac OS X via

Audio fingerprinting and recognition in Python
Audio fingerprinting and recognition in Python

dejavu Audio fingerprinting and recognition algorithm implemented in Python, see the explanation here: How it works Dejavu can memorize audio by liste

Comments
  • Calculate absorption from different frequencies with the same material

    Calculate absorption from different frequencies with the same material

    I've just changed a few lines on the Material class, that no longer requires an array of frequency values to be instantiated. The frequencies are now passed as an argument of the estimate_absorption method, then it is stored for further referencing.

    This allows better coupling with other empirical, analytical and numerical models, since different methods might need a different range of frequencies.

    opened by Chum4k3r 0
  • Improved API

    Improved API

    I've been watching your development for a while now and it is really impressive!

    As my contribution to your wonderful package, I've developed two classes that may help on code modularization and reuse.

    The AirProperties class is a simple interface to the air_properties function, that can have values reset and recalculate its own properties.

    The Material class is an abstraction of a single material being studied, it holds physical information such as its thickness, porosity, tortuosity, etc, and also a reference to air properties and an array of frequencies to be modelled against.

    The great trick here is the estimate_absorption method, which take a simple string with the absorption model name (e.g. "biot-allard" for Biot-Allard model), or even easier, only the model initials (e.g. "db" for Delany-Bazley model).

    It also allows the use of model variations, such as the "allard" or "lafarge" versions of the Johnson-Champoux model by passing the corresponding string argument to the var parameter.

    I've taken the care to document the most of it and work on two example codes that does the same job as the example_johnson_champoux.py code.

    Feel free to question or to make any suggestions. Stay safe, wear mask and keep coding :D

    opened by Chum4k3r 0
  • Johnson-Champoux-Allard-Pride-Lafarge Model Implementation

    Johnson-Champoux-Allard-Pride-Lafarge Model Implementation

    I was trying to implement the Johnson-Champoux-Allard-Pride-Lafarge model, but I'm stuck because I didn't understand how to obtain the Static Viscous Tortuosity and the Static Thermal Tortuosity required in the mathematical formulation. I did some research and I dind't find anything that could help me. I looked into the book Propagation of Sound in Porous Media by Jean F. Allard and Noureddine Atalla but the explanation about Static Viscous Tortuosity it's pretty short and a bit abstract to comprehend, and I didn't find anything around Static Thermal Tortuosity. I was following the version of the mathematical formulation presented in the website APMR (Acoustical Porous Material Recipes). If someone has any suggestion to how I figure it this problem out, please contact me.

    enhancement help wanted 
    opened by Toktom 1
  • Code validation

    Code validation

    Hello I'm Michael the developer of this small project that is just the implementation of some of the models that are use to find the sound absorption coefficient and I'm looking for help. I implemented the models and so far so good. But I need help to validate that all implementations are correct. So, I need people to test the code, check for errors (within the mathematical formulations I implemented) and also suggest improvements to the project, models that could still be implemented, among other related things. So, if you have tested the code, I ask you to leave your feedback below.

    help wanted good first issue 
    opened by Toktom 2
Releases(v0.2.1)
  • v0.2.1(Jun 14, 2021)

    Introduced features: [FEATURE] Delany-Bazley (with Miki and Allard-Champoux variation) model [FEATURE] Biot-Allard model [FEATURE] Johnson-Champoux (with Allard and Lafarge variation) [FEATURE] Rayleigh [FEATURE] Functions for calculating air properties (also has a class alternative, highly recommended) [FEATURE] Material class

    Source code(tar.gz)
    Source code(zip)
Owner
Michael Markus Ackermann
Acoustical Engineering Student
Michael Markus Ackermann
Dataset and baseline code for the VocalSound dataset (ICASSP2022).

VocalSound: A Dataset for Improving Human Vocal Sounds Recognition Introduction Citing Download VocalSound Dataset Details Baseline Experiment Contact

Yuan Gong 58 Jan 03, 2023
A python wrapper for REAPER

pyreaper A python wrapper for REAPER (Robust Epoch And Pitch EstimatoR) Installation pip install pyreaper Demonstration notebnook http://nbviewer.jupy

Ryuichi Yamamoto 56 Dec 27, 2022
Multi-Track Music Generation with the Transfomer and the Johann Sebastian Bach Chorales dataset

MMM: Exploring Conditional Multi-Track Music Generation with the Transformer and the Johann Sebastian Bach Chorales Dataset. Implementation of the pap

102 Dec 08, 2022
Just-Music - Spotify API Driven Music Web app, that allows to listen and control and share songs

Just Music... Just Music Is A Web APP That Allows Users To Play Song Using Spoti

Ayush Mishra 3 May 01, 2022
Synthesia but open source, made in python and free

PyPiano Synthesia but open source, made in python and free Requirements are in requirements.txt If you struggle with installation of pyaudio, run : pi

DaCapo 11 Nov 06, 2022
Pyrogram bot to automate streaming music in voice chats

Pyrogram bot to automate streaming music in voice chats Help If you face an error, want to discuss this project or get support for it, join it's group

Roj 124 Oct 21, 2022
The official repository for Audio ALBERT

AALBERT Here is also the official repository of AALBERT, which is Pytorch lightning reimplementation of the paper, Audio ALBERT: A Lite Bert for Self-

pohan 55 Dec 11, 2022
Algorithmic and AI MIDI Drums Generator Implementation

Algorithmic and AI MIDI Drums Generator Implementation

Tegridy Code 8 Dec 30, 2022
Graphical interface to control granular sound synthesis.

Granular sound synthesis interface SoundGrain is a graphical interface where users can draw and edit trajectories to control granular sound synthesis

Olivier Bélanger 122 Dec 10, 2022
Extract the songs from your osu! libary into proper mp3 form, complete with metadata and album art!

osu-Extract Extract the songs from your osu! libary into proper mp3 form, complete with metadata and album art! Requirements python3 mutagen pillow Us

William Carter 2 Mar 09, 2022
A useful tool to generate chord progressions according to melody MIDIs

Auto chord generator, pure python package that generate chord progressions according to given melodies

Billy Yi 53 Dec 30, 2022
A Music Player Bot for Discord Servers

A Music Player Bot for Discord Servers

Halil Acar 2 Oct 25, 2021
A Simple Script that will help you to Play / Change Songs with just your Voice

Auto-Spotify using Voice Recognition A Simple Script that will help you to Play / Change Songs with just your Voice Explore the docs » Table of Conten

Mehul Shah 1 Nov 21, 2021
MusicBrainz Picard

MusicBrainz Picard MusicBrainz Picard is a cross-platform (Linux/Mac OS X/Windows) application written in Python and is the official MusicBrainz tagge

MetaBrainz Foundation 3k Dec 31, 2022
This is a python package that turns any images into MIDI files that views the same as them

image_to_midi This is a python package that turns any images into MIDI files that views the same as them. This package firstly convert the image to AS

Rainbow Dreamer 4 Mar 10, 2022
A Python library and tools AUCTUS A6 based radios.

A Python library and tools AUCTUS A6 based radios.

Jonathan Hart 6 Nov 23, 2022
Code for paper 'Audio-Driven Emotional Video Portraits'.

Audio-Driven Emotional Video Portraits [CVPR2021] Xinya Ji, Zhou Hang, Kaisiyuan Wang, Wayne Wu, Chen Change Loy, Xun Cao, Feng Xu [Project] [Paper] G

197 Dec 31, 2022
praudio provides audio preprocessing framework for Deep Learning audio applications

praudio provides objects and a script for performing complex preprocessing operations on entire audio datasets with one command.

Valerio Velardo 105 Dec 26, 2022
A rofi-blocks script that searches youtube and plays the selected audio on mpv.

rofi-ytm A rofi-blocks script that searches youtube and plays the selected audio on mpv. To use the script, run the following command rofi -modi block

Cliford 26 Dec 21, 2022
Real-time audio visualizations (spectrum, spectrogram, etc.)

Friture Friture is an application to visualize and analyze live audio data in real-time. Friture displays audio data in several widgets, such as a sco

Timothée Lecomte 700 Dec 31, 2022