option to subdivide Library tracks into virtual folders

Bug #1228789 reported by RAWRR
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mixxx
Confirmed
Wishlist
Unassigned

Bug Description

This is an alternative solution to Bug #1179318, and is interchangeable with, but I don't think duplicate of, Bug #671630.

I understand that it may be desirable to compartmentalize "Browse" as an internal file manager instead of a track manager; I just want to be able to subdivide my tracks by artist while retaining the ability to know what I've played already (Played) and to easily send a track to the previewdeck (Preview).

Whether it is by adding function to Library, or by adding function to Browse, I care not.

Tags: library polish
RAWRR (rawrr)
summary: - option to subdivide Library tracks into folders
+ option to subdivide Library tracks into "folders"
summary: - option to subdivide Library tracks into "folders"
+ option to subdivide Library tracks by artist
description: updated
description: updated
description: updated
Revision history for this message
Daniel Schürmann (daschuer) wrote : Re: option to subdivide Library tracks by artist

I do not get your point well.
You can already "subdevide" your library by artist, simply by clicking on the artist header.
Is your request something like Bug #753287?

Revision history for this message
RAWRR (rawrr) wrote :

I would say that what you refer to is "organizing" not "[sub] dividing". Organization is obviously a basic necessity, but sorting by column is the *most* basic. I am indicating to be able to organize more.

I'm suggesting a kind of virtual folder or pseudo-folder system here.

In any given glance at my library, when viewing the Library pane, often the entire pane is filled by dozens of tracks from just one single artist. Scrolling past them to the next artist is twitchy because when there are thousands of tracks, using the scroll bar to move through them happens way too fast to grok all the track names and artists. It also is too delicate, because when the scroll slider resizes proportionately to the number of tracks, as it does in most any browser window, there is just a tiny dot to grab with the mouse or by touch. This is not a bug - any explorer window will present a tiny scroll dot for a folder filled with thousands of files and will make scrolling by scroll bar very twitchy. It is just what happens when the scroll bar resizes proportionately to so many files.

By contrast, when I use, say, the Quick Links option under Browse, it doesn't matter how many tracks I have by that artist, there is *only one object* for each of them (meaning a folder in the tree pane). This means that at a glance, I can see 20+ artists at any given time, as opposed to a very few, generally at most a dozen, in the Library pane. Even if I have a few hundred artists, it is quicker (and has better control) to scroll through a few hundred objects (artist folders) in the left Quick Browse pane than a few thousand objects (tracks) in the Library pane.

One last thing that should be noted is that I meticulously organize all my music files by artist outside of Mixxx. I realize that not everyone does this, and that is yet another reason to include a "folder" or "artist" organizing feature in Library. You could feed Library literally the most enormous jumble of disorganized music files ever, and so long as they had proper ID3 tags, Mixxx could present them in organized "folder" structure.

Wait, one more last thing. If implemented, this same organizing feature could be used to apply to any category currently visible in the columns bar, in other words I may wish to creat a tree in the left pane in Library with virtual folder sorted by Artist, but someone else might prefer to create a virtual folder tree where the folders are Genre, or Year, or even Rating.

Changed in mixxx:
status: New → Confirmed
importance: Undecided → Wishlist
Revision history for this message
Daniel Schürmann (daschuer) wrote :

Thank you for explanations.

Possible solutions are lined out here Bug #661460 and here Bug #671630

An other idea is a tree view embedded in the library table + a "group by" check box in the table header.

RAWRR (rawrr)
summary: - option to subdivide Library tracks by artist
+ option to subdivide Library tracks into virtual folders
RAWRR (rawrr)
description: updated
description: updated
Revision history for this message
RAWRR (rawrr) wrote :

It is similar to Bug #671630! I don't think they are duplicates but it seems clear that either of them would solve the other's issue.

"An other idea is a tree view embedded in the library table + a "group by" check box in the table header."

If you mean to put a separate tree view inside the Library pane (table=pane?), I don't think that works well for the exclusive reason that the Library pane on some screens is already too cramped to view enough track data; another tree would crowd it further. Also, it would be weird to have two tree views.

If you mean to avoid confusion with Browse's tree view, I understand. But still I think all trees in tree pane is smoother and more intuitive. Plus, another thought is this: it seems that the primary reason for Browse view is Bug #952945, similar to why "Load Track to Deck(#)" exists in the File menu. If Bug #952945 is fixed, and it seems we all want it to be eventually, then there won't be a need for two extended tree views of track folders.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Bug #952945 is just about where MIxxx's library scanners is looking for tracks. IMHO this is independent from this issue.

I am unsure what is my favorite. But just to explain the "Group by" idea:

Please Look at:
https://bug263255.bugzilla.mozilla.org/attachment.cgi?id=162759&action=view
and replace "Today" by an artist name.

This was also part of my mock up:
https://launchpadlibrarian.net/102791562/three-column-layout-mock-up.png
And Max's version
https://launchpadlibrarian.net/106182034/mixxx-newLibraryWidget-7.svg

Revision history for this message
RAWRR (rawrr) wrote :

Are either your or Max's plans already underway, or are they both still projections/planning?

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Currently nothing happens with this topic. We have proposed it for GSoC 2013, but finally we have picked other projects.
So you are welcome to review/improve our ideas.

Revision history for this message
RAWRR (rawrr) wrote :

