GithubHelp home page GithubHelp logo

maotoumao / musicfree Goto Github PK

View Code? Open in Web Editor NEW
6.8K 36.0 531.0 15.05 MB

插件化、定制化、无广告的免费音乐播放器

Home Page: http://musicfree.upup.fun/

License: GNU General Public License v3.0

JavaScript 0.23% Shell 0.02% Ruby 0.14% TypeScript 91.99% Starlark 0.06% Java 5.93% Makefile 0.16% C++ 0.74% Objective-C 0.25% Objective-C++ 0.47%
free music-player plugin react react-native typescript

musicfree's Issues

[FEATURE] 在win11的安卓子系统下使用,APP分辨率不能自适应的问题

注意事项

  • 确保已经阅读过ReadMe并了解本软件的定位
  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
在win11的安卓子系统下使用,APP分辨率不能自适应。希望能自适应下分辨率。可以参考头条APP

Musicfree:
image

今日头条:
image

功能建议

1、希望增加个一个其他app歌单导入的功能
2、希望增加一个云盘备份歌单的功能
3、希望适配ipad之类的大屏设备
4、希望适配一下华为手机负一屏那个音乐软件识别的问题,现在在华为手机负一屏上不能识别咱们的播放软件

[FEATURE] 建议适配电视盒子

注意事项

  • 确保已经阅读过ReadMe并了解本软件的定位
  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
请详细描述一下需求场景,以及可能导致的问题;以及你预期的解决方案或效果

替代方案
如果无法实现,请描述一下预期的替代方案或最低期望

其他信息
是否能提供一些其他的帮助,包括但不限于代码、UI、测试 ... 如果有的话,辛苦描述一下,感谢~

网易云云盘功能

有可能通过插件功能实现网易云盘功能吗,我看网易云api里有这个
不过大多数第三方都没做这个功能就是了

希望能添加按文件夹筛选

希望能添加按文件夹显示的功能,本地文件已经把歌曲按照喜欢的分好类别在各个文件夹,扫描添加后可以按文件夹来听,谢谢

无法下载

为什么无法下载了,上一个版本可以下载,这一个版本无法下载

是否有加入smb或者webdav等协议的支持

对于有nas,并且有些资源的使用者来说,这个功能还是不错的,比较期待加入
主要有两个方向:

  1. smb或webdav在线播放(可以本地简历歌单,然后文件从nas读取)
  2. 从nas把音乐复制到本地,当然这是次选方案,因为有些音乐的体积也不小,大多数场景,需要听高品质的时候,多数都是在家或者有wifi的地方,也就是上一条

[FEATURE] xxxxx

注意事项

  • 确保已经阅读过ReadMe并了解本软件的定位
  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
请详细描述一下需求场景,以及可能导致的问题;以及你预期的解决方案或效果

替代方案
如果无法实现,请描述一下预期的替代方案或最低期望

其他信息
是否能提供一些其他的帮助,包括但不限于代码、UI、测试 ... 如果有的话,辛苦描述一下,感谢~

下载清单能不能保留下载过的歌曲,而不仅仅显示下载中的歌曲,不然下载了什么歌曲都不知道,而且也难找

希望支持 opus 格式

作为一个移动端的本地播放器,希望支持 o · 有损界的冉冉新星 · 全能的瑞士军刀 · 省流助手与存储救星 · pus 格式。(.m4a 容器内的 xHE-AAC 都能播放,没理由不支持 opus 呀)

v0.0.1-alpha.12 现状是不能被扫描到,本地的也不能指定它来播放。

webdave

希望可以加上这么个功能保存个人下载的或者,个人歌单
尤其个人歌单同步,这样就算有版本改动或者软件新装也不受影响。辛苦作者了

在华为平板上的问题

我将该app安装到我的华为pad上,发现样式完全乱套了,插件导入也不能使用,组件ui超出屏幕显示宽度等问题,不知道能不能兼容一下

[BUG] Mac客户端歌词面板显示重合

