Part of the better-lyrics ecosystem
🎯 Smart Transcription - Powered by OpenAI's Whisper AI
📺 YouTube Support - Direct download and transcription from YouTube URLs
🎵 LRC Format - Generates synchronized lyrics files
🌈 Beautiful CLI - Colorful, animated terminal interface
⚡ Fast & Efficient - Optimized for speed and accuracy
🔧 Configurable - Multiple output formats and settings
🎨 Multi-language - Support for 100+ languages
Install EchoWave:
curl -sSL https://raw.githubusercontent.com/boidushya/echowave/main/install.sh | bashThe install script automatically detects your platform, downloads dependencies, and sets up EchoWave.
Alternative installation methods:
- 📦 Download from releases - Manual installation
- 🔨 Build from source:
git clone https://github.com/boidushya/echowave.git && cd echowave && ./build.sh
# Transcribe YouTube video
echowave https://youtube.com/watch?v=xyz
# Transcribe local audio file
echowave audio.mp3
# Custom model and language
echowave -model=medium -language=es -output=transcript audio.mp3
# Custom output directory
echowave -output-dir=transcripts https://youtube.com/watch?v=xyz
# Verbose output (show tool outputs)
echowave -verbose audio.mp3
# Disable accuracy heatmap
echowave -heatmap=false audio.mp3| Option | Description | Default |
|---|---|---|
-model |
Whisper model to use | medium |
-language |
Language for transcription | en |
-audio-format |
Audio format for YouTube downloads | mp3 |
-output-dir |
Output directory for files | . |
-output |
Custom output filename (without extension) | Audio filename |
-verbose |
Show detailed output from tools | false |
-heatmap |
Show transcription accuracy heatmap | true |
-help |
Show help message | - |
-version |
Show version information | - |
update |
Update to latest version | - |
| Model | Parameters | Speed | Accuracy |
|---|---|---|---|
tiny |
39M | ⚡⚡⚡⚡⚡ | ⭐⭐ |
base |
74M | ⚡⚡⚡⚡ | ⭐⭐⭐ |
small |
244M | ⚡⚡⚡ | ⭐⭐⭐⭐ |
medium |
749M | ⚡⚡ | ⭐⭐⭐⭐⭐ |
large-v3 |
1550M | ⚡ | ⭐⭐⭐⭐⭐ |
EchoWave supports 100+ languages including:
en (English), es (Spanish), fr (French), de (German), it (Italian), pt (Portuguese), ru (Russian), ja (Japanese), ko (Korean), zh (Chinese), ar (Arabic), hi (Hindi), th (Thai), vi (Vietnamese), id (Indonesian), ms (Malay), tl (Filipino), tr (Turkish), pl (Polish), nl (Dutch), sv (Swedish), da (Danish), no (Norwegian), fi (Finnish)
EchoWave generates two files:
.json- Complete transcription with timestamps.lrc- Synchronized lyrics file compatible with media players
[00:12.34] Hello world, this is a test
[00:18.56] Of the emergency broadcast system
[00:25.78] This is only a test
By default, EchoWave displays a color-coded visualization of transcription accuracy. Use -heatmap=false to disable this feature.
- 🟢 High confidence (>0.8) - Green text indicates words with high transcription confidence
- 🟡 Medium confidence (0.5-0.8) - Yellow text shows moderately confident transcription
- 🔴 Low confidence (<0.5) - Red text highlights uncertain or potentially incorrect words
This feature helps identify sections that may need manual review or correction.
# Process all MP3 files in current directory
for file in *.mp3; do
echowave -output-dir=transcripts \"$file\"
doneThe tool uses optimized Whisper settings:
--temperature 0for consistent output--word_timestamps Truefor precise timing--output_format jsonfor structured data
# Convert to SRT format using external tool
echowave song.mp3 && lrc2srt song.lrc
# Combine with video processing
echowave https://youtube.com/watch?v=xyz
ffmpeg -i video.mp4 -vf subtitles=video.lrc output.mp4# Development build
go run .
# Production build (single platform)
go build -o echowave
# Cross-compilation (all platforms)
./build.sh# Run with test audio
echowave -help
# Test YouTube download
echowave -model=tiny https://www.youtube.com/watch?v=dQw4w9WgXcQ
# Test local file
echowave -model=base test-audio.mp3We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feat/dev) - Commit your changes (
git commit -m 'feat: Added stuff') - Push to the branch (
git push origin feat/dev) - Open a Pull Request
- Write clear, documented code
- Follow Go conventions and best practices
- Add tests for new features
- Update documentation as needed
- Ensure all dependencies are properly checked
This project is licensed under the MIT License - see the LICENSE file for details.
- 🌐 better-lyrics.boidu.dev - Main project website
- 📚 Whisper Documentation
- 📺 yt-dlp Documentation
Made with ❤️ by the better-lyrics team
⭐ Star us on GitHub if you find this useful!