IPB

Welcome Guest ( Log In | Register )

20 Pages V  < 1 2 3 4 > »   
Reply to this topicStart new topic
Navigator-Suite Feedback, questions, bug-reports or just chatting
mazy
post Feb 14 2005, 23:17
Post #26





Group: Members
Posts: 680
Joined: 11-July 03
From: Brno, Czech Rep.
Member No.: 7705



ah, i see ... but you do $lower on it, so it wouldn't work ... (going to change ' ost ' to back uppercase and remove $lover wink.gif)


--------------------
info about my tag guesser script for foo_lua (preview version available):
http://www.hydrogenaudio.org/index.php?showtopic=16987
Go to the top of the page
+Quote Post
Lyx
post Feb 14 2005, 23:25
Post #27





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



good call - that was quite stupid of me - i just copy'n pasted the line from the VA-checking and forgot to remove that unnecessary function. Will be fixed in next version. Thanks for pointing that out.

- Lyx


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
mazy
post Feb 15 2005, 00:26
Post #28





Group: Members
Posts: 680
Joined: 11-July 03
From: Brno, Czech Rep.
Member No.: 7705



Lyx, as for speed-ups, i think we should bug musicmusic about that non-track specific globalstring. it could get distinct tab called like 'non-track specific variables' or something like that. now how should it interact with global string? would we need variables from it to be accessible in global string ('variables'), or just apped its list of exported vars to list from global string for use in columns?

