Skip to main content

plot AudioNormalizer


This is a normalizer for mp3 and wav files. Its a final project for Havard CS50P.

The approach in this program to normalize audio differs in comparison to most other programs that implement this task. Most normalizers amplify an audio signal until the highest transient reaches 0 dB. The downside of this approach is that the audio signal can only be amplified based on a single maximum transient. In other words, the whole normalizing process depends on one transient, which is inefficient.

This program, however, doesn't depend on a single transient. It rather splits the original signal into four separate signals (left positive, left negative, right positive, and right negative). Then it uses an algorithm that finds several transients that exceed a calculated value based on the audio file's duration and actual volume. For each split signal, a copy is being created, a dummy signal. In the dummy signals, the found transients are turned into the value of zero. The next task is to find the new maximum transient in each modified dummy signal like any other simple normalizer. The new maximum value is then saved for the final amplification.

At this stage, the program finds all amplitudes in the original split signals where the previously found transients are sitting. The split audio signals are then amplified based on the new maximum transient. All amplitudes that exceed (clip) above 0 dB are lowered to 0 dB without manipulating the original signal except for the volume.

Finally, all the amplified split signals are merged together and are saved as the original file name and type. All the ID3 tags, including the album cover, are also maintained in the new normalized file.

As a result, the user gets an audiofile normalized to 0 dB without losing noticeable dynamic range or the overall audio quality.

Installation

pip install audio_normalizer

Usage

import audio_normalizer

audio_normalizer.open_window()

Metadata

Release files for audio-normalizer 1.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for audio-normalizer 1.3.1
File Size Uploaded Provenance
audio_normalizer-1.3.1.tar.gz 22.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for audio-normalizer 1.3.1
File Interpreter ABI Platform
audio_normalizer-1.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 44.1 kB

Release files / audio_normalizer-1.3.1.tar.gz

Download URL audio_normalizer-1.3.1.tar.gz
Size 22.1 kB
Tags Source
SHA-256 checksum
How to use checksums
9201a85625cfc3d89c156ecbca816ec011bbb680761837ec7d0117ec44c82925
BLAKE2b-256 checksum
How to use checksums
621d6e7752d4bedce0beedb65d1fd49c903bf3edbe85b26c660f0e691cf119bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Release files / audio_normalizer-1.3.1-py3-none-any.whl

Download URL audio_normalizer-1.3.1-py3-none-any.whl
Size 22.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d4e583a3fce05b31907bfac506167d8c39555abac5dfa43f5fc69d372fa2a2d9
BLAKE2b-256 checksum
How to use checksums
cbc50f58face520ea0337ddb4acfb3f3619f93ddb59de2e20fd5481c6769d0e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Security for audio-normalizer 1.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page