一个挺厉害的galgame音乐播放器
galgame吧
全部回复
仅看楼主
level 8
cpurising 楼主
大家玩galgame的时候,也许会注意到,BGM可以一直播放,无论放多久都没有丝毫停止的迹象。这是由于大部分游戏音乐的原文件由 开头+循环部分+循环开头一小段 几个部分组成,通过脚本控制播放:第一遍播放从开头开始,到了音乐末尾,就会跳转到循环部分的开始处继续播放,然后重复这个操作,使得听起来不会停止。
而我们听专辑音乐OST单曲循环时,就几乎不可能有这个效果了。主流播放器的单曲循环,通常不支持上述播放模式,而且两次播放间有显著的暂停。因此,在这些播放器中,播放的音乐通常不能完全让我们完全沉浸在当时的感动里
所以,我做了(好吧AI干了大多数)一个无缝循环播放器,支持游戏中的音乐播放模式,还可以辅助手动寻找循环节甚至自动寻找循环节。主界面如下:
可惜的是,全自动寻找循环节所需库的安装对“网络”有一定要求,我暂时没有解决对策。不过目前的手动辅助匹配也是足够优秀,可以帮助大家快速找到循环点。希望大家玩的开心!
如果有问题,欢迎到我的github仓库提issue或在这个帖子里堆楼!
2026年02月13日 17点02分 1
level 8
cpurising 楼主
使用指南:
1.首先是批量操作的解释:同windows多选文件的操作,即CTRL单个多选,CTRL+A列表内全选,shift范围选择
2.导入:点击左上方“我的歌单”右侧的 + 号添加歌单,歌单有两种:一种只能通过添加删除文件夹管理,另一种只能通过添加删除单个。系统会自动扫描并建立指纹映射。
2026年02月13日 17点02分 2
github仓库:ht删tps://github.com/CPUri删sing/seamless-loop-music 通过网盘分享的文件:seamless_loop_music_v1.8.0.zip 链接: ht删tps://pan.bai除du.com/s/1kDsz9tUvaBIq6ND_1SffLQ 提取码: cpur
2026年02月13日 17点02分
目前只支持电脑端win10及以上的系统
2026年02月13日 18点02分
@cpurising 更新链接 度盘分享的文件:seamless… 链接:htt删ps://pan删.baidu.c删om/s/1y9rd4h9x删ZBf-pZGJ7mZ8Ww?pwd=1l4i
2026年02月14日 00点02分
支持的音乐格式:mp3 ogg wav
2026年02月15日 23点02分
level 8
cpurising 楼主
使用指南:
3.自动匹配:
手动智能匹配:
在主界面输入或按钮修改得到粗略采样点或时间,利用“寻找起点/终点”进行局部相位对齐,通过“确认并试听”跳转到循环终点前3秒比对是否无缝。基本原理如下:
寻找起点:以当前循环终点的前一秒为指纹,在当前循环起点的前后共10秒寻找匹配程度最高处,将此处更新为循环起点
寻找终点:以当前循环起点的后一秒为指纹,在当前循环终点的前后共10秒寻找匹配程度最高处,将此处更新为循环终点
极致匹配(全自动匹配):
首先需要配置好PyMusicLooper,参见[PyMusicLooper/README.md at master · arkrow/PyMusicLooper](htt删ps://gith删ub.com/arkrow/PyMusicLooper) 或看本文档使用指南的第5点。
可以批量选择歌曲进行“极致匹配”,让引擎自动为你寻找最佳循环节位置,然后点击排行榜,在排行榜界面双击选择循环点试听选择。如果这首歌还没有极致匹配过,点击排行榜后,会先对这首歌极致匹配,再进入排行榜界面。 经实际测试,极致匹配不一定准确,可能还需要用户自行手动调整。
匹配问题:
小概率所取的循环点位置不易解码,导致不能正常循环,如过了循环点直接回到歌曲开头停止。此时微调循环点几毫秒即可解决。
2026年02月13日 17点02分 3
level 8
cpurising 楼主
使用指南:
4.歌单歌曲管理:
歌单分为两类:一种只能通过添加删除文件夹管理,另一种只能通过添加删除单个(或歌单里批量选中的)歌曲管理。 右键歌单或歌曲进行相应管理操作,删除,重命名,添加歌单, 支持列表中左键拖拽歌曲,排列你喜欢的播放顺序。
2026年02月13日 17点02分 4
level 8
cpurising 楼主
5.PyMusicLooper安装教程:
uv版:
安装时“网络环境”要求较高,尤其是uv工具的安装。我写下这句话时,真希望所有人都是程序员,或至少懂得双引号内含义。
先进入powershell,输入powershell -ExecutionPolicy ByPass -c "irm htt删ps://astr删除al.sh/uv/install.ps1 | iex",等待下载完成,安装时“网络环境”要求较高。下载完成后
win+R,输入cmd,打开cmd终端,输入uv tool install pymusiclooper,下载。这一步对国内网络要求似乎小一点。完成后。。。
嗯,就可以全自动匹配了。
问题主要在于uv工具的安装。应该也可以通过python的pip安装,只是我目前不会清理之前安装PyMusicLooper的环境变量,而且我的python环境有点乱,这些会对pip安装造成干扰,所以没有尝试。但根据原仓库文档,应当可以。
pip版:
如果已经配置好pip,就进入第二步,几乎一样: pipx install pymusiclooper或 pip install pymusiclooper
2026年02月13日 17点02分 5
经楼下 @某化某 网友的提醒,我验证了一下,应该是可以pip install pymusiclooper配置好环境。 没有python的网友,先到python官网 htt删ps://www.py删thon.org/downloads/ 下载python-manager-25.2.msix 映入眼帘的就是超大的下面两行字 Download the latest version for Windows Download Python install manager(这个处于一个黄色长条按钮中) 点击那个黄色长条按钮,开始下载python-manager-25.2.msix,然后双击打开,选择install,此后一律默认,只输入y。 到最后输入y会打开一个网页,就说明安装完了python。 然后键盘上按下win+R(win也就是键盘上的微软徽标键,四个正方体) 在弹出的窗口输入cmd,黑窗口输入 python -m pip install pymusiclooper 等待下载完成
2026年02月14日 06点02分
@cpurising 如果对一首歌使用“排行榜”功能,没有弹窗让你去下载什么,而是打开了一个排行榜界面或反馈没有循环点,那么就成功了
2026年02月14日 06点02分
level 13
这么强
2026年02月13日 17点02分 6
level 8
cpurising 楼主
细心的网友应该会注意到“恢复AB接缝”的按钮,这个是专门为A/B式循环的音乐准备的。
A\B式循环的音乐分为两个音乐文件,A段即开头,B段即一个刚好完整的循环节。白色相簿2、流星世界演绎者的游戏原始BGM就采取了这种方式
歌单添加A\B式循环歌曲时,会自动设置循环起始点为B段的开头结尾,同时也支持上述两种匹配方式。如果要恢复原循环起始点,可按下“恢复A/B接缝”回到最初状态。
2026年02月13日 17点02分 7
level 8
cpurising 楼主
最后,我要向两个项目表达诚挚的敬意与感谢。
一个是http删s://github.com/melo删dicule/AokanaMusicPlayer,虽然简单,但它是本项目最初的灵感与开发动力。
另一个是htt删ps://github.com/ark删row/PyMusicLooper,我这个项目的极致全自动匹配就是由它提供支持的,相当的牛逼,如果有能力,请大家给这个仓库一个大大的star。
2026年02月13日 17点02分 8
第一个致敬的项目AokanaMusicPlayer,其作者在国内的知乎平台上介绍,原文章是 htt删ps://zhuanlan.zh删ihu.com/p/166415979, 即一个仿《苍彼》无缝循环播放器的诞生。 这个项目循环音乐的思路与技术给了我很大启发,也是由此我萌生了做一个播放galgame音乐播放器的想法
2026年02月14日 10点02分
level 14
[花心]
2026年02月13日 17点02分 9
level 8
cpurising 楼主
项目基本介绍就是这样了,欢迎大家提问!
2026年02月13日 17点02分 10
level 7
强呀!
2026年02月13日 18点02分 11
level 8
cpurising 楼主
使用指南第3点自动匹配补档(触发了什么违禁词?)
3.自动匹配:
手动智能匹配:
在主界面输入或按钮修改得到粗略采样点或时间,利用“寻找起点/终点”进行局部相位对齐,通过“确认并试听”跳转到循环终点前3秒比对是否无缝。基本原理如下:
寻找起点:以当前循环终点的前一秒为指纹,在当前循环起点的前后共10秒寻找匹配程度最高处,将此处更新为循环起点
寻找终点:以当前循环起点的后一秒为指纹,在当前循环终点的前后共10秒寻找匹配程度最高处,将此处更新为循环终点
极致匹配(全自动匹配):
首先需要配置好PyMusicLooper,参见致谢部分第二个仓库的README文档或看本贴使用指南的第5点。
可以批量选择歌曲进行“极致匹配”,让引擎自动为你寻找最佳循环节位置,然后点击排行榜,在排行榜界面双击选择循环点试听选择。如果这首歌还没有极致匹配过,点击排行榜后,会先对这首歌极致匹配,再进入排行榜界面。 经实际测试,极致匹配不一定准确,可能还需要用户自行手动调整。
匹配问题:
小概率所取的循环点位置不易解码,导致不能正常循环,如过了循环点直接回到歌曲开头停止。此时微调循环点几毫秒即可解决。
2026年02月13日 18点02分 12
感谢楼下网友提醒,循环点还有可能就是歌曲的开头结尾,这种情况下就没有办法智能手动辅助匹配了,全自动极致匹配也大概率不能发现
2026年02月14日 02点02分
level 8
芥末墙?!
2026年02月13日 20点02分 13
level 7
[呵呵]
2026年02月13日 23点02分 14
level 1
牛逼
2026年02月13日 23点02分 15
谢谢,不过不知道其他人用起来感觉怎么样
2026年02月13日 23点02分
1 2 3 尾页