🇮🇳 हिन्दी 🇮🇳 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!
- 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!
The usage is pretty simple and straightforward. Nevertheless, 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 and coordinator, main idea, owner)
- Nicouschulas (Readme & Wiki enhancements)
- rKyzen(a.k.a Shivank Dan)(Android App developer with real time music stream)
- Oliver Lebaigue (Developer)
- SebiAi (Glyphmodder and glyph related help)
- Earendel (Readme enhancements)
- あけ なるかみ (Dev making a Music app with an integration with this script)
- Interlastic (Discord Bot to try the script easily) (deprecated)