I was just asking so I could gauge how flexible the plans might still b and whether I should be making so many suggestions. If the ball has been rolling for a long time and code has already been written, I wouldn't want to make it more difficult for whoever was doing that.

I logged in now because I just finished a mockup of the layout I'm proposing and hoping for.

I'm not so good at this yet... it took me a long time :/

Attached is image.

Revision history for this message
RAWRR (rawrr) wrote :

This one doesn't have stupid "Title" category for the folders 9_9
I know its just a mockup but I'm fussy about stuff like that >_<

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Thank you for the work. I like your idea.
How did you make the mock up? Inside the MIxxx source?

To me this is pretty much the same than the "Point and Click Filter" from
https://launchpadlibrarian.net/106182034/mixxx-newLibraryWidget-7.svg

What about skip the preference changes and introduce "Artist", "Genre" ... as Tree items?

I do not like to introduce the word "Virtual Folder" because Mixxx has already Virtual Folders = Crates.
A "folder" implies that you can add tracks to it. IMHO Filter describes the feature better.

Later we can easily extend this feature by custom filters like:
"year:>2010 genre:dance"

http://mixxx.org/manual/1.11/chapters/djing_with_mixxx.html#djing-finding-tracks

Revision history for this message
RAWRR (rawrr) wrote :

--"How did you make the mock up? Inside the MIxxx source?"

I wish I knew how to do that. No, I just took a screenshot and very carefully cut and pasted elements using PhotoFiltre 7.

--"To me this is pretty much the same than the "Point and Click Filter"

A little similar maybe? Max's version is a bit cluttered and complicated for my taste... I prefer things very straightforward and simple where possible.

--"What about skip the preference changes and introduce "Artist", "Genre" ... as Tree items?"

I thought about that, it certainly would be more direct. But it also would add more elements to the tree and the UI that might be confusing - novice users might think that there were more tracks there than there are or something. It would be immediately at your fingertips though which would be nice. I personally would consider that arrangement clutter, however, if this was the best way to implement it I would think it an improvement over the current layout definitely.

--"Mixxx has already Virtual Folders"

Maybe "Filtered Categories" or "Virtual Directories" or even "Pseudofolders"? Maybe just plain "Library Categories"? "Filter" to me doesn't imply an object, the visual object that results from enabling the feature. Filter also to me implies that any term can be used, such as wildcards, which would not be the case here. Filter applies to typed searches well. My "Pseudofolder" idea has no typing, only visual objects to click or touch. Or even something as direct and simple as the image attached :)

--"Later we can easily extend this feature by custom filters like: "year:>2010 genre:dance""

Maybe. I'd still want those selections to be out of the way of the gui, to be choices made, set, and left alone in the preferences menu. I could do a mockup for that too but I'd have to think it out a lot more than I'm capable of atm -_-* (tired)

Revision history for this message
RAWRR (rawrr) wrote :

Maybe this?

Revision history for this message
naught101 (naught101) wrote :

Could there be something like the mock-up in comment #9, but instead of the artist being included at the top level of the library, include all grouping types as collapsibleparent folders, and then the actual groups under those? like:

Library
- Missing songs
- Artists
- - Aphex Twin
- - The Avalanches
- - ...
- - Zed's Dead
- Genres
- - EDM
- - Glitch
- - ...
+ Year
+ Composer
- BPM
- - 75-85
- - 85-95
- - ...
- - 165-185
+ ...

Revision history for this message
RAWRR (rawrr) wrote :

So you mean have all grouping types at the top level of the Library?

It sounds as though your idea mirrors Daniel's in comment #10:

"What about skip the preference changes and introduce "Artist", "Genre" ... as Tree items?"

Will you really switch views often enough in a set that you need all the options at your immediate fingertips? I ask because for me, I'll decide which grouping type I prefer and then leave it at that; and since I think the simplest interface possible is best, I'd prefer to have the switching option in this case tucked away in the prefs and keep as few sorting objects showing in the Tree Pane as possible.

Your idea is good, better than the way things are now, and if you really need to be jumping between sort categories, then having them all permanently set into the tree might be a really good option to consider.

I still make the case that the simplest UI is the best, especially in a reflex/coordination intensive environment such as DJing, and that the toggle for which sort type is shown should be kept out of the main interface, again, unless your style of operation requires constant switching.

Also, I want everything to be intuitive a newcomer's first glance and avoid problems as per comment #11: "...it also would add more elements to the tree and the UI that might be confusing - novice users might think that there were more tracks there than there are or something."

So ultimately I feel the same in response to this comment #13 idea as I did in response to Daniel's comment #10 idea: better than the way things are for sure, but I want to push back to make sure additions won't be unnecessary clutter.

Necessary clutter, however, is a different story :)

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Hi RAWRR, your comments sound reasonable.

I don't think wee need such a deep tree structure as proposed by naught101. But one hierarchy like you proposed in #12 is very useful. If we then add the option to make a specific filter sticky "year:>2010 genre:dance" it would be even better.

Did you have a look at Clementine? I like its grouping option an the visual presentation very much.

RAWRR (rawrr)
tags: added: folders polish
Revision history for this message
RAWRR (rawrr) wrote :

Sorry not to answer about Clementine. I don't use Linux much, the computers I have it on tend to be in storage and a pain to get out... I'm afraid Windows is still my daily driver.

tags: removed: folders
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/7179

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.