Skip to main content

Python batch tool for signal time/frequency analysis

Project description

Wave Cracker

PyPI Version License Python Versions Ask questions Powered by

Logo

Abstract

Python batch tool for signal time/frequency analysis (input data: CSV or audio files).

Detailed documentation: here

Plot examples

PlotEx1 PlotEx2 PlotEx3

Setup

You can install the package using pip:

python -m pip install wavecracker

Python Dependencies

Module Version required Notes
Python >= 3.7 Preferably > 3.8, ref. documentation for additional details
numpy >= 1.23.5
PyYAML >= 6.0
pandas >= 2.0.1
chardet >= 4.0.0
scipy >= 1.10.1
matplotlib >= 3.7.1
PyWavelets >= 1.4.1 Optional (for wavelet transform)
pydub >= 0.25.1 Optional (for audio file processing)
moviepy >= 1.0.3 Optional (for audio file processing)
psutil >= 5.9.5 Optional (for hardware detailed diagnostics upon boot)

Installing extras (i.e. optional Python dependencies)

The following commands allow the installation of the extras correspondent to the optional dependencies above mentioned:

python -m pip install wavecracker[wavelet]
python -m pip install wavecracker[audio]
python -m pip install wavecracker[hwdiagnostics]

Note that some of these extras may or may not work depending on the Python version. More information in the documentation.

Other Dependencies

As mentioned above, the following directories are needed in the PATH:

  • PYTHON_HOME and PYTHON_HOME/Scripts

Also, but only if you are willing to process audio files, these directories must be present in the PATH, too.

  • The directory containing the FFMPEG executable (6.0 or upper; note, needed only for audio files processing)

Usage

We assume, in the following, that ${PACKAGE_HOME} is where the package is available after the install (typically under ${PYTHON_HOME}/Lib/site-packages/wavecracker or alike).

Open a command shell, make sure your Python install is in the PATH, and enter the following command:

python "${PACKAGE_HOME}/signalanalyzer.py" <arguments>

Many other details can be found in the documentation about:

  • Available command line arguments
  • Parameters in the configuration file

Launching the DEMO

python "${PACKAGE_HOME}/demo/launch_demo.py"

Examples

Example 1 (CSV file processing)

... .. /signalanalyzer.py --input-path ./inputdata.csv --qplot time_1 signal_1 --include-histogram --out-directory ./output_1
Explanation:
  • This would process a csv file named inputdata.csv (in the current directory), looking for a header with columns named time_1 and signal_1, saving the results into a subdirectory of the current directory named output_1.
  • Plots typically generated are Fourier transform and others
  • A CSV is saved (with data about some of the calculated functions).
  • Note: the output directory needs to be existing.
  • A directory named logs has to be created in the current directory for the logs to be saved.

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

wavecracker-9.1.1.tar.gz (81.5 kB view details)

Uploaded Source

Built Distribution

wavecracker-9.1.1-py3-none-any.whl (106.0 kB view details)

Uploaded Python 3

File details

Details for the file wavecracker-9.1.1.tar.gz.

File metadata

  • Download URL: wavecracker-9.1.1.tar.gz
  • Upload date:
  • Size: 81.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for wavecracker-9.1.1.tar.gz
Algorithm Hash digest
SHA256 69bcce6132c8e330a7333400a1d4ecd5146d74a43a3e2742d0d277ee5aff8600
MD5 2a55ec42b094c389f4cf1cdf464740a0
BLAKE2b-256 28abe78de2ba4855ef062a64bc47611ba5f636762a6a2f7b01ee829763fb8ca2

See more details on using hashes here.

File details

Details for the file wavecracker-9.1.1-py3-none-any.whl.

File metadata

  • Download URL: wavecracker-9.1.1-py3-none-any.whl
  • Upload date:
  • Size: 106.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for wavecracker-9.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 09fd958ae2f2117c09dc9f645a106f4148fa90dc784de33a59ae9530bd3368f5
MD5 2391ca3419df460a6f850994ef46ba7e
BLAKE2b-256 650452b38e76b8a657ec87ba2f19fa7ff75070a52a7b4fb56a75cc565d4b7df3

See more details on using hashes here.

Supported by

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