Giter Site home page Giter Site logo

Comments (7)

Harinlen avatar Harinlen commented on July 20, 2024

非常感谢您的建议=w=
1、媒体库这个功能是我一开始就想做的,不过受限于个人水平,不是很清楚应该怎么去监视歌曲目录。在程序运行的时候有一个API可以监视。当程序关闭第二次启动的时候,应该怎么去对比之前的差异呢?全部都查一遍固然可以,总觉得有点对不住您的硬盘啊(笑)
不过咱现在回去尽力想这个问题应该怎么解决
2、这个功能现在是以多字段搜索的形式做出来的,原本是想用这个来替代iTunes的智能播放列表,不过看样子应该还是单独做出来。这个功能确实不是很难实现,咱会去做一下的。

然而近期受限于毕业和课程压力(大四竟然还要上课真是令人不爽),暂时不会有更新。还请您原谅=w=以及欢迎更多的反馈=w=

from mu.

wu67 avatar wu67 commented on July 20, 2024

那个媒体库的实现,我有个想法不知道行不行;
就是系统会在打开文件夹时统计有多少个文件嘛,获取那个值然后对比当前数据库的媒体条数,不相同的话就更新一次媒体库呗

from mu.

Harinlen avatar Harinlen commented on July 20, 2024

您的这个想法我考虑过,在这种情况下不是很适用:当媒体库中存在监视文件夹以外的文件的时候,那么就需要每次都更新了。所以我有关自动文件夹媒体库是这样想的:
1、打开软件时候的监视,这个可以靠Qt提供的类:QFileWatcher来完成
2、关闭软件时候的监视。这个是比较难办的情况,也就是我卡住的地方。我是不太希望每次打开软件都扫描一遍那个文件夹(不然您的磁盘那个时候会很累啊)。假设打开的时候可以扫描一遍文件夹,对于新增的文件比较方便处理,那么已经删除的文件比较麻烦。举个例子:比如一个文件夹内有一百个音乐,然后删除了九十九个然后新增了一个,这样的话……需要扫描整个媒体库才能确定哪个文件删掉了。(不过也并不麻烦,这是个解决办法ww)

from mu.

wu67 avatar wu67 commented on July 20, 2024

其实嘛,就我个人看来,这大致上不算问题

  • 媒体库这个概念,严格来讲应该是对若干个音乐文件夹的监视、管理而形成的一个集合;用户手动往普通播放列表里添加的歌曲不能算是它的一部分
  • 其实开启软件时把媒体库全扫一遍,个人表示也是可以接受的;某种意义上来讲,穷举虽然最笨但却最有用

所以

  1. 媒体库只管监视设置好的文件夹就可以了。用户添加的歌曲应该放到普通播放列表里,这与媒体库不相干。
  2. 打开软件时狂读硬盘也无所谓,只要电脑不卡死都能接受,很多人都有固态盘了,一般怎么读盘也不会有太大影响

最后,同作为一只大四汪,我也得回去做毕设了,期待你之后的更新

from mu.

Harinlen avatar Harinlen commented on July 20, 2024

媒体库怎么说呢,其实是看软件本身的实现方法的。比如iTunes中有关媒体库的概念就不是对文件夹监视而形成,而是靠用户手动向里面添加的(这个并不值得称道),然后播放列表是媒体库中文件的子集。这样确实方便于管理(即所有的文件都一定存在于媒体库中),不过这样的话临时添加的音乐也会被扔到媒体库里就很尴尬了。
不过照现在的情况看来,确实是穷举以外很难找到别的办法啊。你说的很有道理。不过这个东西对硬盘的访问量估计也不会那么大(笑),只是读取一下文件列表而已。嗯,看样子不会很困难
最后,毕设加油~=w=~

from mu.

Harinlen avatar Harinlen commented on July 20, 2024

媒体库的功能已经初步实现了。现在已经并入到dev分支中,不久后将会发布。
至于智能播放列表的功能,可能需要再等一个版本了。

from mu.

wu67 avatar wu67 commented on July 20, 2024

^#^静候佳音

from mu.

Related Issues (20)

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.