Open giceli opened 7 months ago
这里的问题是歌曲新增元数据后媒体库没有同步更新 出于效能考虑播放器缓存第一次打开歌曲时读取到的元数据(打开播放列表/文件夹时会读取所有列表曲目) 但是如果之后有修改应该能够在下次打开此播放列表时自动更新才对(可能有什么问题,重新打开软件试试)
在播放列表使用右键,选择“重新载入播放列表”能够解决 高级标签信息每次都是重新读取故不受影响
我试了一下,在其他平台没有什么问题,大概率可能是因为我听音乐 的这个文件是通过 webdav映射到本地磁盘的。而且在这种情况下,听歌听久了之后,还会出现音乐无法播放的情况。 感觉像是网络或者缓存有问题。 通过 重新载入播放列表 确实是可以解决,不过歌曲有点多。载入时间有些长。能不能加个功能,只是重新载入,添加或更新部分音乐,毕竟像这种信息不全的歌曲也只是个例,并不全都是这样。
“启动时自动更新媒体库” 这个功能可以, 将歌曲目录添加到“媒体库目录”列表,程序会在打开后会确认媒体库目录下所有文件修改时间并更新变化的项目
另外因为网络文件io太慢,现在播放列表/文件夹打开时不会确认媒体库已有文件的修改时间是否变化 以免程序启动时好像卡死一样
流程是程序启动,加载当前的播放列表(不确认媒体库已有文件修改时间), 程序可以正常操作的同时启动“媒体库自动更新”,更新媒体库目录下文件的元数据(跳过修改时间没有变化的项目)
想要“媒体库自动更新”的结果应用到“当前的播放列表”需要在更新完成后重新打开当前的播放列表
webdav映射可能不是太稳定,MusicPlayer2没有针对网络文件的太多特殊设计,高延迟的网络io确实有点影响使用体验 “重新载入播放列表”不会跳过修改时间没有变化的项目,事实上仅仅只是一个一个确认修改时间在网络文件中也会花费大量时间 对此特殊设计的程序可以一次要求多个文件以利用webdav的特性弥补这一点,但使用webdav映射的磁盘的程序做不到这一点
我用的samba是正常的(虽然但是smb也只能用在低延迟的本地)
~我一直手动做这个,用一个临时的播放列表处理新歌曲,确保没问题再放进来~
之前都是用Mp3tag批量改的,发现有部分歌曲标签显示不正常 在播放器修改标签前是有ID3v1 ID3v2.3,修改后只剩下ID3v2.3了,应该是之前ID3v1是空值的原因? “启动时自动更新媒体库”开启后还是无效
“启动时自动更新媒体库”是个很被动的功能,程序每次启动后时执行且仅执行一次,之后要重开播放列表才算应用 并且需要搭配正确设置的“媒体库目录”设置才能正常工作 如果你已知修改范围的话对对应列表使用“重新载入播放列表”要更直接一些 也就是MusicPlayer2不会监视文件状态自动更新
我没有注意到截图中存在“标签显示不正常”,看起来第二张是正常reload之后的
修改后只剩下ID3v2.3了
这是Mp3tag的设置,在Tags(标签)->Mpeg下面 可以设置 “读取” “写入” “清除” 的标签种类
奇怪,“启动时自动更新媒体库”我是一直开着的,软件开开关关过很多次也没更新,刚手动点刷新媒体库再重启软件就更新了 谢谢帮忙解决问题
既然已经可以显示‘高级标签信息’了,为什么有些歌曲无法显示作者,曲名时,不直接使用这些信息,而是需要自己按歌曲文件名的方式来操作?