also, it would be nice to have this accessible in other places. i think that atm it would be enough for musicmusic to provide service which would return list of these exported variables from non-track specific global string. 3rd party components could look for this service, and if available, get that list and then use it as extra parameter in their calls to formatting routines (that's possible and easy to do with current sdk). or - musicmusic could provide custom / modified formatting routine for others to use, but that wouldn't be that 'clear' way to do it.

this could be helpful for (until we could have foobar-wide custom vars or even functions) synchronizing color themes amongs components like track info etc.

we could go even further and have similar service for track-specific (maybe a new one, not columns ui oriented as 'variables' global string is) global string, which could contain tag guessing and other stuff, which you would like to easily use at other places too ...

and - extra nice feature for speed-ups, though it would require quite a lot of work to implement, would be to disable parts of 'variables' global string based on changes to previous track.

that would require something like '$changed(<string to evaluate>,<true-branch>,<false-branch>)', for example '$changed($left(%_path%,$sub($len2(%_path%),$len2(%_filename_ext%)))|%album%,<album-wide code>,$reuse(album_mode))'.

columns ui would have to parse string and find those $changed parts and its params. then it would evaluate <string to evaluate> for current track and last displayed track. in case they are not same or that there wasn't any previously displayed track, it would execute <true-branch> using foobar's routines, <false-branch> otherwise.

in my proposal, <false-branch> could contain list of names of previously exported variables, which would get reused, so they would get exported in current pass using value from the last one. that's just first idea, there are many things to work out / discuss about ...

that's just one idea i had, it's probably way to complicated or of minor use, but it could help ...

This post has been edited by mazy: Feb 15 2005, 00:33


--------------------
info about my tag guesser script for foo_lua (preview version available):
http://www.hydrogenaudio.org/index.php?showtopic=16987
Go to the top of the page
+Quote Post
musicmusic
post Feb 15 2005, 00:40
Post #29


Columns UI developer


Group: Developer
Posts: 3034
Joined: 20-December 02
From: United Kingdom
Member No.: 4177



QUOTE (Lyx @ Feb 14 2005, 01:22 AM)
Hmm, someone else who did lots of test-runs of it for me has a 700mhz box, and he says it runs acceptable - but i guess your bars are higher because you're a coder :-)
*
Tagz is a coding language wink.gif

Its probably my different habits - I like to use page up/down keys to navigate, with will load more tracks at once, and maybe my laptop's processor is melted also.

QUOTE (Lyx @ Feb 14 2005, 01:22 AM)
Large parts of the code is non-trackspecific stuff *hinthint*
Lets not turn this into a columns ui thread wink.gif Developments in that area will come in due time (yes i know its been long enough as it is)

QUOTE (Lyx @ Feb 14 2005, 01:22 AM)
To be more specific....... the "culprits" for the resource-hog are two:
1. non-trackspecific code - like calculation of secondary colors
2. the tag-guess code eats resources even though its inside a large if-loop which only gets executed when not all standard tags are there - but the parsing alone seems to be heavy already.
*
Well probably the general overhead of parsing the script, or something, I dont know. But you're not going to make a "do-everything" script that is fast without rewriting the tagz engine or something. Of course a non-track specific string will help significantly, though.


--------------------
.
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 00:57
Post #30





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



@mazy
Mmh, i'll try to make the situation and my point of view simple:

Preferable, there should be a centralized config-manager which provides this service.

Well, thats the idea since months, musicmusic said that he doesn't have time to create and maintain such a plugin, and no one else is able and willing to do it. So lets be realistic: we won't get the "preferable" solution anytime soon.

Because of this, i agree with you that it should be implemented into ui_columns instead. Because thats still much better than having no global control-service via global-vars at all - and its desperatelly needed, not just for formatting strings but perhaps even more for controling stuff like colors from a central place. The panel-hell won't become better, only worse, so the earlier the better.

In what my opinion differs from yours is not the idea itself, but the implementation: I'd go for a KISS-approach. Just have one more tab in the ui_columns globals page called "vars (non-trackspecific)". After parsing its string, it will just export vars just like the trackspecific global string. It would also automatically make the exported vars available to the track-specific global string. The track-specific globals string in turn should be able to overwrite vars exported from the non-trackspecific global string. These are instantly available to ui_columns itself (just as it is now) - BUT, additional ui_columns gets a service which makes the exported non-trackspecific vars also available to other plugins and panels.

Technically under-the-hood, this means that there are two var-tables.... each of them can contain vars with the same name, but different value. This is because the non-trackspecific string gets executed only one time(possibly only when selecting a playlist) and then creates a read-only copy of its exported vars...... these vars then can be called from the trackspecific global string - and overwritten - but in reality, they're not overwritted but instead stored in a 2nd var-table..... the trackspecific one.

I dunno if this makes sense.

- Lyx

This post has been edited by Lyx: Feb 15 2005, 00:58


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
mazy
post Feb 15 2005, 01:06
Post #31





Group: Members
Posts: 680
Joined: 11-July 03
From: Brno, Czech Rep.
Member No.: 7705



yep Lyx, that makes sense ... and that's one way to implement it that i was thinking about. i don't know what would be easier for musicmusic to implement though ...

making results from non-track specific global string available in track specific one is easy, but merging them would take some work. it's probably not a big issue and you're not going to have lots of variables, so you could use simple look-up method when merging them, but because of my education it would be against my habit to do that, ehm wink.gif. how would musicmusic implement this?

This post has been edited by mazy: Feb 15 2005, 01:07


--------------------
info about my tag guesser script for foo_lua (preview version available):
http://www.hydrogenaudio.org/index.php?showtopic=16987
Go to the top of the page
+Quote Post
landy
post Feb 15 2005, 01:17
Post #32





Group: Members
Posts: 143
Joined: 3-January 05
Member No.: 18805



how about an option to display just the artist and track when you hover the mouse over the systray icon? it currently displays quite a lot of info and for me at least seems to vary what info it displays randomly.
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 01:25
Post #33





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



QUOTE (landy @ Feb 15 2005, 02:17 AM)
how about an option to display just the artist and track when you hover the mouse over the systray icon? it currently displays quite a lot of info and for me at least seems to vary what info it displays randomly.
*


I forgot to mention that in the docs, but you can do that already. Open the prefs->titleformatting and switch to the systray-tab of that page. At the top of the string which gets then displayed you can enable/disable each line which gets displayed in the systray.

I'm sorry, its currently technically not possible to make this configurable from the globals-string in ui_columns..... among other things, thats what mazy and i were discussing: the ability to control other stuff than the playlist from one single config-section in the ui_columns globals page.

- Lyx

edit: oh, i forgot to mention - you may need to disable and then reenable the systray-display to see the changes.

This post has been edited by Lyx: Feb 15 2005, 01:40


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
landy
post Feb 15 2005, 01:42
Post #34





Group: Members
Posts: 143
Joined: 3-January 05
Member No.: 18805



thanks, i really like this fcs.
Go to the top of the page
+Quote Post
MrEnergizer
post Feb 15 2005, 02:01
Post #35





Group: Members
Posts: 164
Joined: 1-January 05
Member No.: 18757



Thanx Lyx,
just when I thought I had Foobar how I wanted it !!! blink.gif biggrin.gif
Go to the top of the page
+Quote Post
DustMagnet
post Feb 15 2005, 02:38
Post #36





Group: Members
Posts: 248
Joined: 22-December 02
From: Winnipeg
Member No.: 4193



Sweet fcs, Lyx! Much classier than my own. biggrin.gif

Performance is fine in full album-mode with a playlist of 28000 songs on my XP 3200+. All of my songs are full tagged, though, so I can't imagine there's much tag-guessing going on.


--------------------
That's so plausible, I can't believe it.
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 03:00
Post #37





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



I should have been really worried if any kind of lag is visible on a 3200mhz machine ;-)

