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
Code to work with wave files!

Code to work with wave files!

Mohammad Dori 3 Jul 15, 2022
Music player - endlessly plays your music

Music player First, if you wonder about what is supposed to be a music player or what makes a music player different from a simple media player, read

Albert Zeyer 482 Dec 19, 2022
Mentos Music Bot With Python

Mentos Music Bot For Any Query Join Our Support Group ๐Ÿ‘ฅ Special Thanks - @OfficialYukki Hey Welcome To Here ๐Ÿ’ซ ๐Ÿ’ซ You Can Make Your Own Music Bot Fo

Cyber Toxic 13 Oct 21, 2022
Code for "Audio-driven Talking Face Video Generation with Learning-based Personalized Head Pose"

Audio-driven Talking Face Video Generation with Learning-based Personalized Head Pose We provide PyTorch implementations for our arxiv paper "Audio-dr

Ran Yi 497 Jan 09, 2023
๐™ฐ ๐™ผ๐šž๐šœ๐š’๐šŒ ๐™ฑ๐š˜๐š ๐™ฒ๐š›๐šŽ๐šŠ๐š๐šŽ๐š ๐™ฑ๐šข ๐šƒ๐šŽ๐šŠ๐š–๐™ณ๐š•๐š ๐Ÿ’–

TeamDltmusic ๐™ฐ ๐™ผ๐šž๐šœ๐š’๐šŒ ๐™ฑ๐š˜๐š ๐™ฒ๐š›๐šŽ๐šŠ๐š๐šŽ๐š ๐™ฑ๐šข ๐šƒ๐šŽ๐šŠ๐š–๐™ณ๐š•๐š ๐Ÿ’– Deploy String Session String Click hear you can find string session OR join He

TeamDlt 5 Jan 18, 2022
Use python MIDI to write some simple music

Use Python MIDI to write songs

ๅฐๅฎ 1 Nov 19, 2021
Stream Music ๐ŸŽต ๐˜ผ ๐™—๐™ค๐™ฉ ๐™ฉ๐™๐™–๐™ฉ ๐™˜๐™–๐™ฃ ๐™ฅ๐™ก๐™–๐™ฎ ๐™ข๐™ช๐™จ๐™ž๐™˜ ๐™ค๐™ฃ ๐™๐™š๐™ก๐™š๐™œ๐™ง๐™–๐™ข ๐™‚๐™ง๐™ค๐™ช๐™ฅ ๐™–๐™ฃ๐™™ ๐˜พ๐™๐™–๐™ฃ๐™ฃ๐™š๐™ก ๐™‘๐™ค๐™ž๐™˜๐™š ๐˜พ๐™๐™–๐™ฉ๐™จ ๐˜ผ๐™ซ๐™–๐™ž๐™ก?

Stream Music ๐ŸŽต ๐˜ผ ๐™—๐™ค๐™ฉ ๐™ฉ๐™๐™–๐™ฉ ๐™˜๐™–๐™ฃ ๐™ฅ๐™ก๐™–๐™ฎ ๐™ข๐™ช๐™จ๐™ž๐™˜ ๐™ค๐™ฃ ๐™๐™š๐™ก๐™š๐™œ๐™ง๐™–๐™ข ๐™‚๐™ง๐™ค๐™ช๐™ฅ ๐™–๐™ฃ๐™™ ๐˜พ๐™๐™–๐™ฃ๐™ฃ๐™š๐™ก ๐™‘๐™ค๐™ž๐™˜๐™š ๐˜พ๐™๐™–๐™ฉ๐™จ ๐˜ผ๐™ซ๐™–๐™ž๐™ก?

Sadew Jayasekara 15 Nov 12, 2022
A music player designed for a University Project.

A music player designed for a University Project. Very flexibe and easy to use, a real life working application with user friendly controls. Hope u enjoy!!

Aditya Johorey 1 Nov 19, 2021
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
Frescobaldi LilyPond Editor

README for Frescobaldi Homepage: http://www.frescobaldi.org/ Main author: Wilbert Berendsen Frescobaldi is a LilyPond sheet music text editor. It aims

Frescobaldi 600 Dec 29, 2022
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
GNOME powered sound conversion

SoundConverter A simple sound converter application for the GNOME environment. It reads anything the GStreamer library can read, and writes Ogg Vorbis

Gautier Portet 188 Dec 17, 2022
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
Library for working with sound files of the format: .ogg, .mp3, .wav

Library for working with sound files of the format: .ogg, .mp3, .wav. By work is meant - playing sound files in a straight line and in the background, obtaining information about the sound file (auth

Romanin 2 Dec 15, 2022
Telegram Voice-Chat Bot Written In Python Using Pyrogram.

Telegram Voice-Chat Bot Telegram Voice-Chat Bot To Play Music From Various Sources In Your Group Support All linux based os. Windows Mac Diagram Requi

TheHamkerCat 314 Dec 29, 2022
Generating a structured library of .wav samples with Python.

sample-library Scripts for generating a structured sample library with Python Requires Docker about Samples are written to wave files in lib/. Differe

Ben Mangold 1 Nov 11, 2021
AudioDVP:Photorealistic Audio-driven Video Portraits

AudioDVP This is the official implementation of Photorealistic Audio-driven Video Portraits. Major Requirements Ubuntu = 18.04 PyTorch = 1.2 GCC =

232 Jan 03, 2023
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
Audio2midi - Automatic Audio-to-symbolic Arrangement

Automatic Audio-to-symbolic Arrangement This is the repository of the project "Audio-to-symbolic Arrangement via Cross-modal Music Representation Lear

Ziyu Wang 24 Dec 05, 2022
Learn chords with your MIDI keyboard !

miditeach miditeach is a music learning tool that can be used to practice your chords skills with a midi keyboard ๐ŸŽน ! Features Midi keyboard input se

Alexis LOUIS 3 Oct 20, 2021