Skip to main content
Topic: foo_uie_trackinfo (Read 733170 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

foo_uie_trackinfo

Reply #850
the newest version is from the third of may. so it's not really "old". but the download doesn't work for me.


foo_uie_trackinfo

Reply #852
Bug report: It seems that changing a playlist does not trigger update (in follow cursor mode).
Maciek

foo_uie_trackinfo

Reply #853
is it supposed to... I would think that until you actually click on a track that there is no update because the cursor has not moved... (btw, the "cursor" would be the actively selected item in the "collumns playlist" not the "playlist switcher" - it's trackinfo not playlist info)...

foo_uie_trackinfo

Reply #854
Let's say: when I change playlist, album art changes, but track info does not.
Maciek

foo_uie_trackinfo

Reply #855
re: machekku

I dont use multiple playlists so I might be missing something, but when I update my dynamic playlist there is no entry selected until I click on one.  Is there perhaps a way to have your foobar auto-select an item from your new playlist when you change to it? It stands to reason that if you can cause that to happen, then that would trigger the trackinfo to "follow your cursor" onto your new playlist and result in the behavior you expected.  As rosshmusic indicated I dont really think it's a bug because your not moving the cursor anywhere for the component to follow.

foo_uie_trackinfo

Reply #856
Let's say: when I change playlist, album art changes, but track info does not.

hmmm, that is just a difference in how the two panels were coded to work... and if your playlist had multiple albums in it how would the albumart panel know which artwork to display...? just wondering since that seems like it would be an issue with both of these panels if your expected bahavior was implemented...

foo_uie_trackinfo

Reply #857
When I change playlists, every playlist "remembers" its selected item. Even if I turn foobar off and run it again, every playlist remembers its selected item.
And if I create new playlist (which cannot have any item selected, of course) album art displays nothing, but track info keeps displaying item from previous playlist.
Maciek

foo_uie_trackinfo

Reply #858
remembering the selected item is an "inactive" selection which is why trackinfo doesn't update...

maybe if trackinfo used:
Playlist > selection (inactive or active) when in "follow cursor" mode would fit your needs... and I would call that a feature request rather then a bug...

foo_uie_trackinfo

Reply #859
I'd say it is a bit like a bug, because even playing the "inactive" track after changing the playlist does not trigger update for me.

But ok, let's say I have a request for a more-like-albumart mode.
Maciek

foo_uie_trackinfo

Reply #860
if I'm understanding you correctly, mine works fine in that example...

I'm playing some track (trackinfo panel in follow cursor mode)... I click on a different playlist in my playlist switcher window... when I click on that track to play it my trackinfo panel updates with that track information... am I not following you or is yours behaving differently then mine...?

foo_uie_trackinfo

Reply #861
Try clicking on the already selected (but - as you say - "inactive") track. Or click "play" button. Then it does not work for me.

So if (for some funny reason) I have a playlist with just one item, I'm really unable to display it in trackinfo panel.

Hmm.. I'm using version 0.8. Maybe there is a newer one?
Maciek

foo_uie_trackinfo

Reply #862
Bug report: It seems that changing a playlist does not trigger update (in follow cursor mode).

Yep, this has already been reported. The misbehaviour in follow cursor mode unfortunately appeared with the latest verison. Before it has always been as you expected and as it was good.
There was no higher will behind the change, no new concept, this is probably simply a programmers mistake.

On one computer I change playlists with a remote control (keyboard shortcuts), I always have to press arrow keys or whatever to make the track info panel refresh.

Most likely the error is somewhere in foo_uie_trackinfo.cpp in void uie_trackinfo::on_item_focus_change, but I cannot tell exactly. I'm not into c and pointers...

EDIT: typo

foo_uie_trackinfo

Reply #863
thanks for clarifying that...

foo_uie_trackinfo

Reply #864
hi !
I find that this plugin eat with period - every seconds up to 25% of my processor's power and even in pauses . When foobar run without this plugin - only 3% when playing and 0% when pause(of course).
And my computer is Pentium4 - so it's not weak.

So the question - Can the author to decrease the appetite of the plugin OR include some checking procedure - if the foobar is paused and sit in the sistem tray - to not run the procedure of updating the plugin.
because I working with very CPU consumptiong program and I think that it isn't right that plugin even without playing the music and opening foobar consump the CPU power.

Anyway-it's a really good plugin - thank's to author !!!!!!!!!!!!

foo_uie_trackinfo

Reply #865
I noticed this when I was first using this plugin... I'm not sure exactly what it means, but I was told to change the settings I've circled on the attatched image... I haven't had a problem since... try it and see if it helps your situation...

settings to change are:
Scroll speed (ms): 50000
Scroll steps: 1

here is a screen capture of mine:
trackinfo settings image

foo_uie_trackinfo

Reply #866
ohhh - thanks ! It really works !
now in pauses - 0% CPU ! Cool !

 

foo_uie_trackinfo

Reply #867
Most likely the error is somewhere in foo_uie_trackinfo.cpp in void uie_trackinfo::on_item_focus_change, but I cannot tell exactly. I'm not into c and pointers...
I took a look at the code, and at album art's code. It seems that foo_uie_albumart has additional handlers for actions like playlist changed, but also adding/removing items in current playlist. I guess it could be a good idea to put this code in separate file and share between plugins.
Anyway, for starters I tried implementing playlist change handler. I (think I) did it, but then noticed that Visual Studio 2003 is not enough to compile, and I can't really upgrade to 2005 now...
So if someone has VS2005 and too much free time, this patch should work (but there may be some "spelling" mistakes - I had no chance to check):
Code: [Select]
diff -x ps.diff -u ..\src_trackinfo.orig/foo_uie_trackinfo.cpp ./foo_uie_trackinfo.cpp
--- ..\src_trackinfo.orig/foo_uie_trackinfo.cpp 2006-05-03 17:21:32.000000000 +0200
+++ ./foo_uie_trackinfo.cpp 2006-06-16 23:48:21.656250000 +0200
@@ -485,7 +485,7 @@
 
  static_api_ptr_t<play_callback_manager>()->register_callback(this, flag_on_playback_new_track|
  flag_on_playback_stop|flag_on_playback_pause|flag_on_playback_dynamic_info_track|flag_on_playback_ti
me, true);
- static_api_ptr_t<playlist_manager>()->register_callback(this, flag_on_item_focus_change);
+ static_api_ptr_t<playlist_manager>()->register_callback(this, flag_on_item_focus_change|flag_on_playlist_switch);
 
  // Can't just call reset_scroll_timer here, dialog is not set yet. :/
  scroll_pos = -1.0;
@@ -684,6 +684,26 @@
  }
 }
 
