Rockbox Technical Forums

Support and General Use => Audio Playback, Database and Playlists => Topic started by: Nazo on October 22, 2008, 03:48:58 AM

Title: Any way I can get a multi-folder random without playlists?
Post by: Nazo on October 22, 2008, 03:48:58 AM
I'm trying out RockBox on my iAudio X5L and was kind of hoping that I could switch to it as overall it's probably the better choice.  However, one thing that is driving me absolutely insane is the way it won't handle multi-folder randomizing the same way as either of my other Cowon players (a U3 and D2) as it's the only one with RockBox.  The main problem is that it doesn't really seem to like changing directories.  If I enable auto-change directory it helps, but it still wants to play everything in the current directory first before moving on to another (and it seems like it goes in order even.)  With my D2 and U3, I can set to shuffle using the currenty directory, subdirectory, or to use all directories (which is the option I'm using.)

By everything I could find in the manual it seems I'm expected to always use a playlist to get a true randomization.  This is a problem for me because I like to manually select songs from time to time, so I would have to manually start up the playlist again every single time after I do this...  Since I can do this multiple times in just one session it's REALLY annoying.  Finding each song in the playlist is even worse though because I'm using folders to organize things the way I want it and in the playlist it's just all thrown together in a completely unorganized manner that makes finding anything a LOT harder...  Also, I was kind of hoping to replace my U3 with the X5L as my car MP3 player.  Needless to say, I don't need to be having to mess with buttons and digging through long lists to find something when I just want to select one particular song that I know the exact location and name of...  Right now I already have over 300 songs to choose from and that's just given the files off of my 2GB player.  Considering that the only single reason that I want to replace my U3 with this is because I found the U3's 2GB limitation to be a bit troublesome now (I'm getting surprised how long it took me to start actually finding this to be limiting though -- I've had this 2GB U3 since before they started making 4GB U3s) I would end up with even more music on there once I switched...

By all I can tell from the manual, it just really sounds like RockBox simply doesn't want to work this way.  Do I need to just give up and stick with the original firmware?
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Llorean on October 22, 2008, 03:58:30 AM
Try creating your random playlist, and using "queue next" when you want to hear a specific song, rather than trying to find it in the playlist...
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Nazo on October 22, 2008, 04:22:46 AM
So instead of one press once I've found the song I want I have to hold the button for a bit, hit right, hit down five times, then right again to add the song, then back out with left about four times, press down two times, and then finally press right twice to go to the track I wanted all the while with the player at a fair distance from myself such that I would have to focus more to see what I'm doing in all of this despite the fact that I would have to dedicate only a very small part of my attention to the player?  Remember, I want to use this in the car.  Also, won't this make the playlist become progressively less and less random over time as the songs I select the most end up in the list the most?  I want them to only come up more often when I select them more often, not in the normal random process.  I really don't want to have to keep regenerating the playlist every time I make file changes anyway and with this I'd have todo it even more often than that.  With the Cowon firmware on my D2 and U3 I don't have to do any of this stuff, just set it to use all folders and I'm done.  It seems to me that RockBox is meant to be better than stock firmwares though, so surely it can do this much without it having to be such a hassle?  There has to be a better way to do it that I'm just not figuring out yet.  Frankly I found it easier to use the D2 in the car than this would be even...
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Chronon on October 22, 2008, 06:18:33 AM
Rockbox allows more features.  We don't claim that every possible feature is accessible with a minimum of key presses. If flexibility isn't your thing, then it's possible that Rockbox isn't the best match for you.

The beauty of it is that since the source code is accessible, you could change the behavior if you wanted to.
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: GodEater on October 22, 2008, 06:19:07 AM
Whether or not Rockbox is "better" than an original firmware depends entirely on who you are, and what your expectations are. For a lot of people Rockbox provides more features and works more how they want than the Original Firmware of a given player. For some people, it doesn't - that's just all there is to it.

