# NightPlayer **Repository Path**: ZYFDroid/NightPlayer ## Basic Information - **Project Name**: NightPlayer - **Description**: Fantastic Music Player Android port. Powered by Xamarin - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2021-01-18 - **Last Updated**: 2025-05-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NightPlayer #### 介绍 隔壁 Fantastic Music Player 的安卓版(~~鸿蒙也能能用~~ 以后应该不能了). Powered by Xamarin #### 获取 ~~去酷安搜索 `NightPlayer` 获取~~ 去右边下release或者自行编译 #### 使用说明 把你的音乐文件放在内部存储根目录下的一个文件夹名为MP3的文件夹中,然后打开软件 #### 如何制作音效文件(1) 1.在音乐目录下创建.musicfx文件夹(前面有个点) 2.新建文本文档,后缀名为eq 3.填入以下内容 ``` 0.7 31,1,6 65,1,6 125,1,6 ``` 4.保存 5.你得到了一个音效文件,效果是重低音加强 6.第一行的数字是总体增益,范围是0-1,可以理解为音量,作用是调低音量防止破音 7.后面的是均衡器,第一个参数是频率中心,取值范围31-16000 8.第二个参数是八度范围,取值1-4,越大覆盖范围越广 9.第三个参数是增益,单位是dB,取值范围是-15 ~ 15 10.音量增益必须在第一行,文件里不能有多余空行,频谱修改可以有任意条 示例文件下载:[低音增强音效.eq](低音增强EQ文件.eq) #### 如何制作音效文件(2) 1. 去隔壁下载 [耳机虚拟环绕声](https://gitee.com/ZYFDroid/SimpleHeadphoneSurroundVirtualization) 2. 当调好之后,点击主页的 导出脉冲响应文件 3. 将得到的wav放在.musicfx文件夹里 #### 如何制作自定义环境噪音 后缀改成nof,扔进.noise文件夹 #### 自定义播放列表 1. 将要创建播放列表的文件加入收藏列表 2. 将音乐目录下的 `收藏.pl` 改个名字 3. 你将获得一个新的播放列表 备注:.pl 文件是播放列表,格式为文本文件,每行一条音乐,内容为音乐文件的相对位置。播放列表中的音乐将会按照文件内的顺序播放,而不是按名称排序。此格式和PC版通用 #### 响度均衡使用说明 通过隔壁 FantasticMusicPlayer仓库的 响度扫描工具生成响度信息,并保存到音乐文件夹根目录 [https://gitee.com/ZYFDroid/fantastic-music-player/tree/master/AudioLoudnessScan](https://gitee.com/ZYFDroid/fantastic-music-player/tree/master/AudioLoudnessScan) #### 局域网UDP控制: 音乐播放器局域网切歌使用说明: 为了通过局域网控制音乐播放器,您需要向特定端口发送特定的数据。以下是各个功能对应的数据和端口: 端口:`38247` 发送数据及功能: - 切到上一首歌曲:发送数据 `0xf0 0x8d 0x19 0x00` - 播放/暂停当前歌曲:发送数据 `0xf0 0x8d 0x19 0x01` - 切到下一首歌曲:发送数据 `0xf0 0x8d 0x19 0x02` - 增加音量:发送数据 `0xf0 0x8d 0x19 0x03` - 减少音量:发送数据 `0xf0 0x8d 0x19 0x04` - 开启/关闭白噪音:发送数据 `0xf0 0x8d 0x19 0x05` - 开启/关闭助眠音频:发送数据 `0xf0 0x8d 0x19 0x06` - 切换到上一文件夹/播放列表:发送数据 `0xf0 0x8d 0x19 0x07` - 切换到下一文件夹/播放列表:发送数据 `0xf0 0x8d 0x19 0x08` 使用说明: 1. 确定手机所在设备的IP地址。 2. 使用UDP协议向该设备的38247端口发送上述数据。 3. 每次发送的数据必须是4个字节,按照上述格式发送对应的控制命令。 请注意,您需要使用支持UDP数据包发送的工具或编程语言来实现这一功能。 #### 多个配置文件 音乐播放器支持多个不同的配置文件,每个配置文件的上次播放位置,音量,播放方式(循环方式,是否随机播放),使用的白噪音和助眠音频,夜间定时播放的默认时常均可以独立设置,方便不同场景下使用不同的配置文件进行播放。 默认情况下,音乐播放器支持3个配置文件。在Android 7.0+系统,且支持Shortcuts的启动器(例如安卓原生,Lawnchairs,ApexLauncher等)上长按桌面图标,将会弹出「默认配置」「配置1」「配置2」等快捷方式,每个快捷方式都是一个独立的配置文件。 若默认的配置文件数量不能够满足您的使用,可以通过发送Intent的方式手动定义更多的快捷方式。发送Intent有两种方法: 一、通过编写一个单独的安卓应用程序 可以通过单独编写一个安卓应用程序调用音乐播放器的LauncherActivity,并传入extra创建或使用配置文件,例如: ```java public void startNightPlayer() { ComponentName cn = new ComponentName ("com.zyfdroid.nightplayer", "com.zyfdroid.nightplayer.LauncherActivity"); Intent i = new Intent(); i.setAction("android.intent.action.MAIN"); i.setComponent(cn); // slot为配置文件名。默认的三个配置文件分别为 default slot1 slot2 // 通过名字可以调用对应的配置文件 i.putExtra("slot", "night"); // 自动播放,默认为false。若传入true,则音乐播放器启动完成后就会开始播放 // i.putExtra("autoplay", true); startActivity(i); } ``` 二、若不想通过编写单独应用的方式,也可以通过第三方软件的形式实现,例如 HTTP Shortcuts。 HTTP Shortcuts: [Waboodoo/HTTP-Shortcuts](https://github.com/Waboodoo/HTTP-Shortcuts/) 在HTTP Shortcuts中新建快捷方式,选择「撰写快捷方式」,在脚本编写中填入: ```javascript sendIntent({ type: 'activity', action: 'android.intent.action.MAIN', packageName: 'com.zyfdroid.nightplayer', className: 'com.zyfdroid.nightplayer.LauncherActivity', extras: [ { name: 'slot', type: 'string', // slot为配置文件名。默认的三个配置文件分别为 default slot // 通过名字可以调 value: 'night', },{ name: 'autoplay', type: 'boolean', // 自动播放,默认为false。若传入true,则音乐播放器启 value: true, }, ], }); ``` 配置完脚本后,即可通过快捷方式启动,也可以将其封装成一个全局JavaScript函数以方便调用。 需要注意的是,配置文件名必须为英文字母+数字的组合,不超过18位。否则可能无法启动。 #### 隐私协议与权限说明 隐私协议 - 本软件不包含服务端,也没有集成第三方服务,不会上传任何信息 权限说明: - 读取内部存储:用于播放音乐文件 - 写入内部存储:用于保存收藏列表(音乐目录下的`收藏.pl` 文件,和PC版通用) - 启动前台服务:用于创建音乐播放服务 - 保持CPU运行(保持唤醒):使锁屏后音乐不会停止播放 - 网络权限:局域网UDP控制