In the normal version, a bit of performance is always taken away by the tag-guess code - thats because even if that part of the fcs is skipped when all tags are there, then even "skipping" that part still takes about 1/4 of the speed which would be used when it would indeed guess tags. Or more simple: even skipping tag-guessing takes a bit resources. Thats why on lowend machines a difference is perceivable when using the lite-version, even with fully tagged files.

Then again, having tag-guessing as a backup kicking in when its needed has some advantages :-) While designing the albummode i stumbled over a possible bug a few days ago.... i thought "hmm, i wonder if i remove the artist tag if the lines in the album-column would then get out of order"..... so i removed the tag...... but nothing changed - then i remembered that tag-guessing was enabled ;-)

- Lyx


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
mazy
post Feb 15 2005, 13:30
Post #38





Group: Members
Posts: 680
Joined: 11-July 03
From: Brno, Czech Rep.
Member No.: 7705



thinking about tagz, it would be great to have some kind of pre-processing function in the core, which would make some sort of derivation / parsing tree.

you would call that function for string, which you're not going to change that often (ideal for playlist string) and it would return you some data about it.

then, when displaying the string, you would call new formatting routine, which would take extra param - these data.

it could use them to quickly skip to next token etc ...

what do you think? this could really speed things up, but peter would have to implement that himself ...


--------------------
info about my tag guesser script for foo_lua (preview version available):
http://www.hydrogenaudio.org/index.php?showtopic=16987
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 13:43
Post #39





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



Umm, i'm sorry i can't follow your idea? The only thing i understood was that it sounds like some serious magick ;-)

- Lyx

edit: actually, although it doesn't look like it - i'm really bad at coding and not very knowledgeable - its all just intuition :-)

This post has been edited by Lyx: Feb 15 2005, 13:44


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
mazy
post Feb 15 2005, 14:44
Post #40





Group: Members
Posts: 680
Joined: 11-July 03
From: Brno, Czech Rep.
Member No.: 7705



sorry Lyx, i know i go way to far sometimes wink.gif.

you can imagine result of that pre-processing for example like data, that would tell you for left bracket on given position where is (=position) corresponding right bracket etc.

you could store this info for brackets, string constants, parameters of tagz functions in the string etc.

it would help you with evaluation of the string. for example when you come to $if and evaluate its condition as false, you could jump right to false-branch of that $if instead of doing parsing of the string in between. in other words, when skipping large parts of code because of $if, you wouldn't have to look for where to continue by inspecting (parsing) the string, but you *would* know where to continue right away because of the look-up table (in reality it doesn't have to be a table).

parsing is probably quick enough, but for huge strings repeated over and over it can slow things down (as you saw for yourself - disabling large chunk of code doesn't give you same speed-up as actually deleting it).

this, combined with global non-track specific string could help a lot in columns ui ...


--------------------
info about my tag guesser script for foo_lua (preview version available):
http://www.hydrogenaudio.org/index.php?showtopic=16987
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 14:51
Post #41





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



Okay, now i understood what it does, but not "how" :-) But i guess thats natural for me, because i'm actually quite bad at maths and complex-systems. As long as something is intuitively imaginable my brain works great - but as soon as it becomes too abstract and complex i fail miserably (don't ask me how i got that tag-guess spaghetti-code to work ;).

- Lyx


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 15:36
Post #42





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



hmm, can i have IFs inside of a $strstr and $replace? like this:


CODE
$strstr(
$replace(
$lower($if2(%various artists%,$if2(%various%,$if2(%va%))))
,va,1,'v.a.',1)
,1)