While I agree that the number of button pushes you need to use to get what you want is more than a simple "click click done", it's not quite as many as you've made out.

I've just done it :

1) click select to get to file view.
2) navigate to song (variable number of clicks depending on your folder layout
3) long select
4) right
4) down four
4) right
6) play (return to WPS screen).

Still less than ideal - but a lot less than you've listed.

Note that the queue function does not alter your saved playlist, it puts the track into the list of songs that will be played in memory only, it doesn't change the one on disk.

All that being said, I'm not sure how you expect this to work any other way - how is one click going to get you to the song you want to hear next?

Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Nazo on October 22, 2008, 08:03:23 AM
Rockbox allows more features.  We don't claim that every possible feature is accessible with a minimum of key presses.
Oh don't misunderstand me.  I'm not saying that anyone ever claimed this, just, it's such a basic thing that it apparently can't do...  This is one of the few features that Cowon pretty well hasn't touched hardly even in their original firmwares.

Quote
If flexibility isn't your thing, then it's possible that Rockbox isn't the best match for you.
Oh I'm all for flexibility.  I just don't consider it more flexible than the original firmware in a very important way given its intended use.

Quote
The beauty of it is that since the source code is accessible, you could change the behavior if you wanted to.
This is the only one single thing I don't like about open source projects.  Any time someone has a problem with something about it or needs a feature, they are told that it is open source, so they could change it if they wanted to.  Surely you do realize that not everyone can actually do that?  It's not like we're talking about just changing a single variable somewhere or something.  Most of the time if someone is asking about it they can't really do anything about it.  Only a small percentage of people using such software can really dig down into the code and make what sounds like something of a significant change since I guess it has to change the default automatic playlist behavior.

Whether or not Rockbox is "better" than an original firmware depends entirely on who you are, and what your expectations are. For a lot of people Rockbox provides more features and works more how they want than the Original Firmware of a given player. For some people, it doesn't - that's just all there is to it.
Well, simply put I want to be one of those people because I want some of the features it offers such as Last.fm logging.