+void uie_trackinfo::on_playlist_switch()
+{
+ static_api_ptr_t<playlist_manager> t;
+ t_size focus_track = t->activeplaylist_get_focus_item();
+ if (focus_track == infinite)
+ focus_track = 0;
+
+ metadb_handle_ptr f;
+ if (t->activeplaylist_get_item_handle(f, focus_track))
+ {
+ set_handle(focused,f);
+        if (config.displaymode == DISPLAYMODE_FOCUSED)
+ {
+ display_top = 0;
+ reset_scroll_timer();
+ redraw();
+ }
+ }
+}
+
 void uie_trackinfo::on_playback_new_track(metadb_handle_ptr p_track)
 {
  set_handle(now_playing,p_track);
diff -x ps.diff -u ..\src_trackinfo.orig/foo_uie_trackinfo.h ./foo_uie_trackinfo.h
--- ..\src_trackinfo.orig/foo_uie_trackinfo.h 2006-04-29 22:35:28.000000000 +0200
+++ ./foo_uie_trackinfo.h 2006-06-16 00:03:55.609375000 +0200
@@ -145,7 +145,7 @@
  virtual void on_items_modified_fromplayback(const bit_array & p_mask,play_control::t_display_level p_level) {}
  virtual void on_items_replaced(const bit_array & p_mask,const pfc::list_base_const_t<playlist_callback::t_on_items_replaced_entry> & p_data) {}
  virtual void on_item_ensure_visible(t_size p_idx) {}
- virtual void on_playlist_switch() {}
+ virtual void on_playlist_switch();
  virtual void on_playlist_renamed(const char * p_new_name,t_size p_new_name_len) {}
  virtual void on_playlist_locked(bool p_locked) {}
  virtual void on_default_format_changed() {}
Maciek

foo_uie_trackinfo

Reply #868
I can't get alignment to work. What's wrong with this code:

Code: [Select]
$char(1)Rb9afaf%artist% 000000 // b9afaf%album%000000 // b9afaf%title%$char(10)


foo_uie_trackinfo

Reply #870
I'm sorry if this has been answered before, but I hope you can help me with this:

I have a Track info panel displaying %artist% followed by %title% and %album% tags. When foobar starts, since there's nothing being played, Track info shows only a question mark ("?") in place of the unavailable tags, or a custom text when I use $if2(%album%,Custom text) instead of just %album%, for instance.

I know this isn't really critical, but would it be possible to have Track info show the artist, title and album of the last played song? How?


foo_uie_trackinfo

Reply #872
ww2, use [%artist%] instead of %artist%. foobar will not show the tag if it's not available. Works with any tag.


Thanks acedriver, but that wasn't exactly what I meant. For showing nothing I could use $if2(%tag%,<blank_space>)... I just want to show the info relevant to the last played song...

foo_uie_trackinfo

Reply #873
maybe not quite in the place but, is there any variable that shows the play order (default,shuffle(tracks)....)? were should i look for it?

foo_uie_trackinfo

Reply #874
Can someone tell me what the syntax (right word? I mean the %artist% things) is for the following information (C&P from File Info Plugin) please?
Info:

encoding = lossy
channels = 2
extrainfo = VBR
mp3_stereo_mode = joint stereo
tagtype = id3v2|id3v1

EDIT:

ww2, I'd guess you'd have to either find a plugin that stores the last played song (and its information), or have someone make one yourself. That way you'd be able to call the information even when you've closed and reopened.

 
SimplePortal 1.0.0 RC1 © 2008-2019