2026-01-07 04:09:56 +00:00
2026-01-07 04:09:56 +00:00
2026-01-07 04:09:56 +00:00
2026-01-06 21:59:06 +00:00
2026-01-07 04:09:35 +00:00
2026-01-06 21:59:06 +00:00
2026-01-06 21:59:06 +00:00
2026-01-06 21:59:06 +00:00
2026-01-07 04:09:35 +00:00
2026-01-07 04:09:35 +00:00
2026-01-07 04:09:35 +00:00
2026-01-07 04:09:56 +00:00
2026-01-07 04:09:35 +00:00
2026-01-06 21:59:06 +00:00

AudioImage

AudioImage is a powerful web-based tool for Audio Spectrogram Art and Digital Steganography, powered by a Flask backend and Svelte 5 frontend. It transforms audio into visual art and allows for secure, invisible file embedding.

Features

  • Process Visualizer: A real-time, interactive visualization page that lets you watch and hear the transformation process.
    • Live Waveform: See the audio signal rendered as a glowing, real-time oscilloscope.
    • Step-by-Step Reveal: Watch the spectrogram and steganographic image being constructed layer by layer.
  • Audio Art Generation: Convert MP3/AAC audio files into high-resolution visual spectrograms using Python's librosa and matplotlib.
    • GPU Acceleration: Automatically uses torchaudio and CUDA if available for lightning-fast processing.
  • Steganography Hider: Hide secret audio or image files inside a "host" PNG image effectively using LSB (Least Significant Bit) encoding.
  • Universal Decoder: Decode any image created with AudioImage to retrieve the original hidden files.
  • Secure & Private: All processing happens locally on your server; files are cleaned up automatically.

Requirements

  • Python 3.12+
  • Node.js & npm (or Bun)
  • CUDA-enabled GPU (optional, for faster spectrogram generation)

Installation

  1. Backend Setup:

    cd server
    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
    

    Optional for GPU support:

    pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu118
    

    (Adjust CUDA version as needed)

  2. Frontend Setup:

    # Root directory
    npm install
    npm run build
    

Running the Application

  1. Start the Flask server (which serves the frontend):
    cd server
    source venv/bin/activate
    python app.py
    
  2. Open your browser to http://127.0.0.1:5000.

Architecture

  • Frontend: SvelteKit (SPA mode), Svelte 5 Runes, TailwindCSS.
    • Uses Server-Sent Events (SSE) for real-time progress streaming.
    • Canvas API & Web Audio API for the visualizer.
  • Backend: Flask, NumPy, PIL, Librosa, PyTorch (optional).
  • Integration: Flask serves the static Svelte build for a unified deployment experience.

Usage Notes

  • Supported Audio: MP3, AAC, WAV, FLAC.
  • Supported Images: PNG (host/stego).
  • Visualizer: Visit the /visualizer page or click the link in the header to see the magic happen in real-time.
Description
No description provided
Readme 142 KiB
Languages
Svelte 70.2%
Python 22.4%
CSS 4.2%
Dockerfile 1.8%
HTML 0.7%
Other 0.7%