注意事项

  • 确保该bug可能是软件的本身问题,不是由于插件导致(如搜索结果不全,无法导入等都属于插件问题);如果是插件问题请去对应第三方插件仓库提issue。
  • 确保已经搜索过issue区,并阅读过QA

问题描述
Mac 桌面版,打开桌面歌词后,歌词翻滚时历史歌词与现歌词会产生重合

详细的复现步骤
打开桌面歌词,播放歌曲

预期行为
歌词正常显示

截图
image

其他信息:

  • OS: Mac OS M1
  • 版本号 13.3.1 (22E261)

听书资源搜索

非常感谢大神的musicfree,如果能够搜索喜马拉雅等听书资源 和 spotify 则万分大喜。

建议

您好,请问可以和安卓的全面屏手势做一下适配吗,每次打开软件,界面最底下有小白条,看着很难受,谢谢

IMG_20230130_230523.jpg

[FEATURE] 希望本地歌曲界面可以按不同类别进行划分

注意事项

  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题
  • 确保已经阅读过ReadMe并了解本软件的定位

需求描述
希望可以按歌曲、专辑、歌手等不同形式进行分类,使用不同的tab进行不同类别的分页,下面按字典顺序排列相应的歌曲,右侧如果能带有一个可按字母定位的索引会更方便一些

其他信息
示例ui如图所示:
image

问题及建议

先谢谢作者提供的好软件。两个建议或问题:
指定下载文件夹后,被指定的和原来data文件夹里都下不了,显示下载完成实际没有下载。
保存的歌单应该能导出备份,以供导入。我为了下载问题清楚app数据,只能一个个重新找回来。

1、可以把播放器添加到鸿蒙3.0的下拉控制中心吗。2、想添加为手机默认播放器,但是列表没有本软件

注意事项

  • 确保已经阅读过ReadMe并了解本软件的定位
  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
请详细描述一下需求场景,以及可能导致的问题;以及你预期的解决方案或效果

替代方案
如果无法实现,请描述一下预期的替代方案或最低期望

其他信息
是否能提供一些其他的帮助,包括但不限于代码、UI、测试 ... 如果有的话,辛苦描述一下,感谢~

发现了一个播放本地音乐的BUG

如果在设置里将 ‘使用移动网络播放’功能关闭,然后选择播放下载的本地音乐,一旦手机有别的消息弹出,音乐会终止播放,不会自动播放,点继续播放会提示无法播放,要重新换一首本地音乐重新播放才能继续听歌。

[FEATURE] 加一个歌词翻译吧

注意事项

  • 确保已经阅读过ReadMe并了解本软件的定位
  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
请详细描述一下需求场景,以及可能导致的问题;以及你预期的解决方案或效果

替代方案
如果无法实现,请描述一下预期的替代方案或最低期望

其他信息
是否能提供一些其他的帮助,包括但不限于代码、UI、测试 ... 如果有的话,辛苦描述一下,感谢~

[FEATURE] 希望加一个将歌曲设为铃声的功能

注意事项

  • 确保已经阅读过ReadMe并了解本软件的定位
  • 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
希望像网易云等软件一样可以将歌曲设为铃声

替代方案
如果无法实现,请描述一下预期的替代方案或最低期望

其他信息
示例ui如下:
image

建议

建议:能不能在歌单收藏那里加一个排序,正向排序和逆向排序,这样就能从最近的或者很久以前的开始听。

[FEATURE] 非歌单入口的支持

注意事项

  • [v] 确保已经阅读过ReadMe并了解本软件的定位
  • [v] 确保你的新需求/想法合理合法,且不是因为无解决方案的众口难调导致的个例问题

需求描述
音乐软件的专辑页面和艺人热曲首页逻辑上也是一个歌单,而且是事实上常常被用户拿来直接循环的常用“歌单”。
但由于专辑和艺人页面的接口完全不同于技术意义上的歌单,所以目前插件没有支持

