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 and < 3.12, 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-8.7.0.tar.gz (81.3 kB view details)

Uploaded Source

Built Distribution

wavecracker-8.7.0-py3-none-any.whl (105.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for wavecracker-8.7.0.tar.gz
Algorithm Hash digest
SHA256 6b43a0ac20bff62f0e06319214d94e9357979d248b2491f131a325124271b2cf
MD5 277e3e2a1af99278cdc33dc3a97f8460
BLAKE2b-256 f513f962671c2a823790225bf96ba2ee0e7d614e2431c1bb5d15a1b67e375a8c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for wavecracker-8.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ec3a7a8da7c120c245123977ff79ae943bdf85915bab8118da5e7daf34c4e666
MD5 b9c18e44186870006449773aab696b5e
BLAKE2b-256 fa92e54ffcb89d8a29dd0cd69cc0e9a58ee1ce8a0720df791ad7ad9261a5b4ef

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