Generate beautiful waveform visualizations from audio files. Choose from bars, mirror, line, or circular styles. Customize colors and export as PNG.
Generate a visual waveform image from any audio file. Upload a track and the tool renders its amplitude as a waveform graphic you can customize and download. Choose colors, dimensions, and style to match your project. Useful for social media posts, video thumbnails, and podcast artwork.
Initializing in your browser…
Trim, cut, and slice audio files with interactive waveform visualization. Drag handles to select portions, use keyboard shortcuts, zoom and pan, preview selection before export. Supports MP3, WAV, OGG, AAC.
Combine multiple audio files into one track. Drag and drop to reorder, merge MP3s, WAVs, and other formats. Create seamless audio compilations online.
Speed up or slow down audio playback from 0.25x to 4x without changing pitch. Perfect for transcription, music practice, podcast speed adjustment, and audiobook listening.
A podcast needs a static waveform image for the episode artwork and audiogram.
Input
episode.mp3 · bars style · brand colour · 1920×400
Output
A PNG/SVG waveform of the full track at the chosen size
The amplitude envelope is sampled across the file and drawn to your dimensions and style, giving a shareable visual that matches the audio. SVG export stays sharp when scaled into video.
Generate a visual waveform image from any audio file. Upload a track and the tool renders its amplitude as a waveform graphic you can customize and download. Choose colors, dimensions, and style to match your project. Useful for social media posts, video thumbnails, and podcast artwork.
The generator decodes your uploaded file (MP3, WAV, OGG, or anything the browser's Web Audio decodeAudioData accepts) and reads only the first (left) audio channel via getChannelData(0). It then splits that PCM data into one column per output bar, where the bar count is Math.floor(canvasWidth / (barWidth + barGap)) - so the default 800px canvas with a 3px bar and 1px gap yields exactly 200 bars. For each bin it walks every sample and keeps the single loudest absolute value (a peak via Math.abs, not an average or RMS), then normalizes the whole set by dividing by the largest peak so the tallest bar always reaches full height. Because each bar collapses thousands of samples into one peak, the result is a static loudness envelope of the track over time, not the individual oscillations of the sound wave.
Four drawing styles are genuinely implemented and switchable: Classic Bars (centered vertical bars filling 90% of canvas height), Mirror (symmetric top-and-bottom bars at 45% height each with a faint rgba(255,255,255,0.2) center line, the SoundCloud look), Line (a 2px round-capped stroked outline mirrored above and below center at 40% height), and Circular (bars radiating outward from a ring whose radius is 60% of the smaller canvas dimension). Color is a horizontal left-to-right linear gradient (createLinearGradient(0,0,width,0)) from a start color (default #3b82f6 blue) to an end color (default #8b5cf6 violet) over a solid background (default #111827). You can toggle rounded bar caps, set bar width (1-10px) and gap (0-5px), and resize the canvas from 400-1600px wide (100px steps) and 100-400px tall (50px steps).
The tool also loads the file into a hidden audio element so you can play it back and scrub via a seek slider; when 'Show progress' is enabled, bars whose index ratio is below the current playhead are repainted in the progress color (default #22c55e green), and the Line style additionally drops a filled 6px dot at the playhead x-position. Export is PNG only - the single Download PNG button calls the canvas toDataURL('image/png') and downloads a file named waveform-[timestamp].png at the exact canvas dimensions. There is no SVG export option exposed in the interface, so plan around raster output. All processing (decodeAudioData, peak extraction, canvas drawing) happens locally in the browser; nothing is uploaded.
This tool generates static images. For animated waveforms, use the Audio Frequency Visualizer or a video editing tool.
Audio is decoded and processed locally with the Web Audio API. Your files are never uploaded to a server.