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
python wrapper for rubberband

pyrubberband A python wrapper for rubberband. For now, this just provides lightweight wrappers for pitch-shifting and time-stretching. All processing

Brian McFee 106 Nov 28, 2022
pedalboard is a Python library for adding effects to audio.

pedalboard is a Python library for adding effects to audio. It supports a number of common audio effects out of the box, and also allows the use of VST3® and Audio Unit plugin formats for third-party

Spotify 3.9k Jan 02, 2023
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
Real-Time Spherical Microphone Renderer for binaural reproduction in Python

ReTiSAR Implementation of the Real-Time Spherical Microphone Renderer for binaural reproduction in Python [1][2]. Contents: | Requirements | Setup | Q

Division of Applied Acoustics at Chalmers University of Technology 51 Dec 17, 2022
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

beetbox 419 Dec 26, 2022
This is an OverPowered Vc Music Player! Will work for you and play music in Voice Chatz

VcPlayer This is an OverPowered Vc Music Player! Will work for you and play music in Voice Chatz Telegram Voice-Chat Bot [PyTGCalls] ⇝ Requirements ⇜

1 Dec 20, 2021
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
Official implementation of A cappella: Audio-visual Singing VoiceSeparation, from BMVC21

Y-Net Official implementation of A cappella: Audio-visual Singing VoiceSeparation, British Machine Vision Conference 2021 Project page: ipcv.github.io

Juan F. Montesinos 12 Oct 22, 2022
Muzic: Music Understanding and Generation with Artificial Intelligence

Muzic is a research project on AI music that empowers music understanding and generation with deep learning and artificial intelligence.

Microsoft 2.6k Dec 30, 2022
Read music meta data and length of MP3, OGG, OPUS, MP4, M4A, FLAC, WMA and Wave files with python 2 or 3

tinytag tinytag is a library for reading music meta data of MP3, OGG, OPUS, MP4, M4A, FLAC, WMA and Wave files with python Install pip install tinytag

Tom Wallroth 577 Dec 26, 2022
Basically Play Pauses the song when it is safe to do so. when you die in a round

Basically Play Pauses the song when it is safe to do so. when you die in a round

AG_1436 1 Feb 13, 2022
This Bot can extract audios and subtitles from video files

Send any valid video file and the bot shows you available streams in it that can be extracted!!

TroJanzHEX 56 Nov 22, 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
Implicit neural differentiable FM synthesizer

Implicit neural differentiable FM synthesizer The purpose of this project is to emulate arbitrary sounds with FM synthesis, where the parameters of th

Andreas Jansson 34 Nov 06, 2022
Port Hitsuboku Kumi Chinese CVVC voicebank to deepvocal. / 筆墨クミDeepvocal中文音源

Hitsuboku Kumi (筆墨クミ) is a UTAU virtual singer developed by Cubialpha. This project ports Hitsuboku Kumi Chinese CVVC voicebank to deepvocal. This is the first open-source deepvocal voicebank on Gith

8 Apr 26, 2022
Terminal-based music player written in Python for the best music in the world 🎵 🎧 💻

audius-terminal-player Terminal-based music player written in Python for the best music in the world 🎵 🎧 💻 Browse and listen to Audius from the com

Audius 21 Jul 23, 2022
Linear Prediction Coefficients estimation from mel-spectrogram implemented in Python based on Levinson-Durbin algorithm.

LPC_for_TTS Linear Prediction Coefficients estimation from mel-spectrogram implemented in Python based on Levinson-Durbin algorithm. 基于Levinson-Durbin

Zewang ZHANG 58 Nov 17, 2022
This is my voice assistant Patric!

voice-assistant This is my voice assistant Patric! You can add can add commands and even modify his name Indice How to use Installation guide How to u

Norbert Gabos 1 Jun 28, 2022
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
A Music Player Bot for Discord Servers

A Music Player Bot for Discord Servers

Halil Acar 2 Oct 25, 2021