That would allow me to cut the size of the VA-code in half. Maybe there is an easier solution than using cascaded IF2s.

- Lyx

edit: nevermind - found a much easier less resource-hungry solution.

This post has been edited by Lyx: Feb 15 2005, 15:39


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
mobyduck
post Feb 15 2005, 16:18
Post #43





Group: Members
Posts: 574
Joined: 24-April 03
From: Italy
Member No.: 6159



Hi Lyx.

Just downloaded Navigator 1.01 and I really like it.

Using "singlemode default", how can I remove the album info from the artist column?

Thanks for your help.

Alessandro
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 16:23
Post #44





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



Just rightclick the column-headers - there you can enable and disable every column.

For example, there is:
Artist
Artist & Album
Album

"Artist & Album" is enabled by default, and the artist- and album-columns are disabled by default. But you can also make it the other way around :-)

- Lyx

This post has been edited by Lyx: Feb 15 2005, 16:23


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
fakeplastictrees
post Feb 15 2005, 17:24
Post #45





Group: Members
Posts: 17
Joined: 10-January 05
Member No.: 18970



Awesome config, i will try it!
Go to the top of the page
+Quote Post
mobyduck
post Feb 15 2005, 17:25
Post #46





Group: Members
Posts: 574
Joined: 24-April 03
From: Italy
Member No.: 6159



Soo easy! cool.gif

Thank you!

Alessandro
Go to the top of the page
+Quote Post
Lyx
post Feb 15 2005, 22:27
Post #47





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



updated to v1.02 - changelog is in the first post of this thread.

I will probably not add new features for a while and only fix bugs when they're found and optimize the code. Instead, i'll work on a trackinfo-panel string in the next 1-2 months.


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
Languid
post Feb 16 2005, 00:56
Post #48





Group: Members
Posts: 18
Joined: 26-June 03
Member No.: 7396



I had been using eriks3 format string for quite some time, so when I switched over to Navigator I really wanted to keep the same color scheme. So, I whipped this up:

CODE
// CUSTOM COLOR-THEME CONFIG   (ignored if "theme" is not 0)
// colors are in decimal values (RGB / 0-255)
// ===============================================

// is your custom-theme a dark-theme? (0=no, 1=yes)
$puts(theme_dark,1)

// foreground colors
$puts(standard_color,$rgb(0,0,0))
$puts(special_color,$rgb(0,0,0))
$puts(playing_color,$rgb(220,240,255))
$puts(borders_color,$rgb(149,149,149))

// background colors
$puts(bg_color,$rgb(255,255,255))
$puts(bg_color2,$rgb(240,247,250))

// various symbols used in display
$puts(symbol_seperator,'    ')
$puts(symbol_rating,⋆)


And here's a screenshot.

Hope someone enjoys it. smile.gif
Go to the top of the page
+Quote Post
Lyx
post Feb 16 2005, 01:10
Post #49





Group: Members
Posts: 3353
Joined: 6-July 03
From: Sachsen (DE)
Member No.: 7609



cool, thanks for sharing this one.

Now, if i would include it in the next version, how should i call it? Also, since you mention that the scheme is from another FCS how to handle the credits?

edit: the way you made the highlighted (primary) colors appear like the secondary by defining it as a dark-scheme instead of a bright one is interesting smile.gif

This post has been edited by Lyx: Feb 16 2005, 01:13


--------------------
I am arrogant and I can afford it because I deliver.
Go to the top of the page
+Quote Post
Languid
post Feb 16 2005, 01:18
Post #50





Group: Members
Posts: 18
Joined: 26-June 03
Member No.: 7396



As far as I'm concerned, you can just give the original author credit, I'm not really worried about seeing my name. tongue.gif So I guess you'd just call it eriks3, or 4, or whatever.

Edit: Also, I've just noticed that when it's defined as a dark theme, the stars on the rating column look really awful. If you set a song to a 4 rating, 4 stars are light grey, and 1 is black. Personally I think that's backwards. But if you set it to a light theme, it looks fine. Just thought I'd point that out...

This post has been edited by Languid: Feb 16 2005, 01:42
Go to the top of the page
+Quote Post

20 Pages V  < 1 2 3 4 > » 
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 22nd September 2014 - 07:59