# LrcMusicPlayer **Repository Path**: aigc-zh/LrcMusicPlayer ## Basic Information - **Project Name**: LrcMusicPlayer - **Description**: 一个基于PYQT5实现的本地音乐播放器,专注于显示歌曲的内嵌歌词和歌曲信息,支持获取在线歌词,使用SQLite3数据库实现音乐的检索。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 22 - **Created**: 2023-01-09 - **Last Updated**: 2023-01-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LrcMusicPlayer 歌词音乐播放器 [发行版页面](https://gitee.com/pth2000/LrcMusicPlayer/releases) ## 功能介绍 一个基于PYQT5实现的本地音乐播放器,专注于显示歌曲的内嵌歌词和歌曲信息,支持获取在线歌词,使用SQLite3数据库实现音乐的检索。 ![截图](https://gitee.com/pth2000/LrcMusicPlayer/raw/master/images/screenshots.png) ## **重要说明** 本软件的媒体播放基于Qt5的QMediaPlayer类实现,而在Windows平台上,QMediaPlayer的底层为DirectShowPlayerService,如果您的系统没有DirectShow解码器,那么播放器将无法正常运行(表现为不停切换音乐)。因此,您需要检查您的Windows电脑是否安装了LAV解码器。目前主流的LAV解码器分别是: - [Lav Filters](https://github.com/Nevcairiel/LAVFilters/releases) - [K-Lite](http://www.codecguide.com/download_kl.htm) 如果您从未安装过LAV解码器,推荐您安装K-Lite的Basic版本,体积极小,安装快速。 **另外,建议您安装fonts目录下的字体文件,否则必须保证该目录存在才能正常显示软件内字体。** ## 基本特性 基于Python、PyQt5实现。 支持mp3、flac、wav、m4a、ape格式的播放和标签读取。暂时只支持dsd(dsf、dff)格式的标签读取,不支持dsd格式的播放(暂未找到使DirectShow支持dsd的解决方法)。 支持读取歌曲的内嵌歌词及同目录下的lrc文件,优先读取内嵌歌词。歌词格式支持(且建议)主副歌词分行使用相同时间戳,支持在软件中关闭翻译,支持显示日文罗马音,支持从网络获取歌词和评论(不保证准确性)。 支持歌曲专辑封面、元数据信息及歌曲数据的显示。 支持获取文件夹内所有音乐(即包括子文件夹),支持根据音乐的标题、艺术家、专辑、风格进行检索。 播放模式支持列表循环、随机播放、单曲循环。 支持软件配置自动保存,便于下次使用。 支持手动检查更新。 支持自动比对、更新音乐数据库。 ## 使用方法 0. (建议)使用**音乐标签**或其他软件为歌曲添加内嵌歌词,完善歌曲内嵌标签,获得更好的播放体验。 1. 打开软件,点击选择路径按钮(加号按钮),选择你的音乐所在文件夹。之后,软件会将音乐信息载入数据库,这可能需要一点时间。 2. 双击左侧音乐列表即可播放对应音乐,歌曲名称按“标题-艺术家”形式显示。 3. 如果音乐含有带时间戳的歌词,双击歌词所在行可以实现进度跳转。 4. 双击右侧歌曲信息可以实现检索对应信息。 5. 在左上侧搜索栏处可检索对应歌曲。 6. 点击save按钮可将当前列表保存为播放列表。 7. 点击云朵图标切换歌词的获取方式,点击放大镜图标可以切换评论的显示。 ## 注意事项 - 软件将在当前路径下创建setting.json配置文件、songs.db数据库文件,可能导致杀软报警。 - 如果由于歌曲路径变动遇到软件无法打开等问题,可以尝试删除目录下的songs.db及setting.json文件,即可重置播放器设置。 ## 更新日志 - 2022.09.13-1.4.0:新增界面弹性布局,实现窗口自由缩放;优化歌词装填逻辑。 - 2022.09.07-1.3.3:新增日文歌词罗马音显示;优化歌词装填逻辑;修复读取配置可能引发的错误,新增保存歌词显示模式;新增一个辅助打包工具,帮助打包pykakasi的资源文件。 - 2022.08.29-1.3.2:更新同步本地音乐数据和数据库数据的逻辑;修复部分音乐初次扫描无法写入数据库的问题;修复部分错误;优化获取在线数据的代码。 - 2022.08.20-1.3.1:修复在搜索状态下切换至顺序播放导致崩溃的问题;界面调整,新增歌曲音频数据显示;新增hi-res图标显示;修改了元数据解析逻辑,增加对m4a、ape格式的支持(ape封面解析待完善)。 - 2022.08.20-1.3.0:修复上一首按钮的气泡提示;修复音乐无标签导致播放器闪退;优化切歌逻辑,修复跳过第一首的问题;新增按歌曲标题字母排序,支持中文排序;新增音乐播放暂停的淡入淡出效果。 - 2022.06.09-1.2.0:大幅重构项目代码;更新为播放列表的方式播放;新增上一首功能;新增保存播放列表功能;新增更新音乐数据库功能;更改配置文件格式为json;更新界面布局。 - 2022.02.06-1.1.2:优化部分代码形式;移除搜索筛选,更改搜索框样式;增加对同目录下lrc文件的支持;新增软件标题随歌曲改变;新增从本地导入ttf字体;优化更新提示文字。 - 2022.02.05-1.1.1:优化了一些代码和注释,使其更规范;优化列表的显示效果,增加了分割线,修改了悬浮和选中的背景颜色,修改了滚动条步长;实现列表的居中移动;增加检查更新按钮。 - 2022.02.05-1.1.0:新增显示歌曲热门评论;优化数据库相关语句;优化歌曲数量判断逻辑;优化音乐检索逻辑,实现自动搜索,移除搜索按钮。 - 2021.11.07-1.0.0:完成了程序的整体框架,基本实现了目标功能。 ## 目前待解决的问题 - ~~界面缩放功能。~~ - 更好的界面布局设计。 - 优化在线数据的获取与展示。 - APE格式的封面读取。 如果遇到任何bug,或者有任何建议,欢迎留言,谢谢。