Quote
While I agree that the number of button pushes you need to use to get what you want is more than a simple "click click done", it's not quite as many as you've made out.
Looks like the only real difference is you used the play button as a shortcut (I didn't realize you could do this, so I will concede that this takes off two steps esentially -- the pressing left multiple times to back up doesn't really count to me as several seperate steps because it's easy to repeat the same button press and in this case it doesn't have to be accurate since it won't go further back than the main menu) to get back to the while playing screen.  In fact, it left out pressing right to actually change to the track that was just selected.  The main thing though is this requires a fair bit of precision to open a context menu and dig through it every time whereas when one is in the car this level of precision is rather troublesome.

Quote
Note that the queue function does not alter your saved playlist, it puts the track into the list of songs that will be played in memory only, it doesn't change the one on disk.
Now that's nice to hear.  I guess it's not much better though now that I think of it since most of the time it would be using the in-memory list.

Quote
All that being said, I'm not sure how you expect this to work any other way - how is one click going to get you to the song you want to hear next?
Oh no, I don't mean one click INCLUDING finding the song.  I mean one click once the song is found.  With the normal firmware on the U3 and D2 certainly, all I have to do is select the song and that's it.  The player will defer to the directory setting in the configuration for handling which files it will play when the user presses the next button or the current song ends.

Anyway, I was hoping more than anything else that I was just missing something.  Is there really no way to do such a basic thing though?  Right now it builds a playlist just based on the current directory, but it seems like it shouldn't be that hard to use all directories (or it could even cheat a bit and just use the root playlist.  It would be annoying to rebuild it from time to time whenever files are changed, but only moderately so and this method would be easier to implement and faster to actually operate.)  If there's just no way to do this short of spending time and energy I don't really have for learning the programming language, environment, and how this program works well enough to modify its behavior I may just have to give up on it for now, but I really would rather be able to use RockBox as it has some things that could be pretty nice for me.
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: linuxstb on October 22, 2008, 09:49:49 AM
Quote
The beauty of it is that since the source code is accessible, you could change the behavior if you wanted to.
This is the only one single thing I don't like about open source projects.  Any time someone has a problem with something about it or needs a feature, they are told that it is open source, so they could change it if they wanted to.


Don't think that one person speaks for everyone involved in the Rockbox project.  Most of the replies here are people trying to suggest ways you can accomplish what you want within the constraints of how Rockbox is today.

Some people also seem to get very defensive when people like yourself come and try to constructively criticise how Rockbox works (or in other cases misunderstand how Rockbox works - in which case our documentation is possibly to blame).  I don't think any of the core developers would say that all aspects of Rockbox are perfect and couldn't be improved - the problem is simply that we are all volunteers programming Rockbox as a hobby in our spare time.

I'm not sure I understand your original query though, as I've never used a Cowon device.

If I understand correctly, you've enabled an option in the Cowon firmware called something like "use all directories", so that whenever you select a song in the file browser, a dynamic playlist is built using all tracks on your player, and the track you've selected is played first?

In contrast, Rockbox can only do one thing when you select a file in the file browser - create a dynamic playlist containing all files in that directory?
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Chronon on October 22, 2008, 02:33:14 PM
I didn't mean to imply that that's the only way for something to change, nor that the developers are indifferent.   

By all I can tell from the manual, it just really sounds like RockBox simply doesn't want to work this way.  Do I need to just give up and stick with the original firmware?

As it stands, Rockbox doesn't do what he wants.  I have no place in promising any changes whatsoever, so I offered a way for such a change to happen.  I guess I could have also mentioned the Feature Ideas forum as an avenue to pursue.
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Nazo on October 22, 2008, 06:29:39 PM
Quote from: linuxstb
Don't think that one person speaks for everyone involved in the Rockbox project.
Oh I don't.  I was talking more in general.  The whole "if you want different behavior, it's open source, so change it yourself" thing is really prelevant in open source and I always thought it was unfair to those of us who use open source software but can't program in it themselves.  Also, it seems kind of silly to point out given that in any project with "open source" plastered everywhere or even on an open source site like sourceforge it's kind of a given that people can make changes if they want to and have the ability, so it really seems rather unnecessary even to point it out.

Quote
I'm not sure I understand your original query though, as I've never used a Cowon device.
Ok, it's pretty simple, just harder to explain than to show.  Basically you have a setting in the configuration for how it handles directories.  Cowon refers to it as the "boundary."  You can select between the current directory (eg the same behavior as RockBox is using here,) the current directory and its subdirectories (at least I think that's how that option works -- lol, I never use it really,) and finally "all" which means it will accept any file of the right type in any folder on the entire device (in the case of the U3 it will even mix in videos and music together and this is probably the only thing I don't like about my D2 since it splits music and videos with no consideration of the fact that there can be music videos, lol.  The D2 has a memory card slot and its "all" boundary will even play music from there even though on the filesystem it's represented by a very different location.)

