WEcho
2.5.2 · GitHub
More about this app
An Android application for global audio effects processing
WEcho
Project Screenshots
![]() |
![]() |
Project Introduction
WEcho is a feature-rich Android Global Audio Effect Processor that works out-of-the-box without requiring root. With Shizuku support, compatibility is even stronger.
It uses Native C++ for DSP algorithms at the core and Flutter for the modern interactive interface, bringing clear, high-quality global audio enhancement to modern Android devices.
Beta Testing & Community
- Tencent QQ: 1087859913
- Discord: https://discord.gg/RZcXwhmUNt
System Requirements
- Android 10 (API level 29+)
- CPU arm-v8a architecture
Core Features
Capture Settings
- Speaker/Headphone Profile Adaptive: Off for unified configuration, on for automatic profile switching based on current device.
- Power Saving: Stop processing WEcho after 60 seconds of silence to save battery life.
- Blacklist: Exclude unsupported apps to prevent audio from being muted.
Audio Effects
- Channel Balance: Adjust left/right channel volume balance for stereo field control
- Global Gain: Adjust overall volume level affecting all audio signals
- Port Compressor: Compress dynamic range, helpful when tracks have large loudness variations
- Threshold, Knee, Ratio, Makeup Gain, Attack, Release
- Diff Surrounding: extend the stereo
- Transient Enhancement: Enhance mid-high frequency transient response for clarity and detail
- Bass Enhancement: Boost low-frequency signals for better bass effect
- Gain controls intensity, center frequency determines enhancement range, Q factor affects bass elasticity
- Even Harmonic Generator: Generate even harmonics for warm analog device texture
- Base, Warm, Sugar three-level adjustment
- Convolution Reverb: Use impulse response files to simulate real-space acoustics
- Supports up to 65536 samples/channel
- Virtual Bass: Optimized for speaker playback, enhance bass perception
- Multi-Band Limiter: Automatic limiting, significantly improves distortion
- Low Cut: Speaker mode only, cut low frequencies below cutoff to allow louder output
- IIR Equalizer: 1-64-band IIR equalizer with peak and shelf filters
- FDN Reverb: FDN reverb effect with adjustable parameters
- WEcho DSP: Generate custom audio effects with C language
- Device Simulation: Use AutoEQ database to simulate other headphones' sound. (Only for reference, not actual quality).
- Bass Resonator: Works with both speakers and headphones. Set center frequency to 150hz, low cat to 120hz, and reduce global gain when playing through speakers, it will have better sound.
Tech Stack
Dart(Flutter) + Kotlin + C++
Installation Guide
Build from Source
- Clone the repository
git clone https://github.com/qumolangmo/wecho.git cd wecho - Install dependencies
flutter pub get - Build the project
flutter build apk - Install to device
flutter install
Install from Release
Go to the Releases page to download the latest APK file, then install it directly to your device.
Usage
- install WEcho, install Shizuku(optional)
- WEcho will query shizuku permission when shizuku installed. just allow it.
- if no shizuku, you can grant WEcho permission by executing adb commands:
adb shell pm grant com.qumolangmo.wecho android.permission.DUMP adb shell appops set com.qumolangmo.wecho PROJECT_MEDIA allow
Dependencies
C++:
- AudioFile: Used to read impulse responses
- fftw3: FFT and IFFT for convolution
Flutter:
- flutter: Cross-platform UI framework
- file_picker: File picker
- shared_preferences: Local storage for temporary configuration
- path_provider: Get application document directory
- smooth_onboarding: Onboarding screen for new users
- window_manager: Window management
- flutter_staggered_grid_view: Staggered grid view component
- dartz: Functional programming, eliminate try-catch
- flutter_code_editer: Code editor for Flutter
- flutter_highlight: Code highlighting for Flutter
Other:
- AutoEQ: Database for device simulation
- shizuku: Root permission for WEcho to access DUMP and PROJECT_MEDIA permissions
Contribution
Welcome to submit Issues!
Features to be Improved
- Replace AudioTrack with AAudio
- AI tuning
- Hi-Ending system
- More audio effect plugins
Contact
- Project address: https://github.com/qumolangmo/wecho
- Issue feedback: https://github.com/qumolangmo/wecho/issues
- Email: [email protected]
Enjoy better audio experience! 🎵
If you like this project, please give it a Star!
License
This software is licensed under the GNU General Public License v3.0.
See the LICENSE file for the complete agreement.
How Shizuku is used
Can self-grant DUMP and PROJECT_MEDIA permissions and apply global audio effects via `pm grant` and `appops set` through Shizuku.
This is an AI-assisted analysis of Shizuku-related usages in the app's public source code. It is best effort, so it may not catch every single usage.
How this app uses Shizuku
WEcho uses Shizuku to self-grant protected permissions that unlock its global audio effects processing.
- Grant audio permissions: grants itself
android.permission.DUMPwith thepm grantshell command through Shizuku and allows thePROJECT_MEDIAapp operation with theappops setshell command through Shizuku, using fixed arguments for its own package. - Discover active playback: uses the granted
DUMPpermission to readdumpsys media.audio_policyoutput and parse other apps media and game audio sessions, keeping the list updated when playback changes. - Mute original output: attaches a silencing
DynamicsProcessingeffect to other apps audio sessions and monitors playback changes, so listeners hear only the captured audio after WEcho processing instead of the original plus the processed copy.
Android APIs or commands used
pm grantappops setdumpsys media.audio_policyAudioManager.registerAudioPlaybackCallbackDynamicsProcessing
Notable details
The same DUMP and PROJECT_MEDIA grants can be applied manually with ADB commands without Shizuku, as documented in the app setup text.
Changelog
What's new for version 2.5.2
- refactored the UI and add theme subsystem.
- add bass resonator effect, it will deliver more impactful bass on the speakers (must run with lower global gain) than wecho virtual bass.
Permissions
9 permissions requested

