🌐 Read this in other languages: 🇮🇳 हिन्दी, 🇮🇳 Marathi, 🇹🇷 Türkçe, 🇸🇦 العربية
An (android) app that not only brings better music visualization on the Glyph interface/matrix of Nothing Phones, but also lets you feel your music through the haptic motor AND use the flashlight of your phone as a music visualizer!
(if you don't want to read the rest of the readme)
This android app grabs the live audio stream from your device using sources such as Media Projection, your microphone, the classic Android Visualizer audio stream (not recommened), or another device running the same app, and processes it directly into the glyphs, the haptic motor, or your flashlight. This means you can visualize music from Spotify, YouTube Music, and basically any other app! It can even work on games, and also you can use the microphone to vizualise music that others play, especially at a party!
Click the banner below to join our Discord server and connect with the community:
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 | 20 FPS (limited by the android vizualiser api) | 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 |
Currently these Nothing Phone models are supported:
- Nothing phone (1)
- Nothing phone (2)
- Nothing phone (2a)
- Nothing phone (2a plus)
- Nothing phone (3a)
- Nothing phone (3a pro)
- Nothing phone (3)
- Nothing Phone (4a)
- Nothing Phone (4b)
- Nothing Phone (4a pro) Basically everything exept 3a lite, because nothing didn't provide an sdk for it.
Keep in mind that every android phone is compatible with the haptic, on-screen and flashlight visualizations.
- Deterministic: BNMV is fully deterministic. Unlike the stock implementation (or the copycat ai slop third party apps that copy our thing) that can feel semi-random, our visualizer uses direct mathematical analysis of the audio stream to ensure every light corresponds exactly to a frequency range. This means that if you keep the same settings, the same song will result in the same light pattern.
- A high quality audio stream is captured through the source you select
- 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
- For the Glyph Visualization:
- 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!
- Frequency ranges for each glyph zone are defined in
- For the haptic and the flashlight "visualisation":
- Either the amplitude of the bass frequency is used to determine the brightness of the flashlight or the amplitude of the vibration motor
- Or the derivative of the amplitude of the bass frequancies is used to detect beats, which trigger a pre-processed pattern on either the haptic motor or the flashlight.
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.
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!
- 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.
- Have fun!: Explore the app and its different settings to take full advantage of it!
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!
- Or join our discord server! (Click below)
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
- Privacy: The app only captures the audio stream to power the visualizer. No audio content or personal media is ever stored. The screen is not recorded. It can only be transmitted if you enable the broadcast mode that syncs multiple phones toghether.
- Analytics: This app uses Google Analytics (Firebase) to collect anonymous usage statistics and crash reports. This data helps us understand how the app is used and fix any issues that occur, ultimately improving the experience for everyone.
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 of the project. Developer. |
![]() Cookie |
Phone 3 compatibility Made nice visualizer presets for the Phone (3)'s Glyph Matrix! Thank you! |
![]() Nicouschulas |
Wiki & Documentation Readme & Wiki enhancements. |
![]() SebiAi |
Glyph Specialist Glyphmodder and glyph related help. |
![]() rKyzen (Shivank Dan) |
Made the first version of the app Implemented the real-time music streaming and began the first versions of the android app before leaving the team. |
![]() Earendel |
Documentation Readme enhancements. |
![]() Interlastic |
Tools Discord Bot to try the script easily (deprecated). |
![]() Oliver Lebaigue |
Previous Contributor Enhanced the app + added various nice additions. |
If you read the whole readme, congrats, it takes time to write these things! If you found typos or other problems, feel free to tell us!