Anyway, with the "all" boundary selected the "internal playlist" so to speak (I don't think it actually uses a playlist so much as just looking at the filesystem's list of files more or less directly -- it probably loads the FAT into memory on startup, but this is just a guess) will cover all files of the right type in all folders.  This includes both normal play (eg when one track finishes, it will go to a different folder if it needs to automatically) and of course shuffle play can jump around or even stay in the same folder as it just selects the files completely at random (though sadly the D2's random algorithms aren't as good as the U3's.)

BTW, you might want to take a look at Cowon's players the next time you're in the market.  I don't have three different types of their players from different generations because they suck.  d-:  I especially find it nice the way the D2 is actually powerful enough to power my headphones even without any bass rolloff or anything.  I can't speak for voltage as they are only about 31 ohms or so (rounding up -- I forget the exact number after the recabling) but the current is quite sufficient for their needs.  I have heard someone talking about using higher end headphones with far higher impedence with the D2 with great results too however.

I didn't mean to imply that that's the only way for something to change, nor that the developers are indifferent.
I'm sorry, I'm not meaning to say that much.  I just hear that almost first thing any time there is an inherent behavior in an open sourced project and after a while it just isn't nice to hear it anymore.  Anyway, I realize that the best way to get changes is to directly affect them, but sadly some of us just lack that ability -- or in cases such as mine, really more the time to develop that (I'm not BAD at programming per se, I just never have had time to learn anything more than basic and I've used basic so little that I've all but forgotten even it.  About the only other thing I can do in programming is a HIGHLY simplified C++ application that does little more than perform some really simplistic operation and exit.  I just haven't had the time or energy to learn such things really.)

Quote
As it stands, Rockbox doesn't do what he wants.  I have no place in promising any changes whatsoever, so I offered a way for such a change to happen.  I guess I could have also mentioned the Feature Ideas forum as an avenue to pursue.
Well, partially I was just trying to make sure I just wasn't misunderstanding its abilities.  It was all too confusing just trying to figure out exactly how the auto-change directories option works as it is.  It's more than a little bit possible I could be missing something in all of this and I was hoping this was the case.

Perhaps I should put in a feature suggestion.  In the meantime, is the only way to get a fully random playback when manually selecting files to use the original firmware?  I really like some of the features RockBox offers and I really wanted that last.fm logger especially (many people may perceive it as just another social network -- and it can be this for many -- but to me it's a useful resource that has a lot of potential to help me find music that suits my tastes since I am, unfortunately, more than a bit picky and end up rejecting probably some 95% of the music I ever listen to even allowing for the fact that I'm trying my best to pick as carefully as I can...)
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Chronon on October 22, 2008, 06:59:17 PM
Llorean's suggestion allows you to approximate this behavior, but you don't like having to use the context menu to queue the track.  A setting that allows you to choose whether selecting  a file creates a new dynamic playlist or just queues the file would seem to address your concerns.

---
By the way, there's a one-click to insert patch on flyspray -- FS#2653.  It seems you could modify this to queue instead of insert.
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: Llorean on October 23, 2008, 04:41:21 AM
As a note, "queued" tracks are removed from the playlist after they're played. "Insert" is the way to permanently add tracks (so that they'll show up if reshuffled, and be in the file if you save it to file).

That's why I suggested "queue."

If you create a playlist of all tracks on the player, then when you want to hear a specific song, queue it, you'll accomplish what you want.

Considering you MUST browse to the song to add a specific song your way as well, the "extra" attention of pressing a couple more buttons when you've been reading and browsing a song listing anyway is trivial, and I find it hard to believe you honestly think this will put more drain on your mind (since it's a set of pressed you can memorize and eventually form a habit of) than having to actually read and navigate your directory tree to a unique point.
Title: Re: Any way I can get a multi-folder random without playlists?
Post by: bluebrother on October 23, 2008, 06:42:08 AM
I was talking more in general.  The whole "if you want different behavior, it's open source, so change it yourself" thing is really prelevant in open source and I always thought it was unfair to those of us who use open source software but can't program in it themselves.
It's unfair? Well, some people have taken their (usually free -- only a few people get actually paid for doing open source development, and in this project there is none I know of) time to build up some software. Do you consider it fair against those people demanding things from them? Do you really think it's fair ignoring this way the work they already did? The fact that you got something for free? Heck, those guys could instead make some commercial / shareware software and sell it instead. They could do completely different things during the time spend instead.

Do you really think this "change it yourself" is only arrogance and "unfairness" against those people who can't do such changes themselves? You could, like they did, spend the time on learning on how to do things. There is a reason for this habit ... but as this is rather in general than the original this is getting off topic, so I'm stopping here ...