替代方案
目前想要实现相同效果唯有进入第一方软件然后批量制作和目标专辑/艺人hot50完全一样的dummy歌单,很不方便,也很麻烦。因为享用MF来作为集中了的歌单维护中心的话,再去各大app创建站位歌单其实比较折腾。

其他信息
album的接口我试着根据直觉改了一下,包括post和get的差别,url的差别,正则的差别,但始终无法成功。
我看了一下NeteaseNodeAPI那个项目,似乎album:POST接口的协议(至少返回体结构)可能和playlist:GET完全不同。本想着自己解决但是抱着app真的很难调试这些js,想着还是你们这边有完善的调试环境,所以先以issue ticket的形式爆出了。
一些其他类似的app也是偶有这个功能的,即比如识别专辑链接为一个逻辑歌单。确实并不是任何app都有支持,估计兼容协议并不是那么轻松吧。Just a thought。

目标歌单是空的哦

尝试了Q&A中的方法 始终为空。 还有就是QQ音乐现在的歌单似乎无法复制链接

Music Free ios 开发问题记录

Music Free ios 开发问题记录

开发环境

[email protected]官网搭建ios开发环境

我这边的开发环境:

  • 代码库版本:2022.10.30 v0.0.1-alpha.7
  • react-native-cli: 2.0.1
  • react-native: 0.69.6
  • yarn: 1.22.19
  • ruby: 2.7.5
  • cocoapods: 1.11.3
  • node: 16.17.0
  • xcode: 14

开始

yarn install
cd ios && pod install
npx react-native start

# simulator 是你ios的模拟器版本
npx react-native run-ios --simulator='iPhone 14 Pro'

样式问题

  1. textAlignVertical: 'center'只支持安卓,不支持ios,需要用lineHeight替代
  2. 运行到模拟器的时候,可能会出现icon找不到,参考react-native-vector-icons

ios卡片切换背景

由于ios默认卡片动画,在切换下一个card的过程中会显示前一个card,使得滑动看起来很奇怪

卡片切换问题

解决思路:

  1. 每个路由页面里面添加背景色或图片
  2. 使用react-navigation/native,自定义你想要的切换动画

播放问题

问题及解决方案:

  1. 在src/core/musicQueue.ts 399行

    await TrackPlayer.add([track, getFakeNextTrack()]);
    // getFakeNextTrack 方法返回值
    if (track) {
        return produce(track, _ => {
            _.url = '';
        });
    } else {
        return { url: ''};
    }
  • 调用TrackPlayer.add方法,ios版本url必须有值,不能为空,所以播放失败,可以使用

    if (!!LocalMusicSheet.isLocalMusic(track) && !track.url) {
        // 本地音乐url 处理
        return produce(track, _ => {
             _.url = _?.$?.localPath || '';
            // 自动下一首歌标记
            _.nextPalySign = 1;
        });
    }
    // 其他音频url
    return produce(track, _ => {
        _.nextPalySign = 1;
    });
    // 104行的事件里面判断改成
    !(await TrackPlayer.getTrack(evt.nextTrack))?.nextPalySign
  1. ios后台播放需要自己开启支持react-native-track-player

文件权限

  • 由于react-native-documente-picker选择的外部文件,只能在当前app的生命周期使用,重新打开的时候没有

  • 引用 UIDocumentPickerViewController apple开发文档 里面的话在 iOS13 中,用户可以使用. 文档选择器返回目录的安全范围 URL,允许您的应用访问其容器外的内容。在这种情况下,URL 允许您的应用程序递归地访问目录及其所有内容,包括访问您将来添加到目录中的任何新项目。你的应用甚至可以为这个 URL 保存一个书签,让它在下次启动时访问该目录

解决思路:

  1. 因为自己使用(就是懒),我是把需要导入的音乐文件放到app文件夹内就可以访问
  2. 添加书签方案
  3. 虽然文件看不到,但是react-native-track-player可以播放,可以从媒体路径这方面下手
  4. @maotoumao 开发,哈哈~~~

后续

后续可以跟着@maotoumao 大佬主版本开发,完~

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.