Aleks-Levet/better-nothing-music-visualizer

GitHub: Aleks-Levet/better-nothing-music-visualizer

这是一个为Nothing手机Glyph界面提供增强版音乐可视化的Android应用,解决了原生可视化精度低、响应不足的问题。

Stars: 73 | Forks: 9

# 火 Better Nothing 音乐可视化器 [在GitHub上获取](https://github.com/Aleks-Levet/better-nothing-music-visualizer/releases) # 新许可协议,请阅读 ## 书籍 开发通知:考试季! 请注意,**Better Nothing 音乐可视化器**的核心开发将在未来几周内暂时放缓,因为我们的开发者正忙于应对现实中的考试!📚✍️ ### 🛠️ 提交拉取请求的绝佳时机! 无论您想要: * 修复一个未解决的议题 * 添加预设或扩展配置设置 * 清理或优化代码 ## 🌐 使用其他语言阅读此文档: 🇮🇳 [印地语](README_HI.md) 🇮🇳 [马拉地语](README-MR.md) 🇹🇷 [土耳其语](README_TR.md) ## 派对表情 Android 应用来了! 我们已成功从简单的 Python 脚本转变为强大的 Android 应用!它使用 **Media Projection** 捕获设备的实时音频流,并将其直接处理为字形图案。这意味着您可以可视化来自 **Spotify、YouTube Music** 以及任何其他应用的音乐!不再局限于本地文件!该应用不仅能在字形上可视化音乐,还能在振动马达上实现!更多详情即将推出! ## 思考表情 为什么要做这个? 对很多人(包括我)来说,*Nothing 提供的原生字形音乐可视化* 感觉很随意。 即使从技术上讲并非如此,音乐对应的视觉响应也不够明显。除此之外,该功能并未充分利用字形界面的全部潜力。这就是我制作自己的音乐可视化器的原因。 ## ⚖ 原生版 vs. 更好音乐可视化器 | 功能 | Nothing 原生版 | **更好音乐可视化器** | | :--- | :--- | :--- | | **亮度等级** | 约 2 位色深(3 个亮度等级) | **12 位色深(4096 个亮度等级)** | | **帧率** | 约 25 FPS | **60 FPS** | | **精度** | 感觉随机,很难看清其同步方式 | **使用 FFT 分析精确确定每个灯光的亮度** | | **区域** | 使用标准、完整的物理字形 | **独立使用和控制每个字形区段和子区域** | | **可视化方法** | 仅实时 | **实时(延迟低至 20ms)或预处理的音频文件** | ## 🎬 [视频演示与示例](https://github.com/Aleks-Levet/better-nothing-music-visualizer/blob/main/Demo-video-examples.md) ### 看看实际效果![**点击此处轻松浏览我们的视频演示!**](https://github.com/Aleks-Levet/better-nothing-music-visualizer/blob/main/Demo-video-examples.md) ## 📲 支持的 Nothing 手机型号 **目前支持以下型号:** - Nothing phone (1) - 需要通过 *ADB 命令* 为应用启用字形调试模式:`adb shell settings put global nt_glyph_interface_debug_enable 1`。一旦 Nothing 提供其 API 密钥,此问题将得到解决。 - 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 (4a) pro ### ⚙ 工作原理(技术层面) - 捕获高质量音频流 - 使用 **FFT(快速傅里叶变换)** 在 **20 ms 窗口**内对每个 **16.666 ms 帧**(60 FPS)进行频率分析,使可视化更精确 - 每个字形区域的 **频率范围** 在 `zones.config` 中定义,并完全可自定义。 - 每个字形的 **亮度** 由其分配频率范围内找到的 **峰值幅度** 决定 这衡量了不同频率“区域”的响度 - 应用 **仅向下平滑** 以使动画更平滑,同时保持响应性(这是秘诀所在) - 然后就可以在字形上显示了! ## 🛠️ 预设 ### 📖 [**详细的 zones.config 文档**](ZONES_CONFIG.md) ## 📖 如何使用应用? 1. 从发布版本中 **下载最新的 APK**。 2. **授予权限**:应用需要屏幕捕获(Media Projection)和通知访问权限。 3. **开始可视化**:点击“开始”按钮,播放来自任何应用的音乐! 4. **调整延迟**:如果灯光与您的蓝牙音箱或耳机同步不佳,请使用 **Audio** 选项卡来添加或移除延迟。 5. **更改预设**:在 **Glyphs** 选项卡中探索不同的可视化风格,并根据您的喜好调整数值! ## 📖 如何使用 Python 脚本? 我们制作了一个详细的 wiki 页面,详细解释了安装、使用、配置文件以及故障排除部分。您还可以了解如何创建新的预设(目前尚未完成)。[点击此处了解如何将 **musicViz.py** 用作 Python 脚本](https://github.com/Aleks-Levet/better-nothing-music-visualizer/wiki/)。知道最酷的是什么吗?您可以批量转换无限数量的文件,毫无麻烦! ## 🔒 安全性 **VirusTotal 扫描的链接可以在这里找到:** https://www.virustotal.com/gui/url/c92c1ff82b56eb60bfd1e159592d09f949f0ea2d195e01f7f5adbef0e0b0385b?nocache=1 #### 以下是参与此项目的人员:

Aleks-Levet
Founder, Coordinator & Developer
Main idea and owner.

Oliver Lebaigue
Android Developer Enhancing the app + various nice additions

rKyzen
(Shivank Dan)
Android App Developer
Implemented the real-time music stream.

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
标签:Android应用, Glyph接口, Nothing手机, 多媒体处理, 媒体投影, 实时音频流, 振动反馈, 用户体验, 用户界面, 硬件集成, 移动开发, 触觉振动, 逆向工具, 配置自定义, 音乐可视化, 音乐播放, 音频处理, 预设管理