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
Noinoi music is smoothly playing music on voice chat of telegram.

NOINOI MUSIC BOT ✨ Features Music & Video stream support MultiChat support Playlist & Queue support Skip, Pause, Resume, Stop feature Music & Video do

2 Feb 13, 2022
OpenClubhouse - A third-part web application based on flask to play Clubhouse audio.

OpenClubhouse - A third-part web application based on flask to play Clubhouse audio.

1.1k Jan 05, 2023
nicfit 425 Jan 01, 2023
Jarvis From Basic to Advance - make a voice assistant similar to JARVIS (in iron man movie)

JARVIS (Basic to Advance) This was my attempt to make a voice assistant similar to JARVIS (in iron man movie) Let's be honest, it's not as intelligent

codesempai 17 Dec 25, 2022
Algorithmic and AI MIDI Drums Generator Implementation

Algorithmic and AI MIDI Drums Generator Implementation

Tegridy Code 8 Dec 30, 2022
Telegram Bot to play music in VoiceChat with Channel Support and autostarts Radio.

VCPlayerBot Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live streams, YouTube videos and telegram media

Abdisamad Omar Mohamed 1 Oct 15, 2021
All-In-One Digital Audio Workstation and Plugin Suite

How to install Windows Mac OS X Fedora Ubuntu How to Build Debian and Ubuntu Fedora All Other Linux Distros Mac OS X Windows What is MusiKernel? MusiK

j3ffhubb 111 Sep 21, 2021
PianoPlayer - Automatic fingering generator for piano scores

PianoPlayer - Automatic fingering generator for piano scores

Marco Musy 571 Jan 02, 2023
Python implementation of the Short Term Objective Intelligibility measure

Python implementation of STOI Implementation of the classical and extended Short Term Objective Intelligibility measures Intelligibility measure which

Pariente Manuel 250 Dec 21, 2022
A voice assistant which can be used to interact with your computer and controls your pc operations

Introduction 👨‍💻 It is a voice assistant which can be used to interact with your computer and also you have been seeing it in Iron man movies, but t

Sujith 84 Dec 22, 2022
📺Headless全自动B站直播录播、切片、上传一体工具

DDRecorder Headless全自动B站直播录播、切片、上传一体工具 感谢 FortuneDayssss/BilibiliUploader 安装指南(Windows) 在Release下载zip包解压。 修改配置文件config.json 双击运行DDRecorder.exe (这将使用co

322 Dec 27, 2022
Audio library for modelling loudness

Loudness Loudness is a C++ library with Python bindings for modelling perceived loudness. The library consists of processing modules which can be casc

Dominic Ward 33 Oct 02, 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
XA Music Player - Telegram Music Bot

XA Music Player Requirements 📝 FFmpeg (Latest) NodeJS nodesource.com (NodeJS 17+) Python (3.10+) PyTgCalls (Lastest) MongoDB (3.12.1) 2nd Telegram Ac

RexAshh 3 Jun 30, 2022
gentle forced aligner

Gentle Robust yet lenient forced-aligner built on Kaldi. A tool for aligning speech with text. Getting Started There are three ways to install Gentle.

1.2k Dec 30, 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
Enhanced Audio Player for Discord

Discodo is an enhanced audio player for discord

Mary 42 Oct 05, 2022
python script for getting mp3 files from yaoutube playlist

mp3-from-youtube-playlist python script for getting mp3 files from youtube playlist. Do your non-tech brown relatives ask you for downloading music fr

Shuhan Mirza 7 Oct 19, 2022
Suyash More 111 Jan 07, 2023
User-friendly Voice Cloning Application

Multi-Language-RTVC stands for Multi-Language Real Time Voice Cloning and is a Voice Cloning Tool capable of transfering speaker-specific audio featur

Sven Eschlbeck 19 Dec 30, 2022