🇮🇳 हिन्दी 🇮🇳 Marathi 🇹🇷 Türkçe
We have successfully moved from the simple Python script to a powerful Android app! It grabs the live audio stream from your device using Media Projection and processes it directly into the glyphs. This means you can visualize music from Spotify, YouTube Music, and basically any other app without manual processing! No more local files only!
For a lot of people (including me), the stock Glyph Music Visualiastion provided by Nothing feels random.
Even if it technically isn’t, the visual response to music just isn’t very obvious. On top of that, the feature isn’t really using the full potential of the Glyph Interface. So that’s why I made my own music visualizer.
| Feature | Nothing Stock | Better Music Visualizer |
|---|---|---|
| Light levels | ~2-bit depth (3 light levels) | 12-bit depth (4096 light levels) |
| Frame Rate | ~25 FPS | 60 FPS |
| Precision | Feels random, it's hard to acually see how it's synced | Uses FFT analysis to precisely determine the intensity of each light |
| Zones | Standard, full physical glyphs are used | Each glyph segment and sub-zone is used and controlled independently |
| Visualisation method | Real-time only | Realtime with down to 20ms latency, or pre-processed audio files |
See the difference in action! Click here to easily browse our video demos!
Currently these models are supported:
- Nothing phone (1)
- Needs glyph debug mode ON for the app, set through an ADB command:
adb shell settings put global nt_glyph_interface_debug_enable 1. This will be fixed once Nothing gives us their API key.
- Needs glyph debug mode ON for the app, set through an ADB command:
- Nothing phone (2)
- Nothing phone (2a)
- Nothing phone (2a plus)
- Nothing phone (3a)
- Nothing phone (3a pro)
- Nothing Phone (4a)
partial support:
- Nothing Phone (4a) pro
- Nothing phone (3)
- A high quality audio stream is captured
- FFT (Fast Fourier Transform) is used to analyze frequencies in a 20 ms window for each 16.666 ms frame (60 FPS), making the visualization more accurate
- Frequency ranges for each glyph zone are defined in
zones.configand are fully customizable. - The brightness of each glyph is defined by the peak magnitude found in its assigned frequency range
This measures how loud different frequency “zones” are - Downward-only smoothing is applied to make the animation smoother while preserving responsiveness (this is the secret sauce)
- Then it's ready to be displayed on the glyphs!
The visualizer's behavior, from frequency ranges to animation smoothing, is entirely controlled by the zones.config file. Whether you want to tweak existing presets or add support for a new phone model, you can find everything you need in our configuration guide.
- Download the latest APK from the releases.
- Grant Permissions: The app needs Screen Capture (Media Projection) and Notification access.
- Start Visualizing: Hit the "Start" button and play music from any app!
- Adjust Latency: If the lights aren't perfectly synced with your Bluetooth speaker or headphones, use the Audio tab to add or remove delay.
- Change Presets: Explore different visualization styles in the Glyphs tab, and tune the values to your liking!
We made a detailed wiki page which explains the installation, usage, configuration files in detail and a troubleshooting section. You can also find out how to make new presets(not yet tho). Just click here to see how to use musicViz.py as a python script. You know what's cool? You can convert an unlimited number of files in bulk without any trouble!
You want to talk or discuss? Bugs, feature requests? Feel free to jump in and join us in the official discord thread in the Nothing server!
Come and help us! Contributions are very welcome! You can:
- Open issues
- Submit pull requests
- Suggest improvements
- Experiment with new visualization ideas
- Create new presets
- Disscuss with the developpers
The link to the VirusTotal scan can be found here:
https://www.virustotal.com/gui/url/c92c1ff82b56eb60bfd1e159592d09f949f0ea2d195e01f7f5adbef0e0b0385b?nocache=1
![]() Aleks-Levet |
Founder, Coordinator & Developer Main idea and owner. |
![]() rKyzen (Shivank Dan) |
Android App Developer Implemented the real-time music stream. |
![]() Oliver Lebaigue |
Android Developer Enhancing the app + various nice additions |
![]() Nicouschulas |
Wiki & Documentation Readme & Wiki enhancements. |
![]() SebiAi |
Glyph Specialist Glyphmodder and glyph related help. |
![]() Earendel |
Documentation Readme enhancements. |
![]() あけ なるかみ (Luke20YT) |
Integrator Creating a Music app with an integration with this script. |
![]() Interlastic |
Tools Discord Bot to try the script easily (deprecated). |
![]() Aleks-Levet |
Founder, Coordinator & Developer Main idea and owner. |
![]() rKyzen (Shivank Dan) |
Android App Developer Implemented the real-time music stream. |
![]() Oliver Lebaigue |
Core Developer Enhancing the app + various nice additions |








