Skip to main content

Does audio feature extraction and suggest the feasible volumne for better feeling and experience.

Project description

✔ PyVolSuggester Package

  • A Python package to provide suggestion on volume at which the music audio file needs to be played for better experience and feeling.
  • In backend, it extracts various generic features for particular audio and analyze among them and provide feedback on volumne on it.
  • This tools helps in maintaining goob vibes along the music playout.

image


How this Script works :

  • First user need to download the script and run Volume Suggester.py in the local system.
  • After running it, user will be prompted to select an audio file(mp3 file) using dialog box.
  • Once user has selected the audio file, following feature extraction and analysis graph will be generated at the backend.
    • Generic Audio Features:
      • Channels : (number of channels; 1 for mono, 2 for stereo audio)
      • Sample Width : (number of bytes per sample; 1 means 8-bit, 2 means 16-bit)
      • Frame Rate / Sample Rate : (frequency of samples used (in Hertz))
      • Frame Width : (Number of bytes for each “frame”. One frame contains a sample for each channel.)
      • Audio Length / Duration : (audio file length (in milliseconds))
      • Frame Count : (the number of frames from the sample)
      • Intensity : (loudness in dBFS (dB relative to the maximum possible loudness))
    • Plot on Amplitude over Time Analysis
    • Following Derived Audio Features:
      • Spectogram
      • RMS/Energy Spectogram
      • Zero Crossing Rate
      • Mel Frequency Cepstral Coefficients
      • Mel Frequency Spectogram
      • Chroma Feature
      • Tempogram
  • After these feature extraction is done, user will be able to Play/Pause(using CTRL button) and Stop(using ESC button) the selected song.

Input/Output Deliverables:

- Input: 
    - Single Audio File (.mp3)

- Output:
    - Output Folder consisting of different feature extraction

Features:

  • Implemented following features in the package:
    1. Generic Audio Features:

      • Channels : (number of channels; 1 for mono, 2 for stereo audio)
      • Sample Width : (number of bytes per sample; 1 means 8-bit, 2 means 16-bit)
      • Frame Rate / Sample Rate : (frequency of samples used (in Hertz))
      • Frame Width : (Number of bytes for each “frame”. One frame contains a sample for each channel.)
      • Audio Length / Duration : (audio file length (in milliseconds))
      • Frame Count : (the number of frames from the sample)
      • Intensity : (loudness in dBFS (dB relative to the maximum possible loudness))
    2. Derived Audio Features:

      • Amplitude over Time
      • Spectogram
      • RMS/Energy Spectogram
      • Zero Crossing Rate
      • Mel Frequency Cepstral Coefficients
      • Mel Frequency Spectogram
      • Chroma Feature
      • Tempogram
    3. Player for playing selected audio file

    4. Suggestion on volume on the basis of various feature extraction.


Prerequisites:

  • In order to use this package, one need to ensure the following requirements:
    • Python 3.7 or later installed on your machine.

Package Usage

- from PyVolSuggester import Suggester
    - This command will install all the uninstalled required libraries used in script.
- Suggester.main()
    - This will prompt user for input of audio file selection.
- Suggester.extract()
	- This will extract the generic features of the selected audio file.
- Suggester.play_pause_stop()
	- This will allow user to play, plause and stop the audio file.
- Suggester.amplitude_wave()
	- This will generate a amplitude over time plot and save it as an image to output directory.
- Suggester.spectogram()
	- This will generate a spectogram plot and save it as an image to output directory.
- Suggester.rms_energy_spectogram()
	- This will generate a RMS/Energy Spectogram plot and save it as an image to output directory.
- Suggester.zero_crossing_rate()
	- This will generate a Zero Crossing Rate plot and save it as an image to output directory.
- Suggester.mel_frequency_cepstral_coefficients()
	- This will generate a Mel Frequency Cepstral Coefficients plot and save it as an image to output directory.
- Suggester.mel_frequency_spectogram()
	- This will generate a Mel Frequency Spectogram plot and save it as an image to output directory.
- Suggester.chroma_feature()
	- This will generate a Chroma Feature plot and save it as an image to output directory.
- Suggester.tempogram()
	- This will generate a tempogram plot and save it as an image to output directory.
- Suggester.suggest_volume()
	- This will suggest user the most feasible volume for that particular audio.

Package Installation

pip install PyVolSuggester

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyvolsuggester-0.0.2.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyvolsuggester-0.0.2-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file pyvolsuggester-0.0.2.tar.gz.

File metadata

  • Download URL: pyvolsuggester-0.0.2.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.4

File hashes

Hashes for pyvolsuggester-0.0.2.tar.gz
Algorithm Hash digest
SHA256 3e84c2893d87477a1801d0fe86d9053a39f7e8b7bfab63ecadd0bbfdd990d1f3
MD5 ff0bb8881be54e13e83b17cddce921c3
BLAKE2b-256 c7cf41adb2d4e8bc221c793d96b334da9d36591b362d663e055fdbd79a60de4a

See more details on using hashes here.

File details

Details for the file pyvolsuggester-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: pyvolsuggester-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.4

File hashes

Hashes for pyvolsuggester-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 542449d9160fcd0e6ec1af19bc37b7b119cd6093a4aaa5128e83a9d0ba10f9e7
MD5 216fface39f60c3fa66a6029a8fdea59
BLAKE2b-256 4c280fcc2809cc5febdb5f9145ac8358fba5e202fd2cc530093ec27e0c12d7fe

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page