getmusicbee.com

General => MusicBee Wishlist => Topic started by: jistme on February 18, 2012, 12:29:25 PM

Title: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 18, 2012, 12:29:25 PM
Besides on my 'normal' PC, I also have MB installed on a HTPC connected to my plasma screen in the living room.

I would very much like a kind of 'screensaver' playing mode layout showing only most relevant information and possibly albumart in a tasteful and not to distractful manner. With the option to be automaticly activated after a certain time of inactivity after pressing 'play'?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jbee on February 19, 2012, 01:18:56 AM
Definitely +1 on this one.

(I also think you should be able to trigger this "screensaver mode" from the View-menu, if you don't want to wait).
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 19, 2012, 10:54:11 AM
anyone want to do a mockup for the suggested layout?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 19, 2012, 12:44:40 PM
Not being anything of a designer, I did try and start to create something like this in foobar2000.

It looked something like this, and I combined it with a Windows screensaver called 'PowerDimmer'. It can dim the screen to a preset level after a preset time of inactivity. (like laptop screens, but slowly and not abruptly, very nice)

(http://i.imgur.com/i6p9Bl.jpg) (http://i.imgur.com/i6p9B.jpg)
 
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Rotem K. on February 19, 2012, 03:33:25 PM
My suggestion: http://i.imgur.com/ys7jh.jpg (http://i.imgur.com/ys7jh.jpg)

Would be sweet if the background image could be set from the preferences menu.

And I would love to see this feature implemented, if any help with graphics is needed let me know.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 19, 2012, 04:09:59 PM
rotem, i do like that. I would need you to do the background image though (but it could also be user selectable if they want a different one to the default)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jbee on February 19, 2012, 04:40:18 PM
Yeah! This is absolutely brilliant! And I agree with Rotem and Steven; the background (image or color) should be user selectable, I assume this is very important since everyone have different resolutions on their desktops, hence the need for different resolution images?

EDIT: Rather than resolutions, people have different aspect ratios.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 19, 2012, 04:59:04 PM

And an option for a fireplace video as background (with crackling sound)!
;D
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Rotem K. on February 19, 2012, 05:51:07 PM
Yeah! This is absolutely brilliant! And I agree with Rotem and Steven; the background (image or color) should be user selectable, I assume this is very important since everyone have different resolutions on their desktops, hence the need for different resolution images?

EDIT: Rather than resolutions, people have different aspect ratios.

Right, Steven, what resolution / ratio do you need the background image to be?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: cartman005 on February 19, 2012, 05:52:38 PM
Very nice Rotem.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 19, 2012, 06:03:49 PM
Right, Steven, what resolution / ratio do you need the background image to be?
maybe 1280x960 but i guess for people with screens that are not 4:3 there will be some distortion.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Rotem K. on February 19, 2012, 06:58:04 PM
The backgrounds: http://www.mediafire.com/?21age0dvk0wmb57 (http://www.mediafire.com/?21age0dvk0wmb57)

And thanks guys for the comments, I appreciate it.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 19, 2012, 07:03:45 PM
very peaceful!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 19, 2012, 07:11:42 PM
As most full-hd panels, my plasma is also 1080p (1980x1080 pixels)

I found out that using Windows on this resolution from viewing distance is no joy at all, and almost impossible without binoculars, so my htpc is default set on 720p (1280x720) looking great.

For playing full hd movie content, the gain from 720p to 1080p is there, but in my opinion quite overrated.

Best thing would be to make it possible to choose or overrule the resolution. Computer displays will often have other resolutions AND ratio's.

(most of all very happy this idea is being picked-up so fast and enthusiastically!)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 19, 2012, 07:15:08 PM

But where are the bees???

(http://i.imgur.com/1quaxl.jpg) (http://i.imgur.com/1quax.jpg)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on February 19, 2012, 07:29:10 PM
Look at XBMC it is very good software :) they maybe have some good background/music in background mode

(http://xbmc.org/wp-content/gallery/transparency/12_music-osd-info.jpg) remove some things and it will look nice :D
(http://gudensoft.com/wp-content/uploads/2009/11/XBMC.png)
(http://www.themurrayworld.com/xbmc/night/shelf.png)

something like this is very cool too :D
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 20, 2012, 09:54:09 AM
+1. Absolutelly.

By the way, with regard to the background, I think there's two interesting things:

- Why not giving the chance to use the artist visualizer as background?

- Why not giving the chance to select the background? There's a lot of great backgrounds out there. Some examples:

http://www.displayblog.com/wp-content/uploads/2010/04/Ommwriter.jpg
http://fc09.deviantart.net/fs70/f/2010/171/f/8/Walk_alone_by_Chris_Lamprianidis.jpg
http://wallpaperswide.com/raining_2-wallpapers.html
http://www.websbook.com/sc/upimg/allimg/090605/192071.jpg
http://img03.blogcu.com/images/s/a/f/safakk1/gunebakan_1238958749.jpg

The layout by Rotem is just amazing. If you let select the background and the font colour (black fonts for clear backgrounds, white font for dark backgrounds) it would be perfect!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 22, 2012, 07:38:14 PM
i have implemented this as a plugin. A screen saver is activated in place of the windows screen saver (you need to activate the windows screen saver in the windows control panel if you have it disabled), but only if MusicBee is playing a track and is the foreground window, otherwise the default windows screensaver activates.
The screen saver can also be activated via a hotkey set in the Hotkey preferences: "View: Activate Screen Saver"

1. first you need to be using version 2 of musicbee - see this topic if you havent already installed it:
http://getmusicbee.com/forum/index.php?topic=5709.0 (http://getmusicbee.com/forum/index.php?topic=5709.0)

2. you need to replace musicbee.exe with this updated version:
http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip (http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip)

3. then unzip this in the Plugins folder where musicbee is installed
http://musicbee.niblseed.com/V2/ScreenSaver.zip (http://musicbee.niblseed.com/V2/ScreenSaver.zip)

you should end up with something like:
c:\program files\musicbee\musicbee.exe
c:\program files\musicbee\plugins\mb_ScreenSaverPlugin.dll
c:\program files\musicbee\plugins\mb_ScreenSaverPlugin.dll.config
c:\program files\musicbee\plugins\ScreenSaver.Background.jpg
c:\program files\musicbee\plugins\ScreenSaver.Settings.xml



anyone who wants to modify the default screen saver can easily do so:
- replace the background image "ScreenSaver.Background.jpg" in the Plugins folder (the image should fit your screen size but will be resized to fit)
- edit the screen saver layout file "ScreenSaver.Settings.xml" in the Plugins folder: fields, colours, fonts and field positions. There is no validation on the file, so keep a copy of the original in case you mess up but its quite easy

I can set up a Screen Saver topic in the customisations section if people do modify the screensaver and want to share the results
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Rotem K. on February 22, 2012, 07:58:55 PM
That's amazing, thanks Steven!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: fossii on February 22, 2012, 08:42:26 PM
Hi Steven,

thanks for the great plugin;
A Question: Do you know, why the letters are so big on my system? Is it possible to custiomize them?
My resolution is 1920 x 1080!

(http://www.abload.de/thumb/unbenannttcj3s.jpg) (http://www.abload.de/image.php?img=unbenannttcj3s.jpg)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 22, 2012, 08:50:44 PM
i have reuploaded an updated version that hopefully should account for localisation issues with numbers in the settings file:
http://musicbee.niblseed.com/V2/ScreenSaver.zip

new readers, see the full install instructions 2 posts up
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: fossii on February 22, 2012, 08:59:10 PM
thanks, now it looks wonderfull  :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on February 23, 2012, 01:20:44 AM
Very good job! I love how you can customize it!

Is it possible to make the list of upcoming tracks work also when shuffle is enabled? Right now, with shuffle on, it prints this for me:
Code
Upcoming tracks will be chosen at random]
]
]

Also, is there a reason why its not in the View-menu?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 23, 2012, 07:25:02 AM
Is it possible to make the list of upcoming tracks work also when shuffle is enabled? Right now, with shuffle on, it prints this for me:

Also, is there a reason why its not in the View-menu?
in random mode a track is chosen right at the last moment so the upcoming ones are not known. I see i need to make sure the extra ] doesnt show
i can add it to the view menu
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 23, 2012, 03:43:27 PM
One remark: the 'party mode' (locked screen mode) disables the screensaver. It would be interesting to allow the screensaver in case this plugin is enabled.

(BTW, great improvement!  :) )
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 23, 2012, 07:21:48 PM
updated version:

http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip
http://musicbee.niblseed.com/V2/ScreenSaver.zip

new readers, see the full install instructions 5 posts up

- text positions are no longer scaled to the screen size ie. they are all absolute positions now (it was causing some unanticpated problems), so this might mean anyone who has customised their screen saver will need to account for that
- the default screen saver layout has been changed (the original is named "ScreenSaver.Settings.xml.orig" in the zip file but make sure you copy your existing "ScreenSaver.Settings.xml" file if its been changed
- a new element to include a spectrum visualiser (included with the new default)
- adds the command "Activate Screen Saver" to the View menu
- fixes some bugs
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: VX on February 23, 2012, 07:40:52 PM
Some bugs:
click 'Disable' button in the screen saver plugin preferences - MB is closed (the same with the previous version of the plugin).

I've installed some extra screen savers for MB shared by Greb on the forum, but I can't switch between them (only the default one is used). The 'Configure' button in the preferences displays some info only. How can I do that ???

There is no option to choose MB screen saver in the Windows 7 Control Panel: Change Screen Saver menu.

Otherwise works great! Thanks  :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 23, 2012, 07:45:15 PM
thanks for letting me know about that bug and its fixed now (ScreenSaver.zip has been updated now)

i have no plans to make this anything more than having one layout configuration although i would be open to having some sort of background picture rotation.
there is nothing to configure and it is not a window screen saver. It gets displayed in place of the windows screen saver in the conditions i listed in a previous post
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: VX on February 23, 2012, 08:03:48 PM
thanks for letting me know about that bug and its fixed now (ScreenSaver.zip has been updated now)

Thanks.
i have no plans to make this anything more than having one layout configuration although i would be open to having some sort of background picture rotation.

It's a pitty. I wish I could change the screen severs just like it's possible for skins...

If screen savers customised by users were stored in the separate subfolders in the Plugins folder, the navigation between them could be quite simple. Users could change a screen saver easily, customise it and share.
The current solution seems not perfect as copying a new screen saver to the Plugins folder overwrites the existing one and there is no an easy way to restore it.

Thanks for considering  :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on February 24, 2012, 02:29:12 AM
I like your idea VX. However I don't see one changing their, optional plug-in, screen saver layout that often so that it would need a context menu.  As long as one renames the file ScreenSaver.Settings.xml before adding a new to that folder, it shouldn't be that big of a hassle. I still like your idea though, just wondering if its worth the time it takes to implement. 

I see one thing that could be added though in help when creating new layouts or trying out existing ones. Since I have to restart MusicBee every time to see a difference made to the settings-file, how about a "Restart MusicBee" in the File menu?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 24, 2012, 06:26:40 AM
I see one thing that could be added though in help when creating new layouts or trying out existing ones. Since I have to restart MusicBee every time to see a difference made to the settings-file, how about a "Restart MusicBee" in the File menu?

You only have to select the same skin you're using. MB restarts again (as it does everytime you select a new skin) but, of course, it keeps using the same skin: so basically it's a pure restarting.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 24, 2012, 07:05:08 AM
i will add a hotkey command for restarting
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 25, 2012, 12:18:36 AM
Loving it!

(http://i.imgur.com/bNrBel.jpg) (http://i.imgur.com/bNrBe.jpg)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 25, 2012, 07:12:23 AM
looks really good - you should add it to Screensavers topic in the Customisations board
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: richardap1 on February 25, 2012, 07:32:14 AM
Loving it!

(http://i.imgur.com/bNrBel.jpg) (http://i.imgur.com/bNrBe.jpg)


Yes that looks very good. Please upload it
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 25, 2012, 11:08:57 AM
small enhancement made to allow you to specify a specific single monitor to display the screen saver in (default is all monitors) eg.
<monitor>2</monitor>
when a specific monitor is set, the mouse will not hide and moving the mouse will not close the screen saver. To close it, do so from musicbee, or click on the screen saver

install instructions for the plugin is available here:
http://getmusicbee.com/forum/index.php?topic=5770.0 (http://getmusicbee.com/forum/index.php?topic=5770.0)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 25, 2012, 05:42:02 PM
I made this one for my (not so common) 2048x1152 computer monitor.
Tomorrow I will try to create and post 720p & 1080p versions.

I am not very familiar with uploading files. What would be an advised location/provider to upload?
Am I correct to assume I only need to upload the jpg and the modified xml file? (zipped together)

Already being extremely content and impressed how fast and well you guys fulfilled this wish, there is one possible addition that would make this screensaver 100% perfect for me:

A big concern for plasma panels is burn-in of brighter images or logo's when displayed on the same position very frequently. (and I intend to use MB very frequently ;-)

It would be great if there could be an option to make it possible to adjust the brightness of the albumart to a chosen level, or maybe have the location of the picture displayed in alternating positions?




Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on February 25, 2012, 05:54:34 PM
I made this one for my (not so common) 2048x1152 computer monitor.
Tomorrow I will try to create and post 720p & 1080p versions.

I am not very familiar with uploading files. What would be an advised location/provider to upload?
Am I correct to assume I only need to upload the jpg and the modified xml file? (zipped together)

Already being extremely content and impressed how fast and well you guys fulfilled this wish, there is one possible addition that would make this screensaver 100% perfect for me:

A big concern for plasma panels is burn-in of brighter images or logo's when displayed on the same position very frequently. (and I intend to use MB very frequently ;-)

It would be great if there could be an option to make it possible to adjust the brightness of the albumart to a chosen level, or maybe have the location of the picture displayed in alternating positions?

Burn in won't happen on LCD. Only on CRT or some (AM)OLED screens. But upload on mediafire. fast and good
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 25, 2012, 06:06:02 PM
7pm and already on monk-brewed beer?  ;)
Quote: "A big concern for plasma panels..."

I use MusicBee also in my living room on a Panasonic plasma tv connected to hi-end audio, and I would imagine I am not the only one who wants to enjoy it in such a manner....

I think the chance of the square albumart pictures burning in is quite realistic, and I really don't want to be the Guinnee pig for testing this....
 
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 25, 2012, 06:31:03 PM
i've added a brightness attribute to the picture element.
brightness is between 0 and 1, where 0 is completely black and 1 is normal brightness
<element type="Picture" x="70" y="70" width="300" height="300" bdr="180,205,205,205" brightness="1.0" ></element>

updated .dll to support that:
http://musicbee.niblseed.com/V2/ScreenSaver.zip
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on February 25, 2012, 06:34:27 PM
7pm and already on monk-brewed beer?  ;)
Quote: "A big concern for plasma panels..."

I use MusicBee also in my living room on a Panasonic plasma tv connected to hi-end audio, and I would imagine I am not the only one who wants to enjoy it in such a manner....

I think the chance of the square albumart pictures burning in is quite realistic, and I really don't want to be the Guinnee pig for testing this....
 
hahahaha could say that.. naah beer in a few hours. a shame i can't drink 1 with u. But plasma is unknown area for me.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 25, 2012, 06:39:30 PM
Fantastic!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: cartman005 on February 25, 2012, 08:56:30 PM
The burn in issue depends on your specific TV. As I understand it, newer plasma TVs are much better about preventing it. But this is the same as a static video game menu on your TV.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: VX on February 25, 2012, 09:09:09 PM
A big concern for plasma panels is burn-in of brighter images or logo's when displayed on the same position very frequently. (and I intend to use MB very frequently ;-)


What about using the same background all the time??? Supposing it contains some bright elements, your plasma would suffer more than in the album art case.

I wish the plugin had an option to periodically change the background with all the images in the screen sever plugin folder.
What do you think ???

Furthermore, the word 'from' and the phrase ' Coming up next...' could be localiseable.

There is a small bug, but I guess it refers to the video playback plugin rather than the screen saver one. Steps to reproduce:
Activate the screen saver during a video playback when there is more than one video in the now playing list.
Result: you won't see the video in the album art frame on the screen saver (I guess it isn't implemented ???, I can hear audio from the played video track), but also the duration of the coming up video files (mp4 and avi in my case) is not displayed. It's just [] after the title instead.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on February 25, 2012, 10:36:03 PM
Furthermore, the word 'from' and the phrase ' Coming up next...' could be localiseable.

You can change "from" and "Coming up next..:" to whatever you want in ScreenSaver.Settings.xml or remove them altogether if you feel like.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: ma_t14 on February 25, 2012, 11:10:00 PM
I wish the plugin had an option to periodically change the background with all the images in the screen sever plugin folder.
What do you think ???

+1
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 26, 2012, 02:43:16 PM
background image (and associated optional settings file) is now supported:
http://musicbee.niblseed.com/V2/ScreenSaver.zip (http://musicbee.niblseed.com/V2/ScreenSaver.zip)

as you will see from the zip file, a "ScreenSaver.Rotation" sub-folder is available for you to place any background images. You can also assign a specific settings file to that image by naming the settings file the same as the picture with a .xml extension. If its not there then the default settings file is used
eg.
Plugins\ScreenSaver.Background.jpg
Plugins\ScreenSaver.Settings.xml
Plugins\ScreenSaver.Rotation\Relax.jpg
Plugins\ScreenSaver.Rotation\Relax.xml
Plugins\ScreenSaver.Rotation\Background 2.jpg
Plugins\ScreenSaver.Rotation\Rainbow.jpg

then the Relax screen saver will use the override settings file Relax.xml and the others will use the default.
in Plugins\ScreenSaver.Settings.xml, you can set the rotation period in seconds
<settings rotationPeriod="300" />

Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 26, 2012, 03:43:40 PM
Very nice work on this, Steven.

For those of use with dual (or multiple) monitors, would there be an easy way to support the screensaver on one and black on the others?

Thanks.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 26, 2012, 05:27:58 PM
not exactly what you want but if you edit the .xml file you will see this:
<!-- monitor: -1 = all screens, otherwise the index (starting from 1) of a single monitor the screen saver should display in -->
<settings monitor="-1" />

so set it to one of your monitors and for the other perhaps you could just turn it off

edit:
thinking about it, if the windows screensaver would have been activated what i will do in the above is black out the other screens. If you manually activate the screen saver then the other screens will remain active
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 26, 2012, 06:28:19 PM
edit:
thinking about it, if the windows screensaver would have been activated what i will do in the above is black out the other screens. If you manually activate the screen saver then the other screens will remain active
You are perceptive.  Your original comment was not exactly what I wanted as the monitor with MB would go to screen saver and the other monitor would remain live.  Your edit makes it more in line with what I was thinking and will do the trick for me.

Thanks!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 26, 2012, 07:43:58 PM
phred, i will need you to test this:
http://musicbee.niblseed.com/V2/ScreenSaver.zip

i have added a settings parameter
<!-- monitor: -1 = all screens, otherwise the index (starting from 1) of a single monitor the screen saver should display in
      otherMonitors: blackout = other monitors will display black;
                           active = other montitors will stay active and usable
           - this setting only applies when a specific monitor is set and the screen saver is manually activated. If activated by windows the other monitors always black out
-->
<settings monitor="1" otherMonitors="active" />

when setting the screen saver to display in a specific monitor, if activated in place of the windows screen saver the other screens now black out for any setting. If activated manually only the specific screen will show a screen saver and the other screens will either blackout or stay active depending on the otherMonitors setting
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 26, 2012, 09:14:36 PM
Well, it's certainly not working as I expected. 

With the monitor line set as:
<settings monitor="1" otherMonitors="active" /> activating the screensaver from the View menu the main monitor goes to screensaver and the other monitor remains active, which is correct.  If the MB screensaver is activated by the timer setting in Windows, the Windows screensaver kicks in on both monitors UNTIL I move the mouse (or hit a key) and then the MB saver is present on the main monitor, with the second monitor active.  HOWEVER, I can not get the MB saver to go away from the main monitor.  I had to bring up Task Manager to kill it.

With the monitor line set as:
<settings monitor="1" otherMonitors="blackout" /> no matter how the saver is activated I get the Windows saver until I move the mouse or hit the keyboard, then the MB saver present on the main monitor but won't go away until I invoke Task Manager.

Let me know what other information I can provide to help you fix this.

Thanks.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 26, 2012, 09:54:33 PM
for otherMonitors="blackout", i dont see how what you say is possible if the screen saver is manually activated - MB doesnt invoke the windows screensaver.
So could you reconfirm what you said

it would be my understanding of what you are saying is if the MB screensaver is manually activated it is correct (and should be the same for "blackout"), but if invoked by windows, MB isnt stopping the windows screensaver as it should and gets itself in a state where it doesnt close on mouse events (probably because it doesnt have focus)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 26, 2012, 10:28:36 PM
When all else fails, try rebooting.

Is there a setting in the XML for the wait time before the ss kicks in?  I don't see one, so I assume the wait time comes from the Windows ss setting.   I set the Windows wait time for 1 minute, and I think that's why the Windows ss kicks in first.  That responds to mouse action and goes away, leaving the MB saver showing.  But as before, it doesn't close.  Probably because, as you say, it doesn't have focus.

To summarize, if I invoke the MB ss from the View menu, monitor 1 has the ss, monitor 2 is active.  But I can't clear the ss from monitor 1.  If I let the ss wait for 1 minute, the Windows saver shows up on both monitors until a mouse/keyboard event.  Then the MB ss shows up on monitor 1 and monitor 2 is active.  And again, the ss won't clear unless I get Task Manager.  I guess I'm confirming what I said originally.

Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 26, 2012, 10:50:58 PM
you might have missed some earlier posts so i will summarise the behavior

the following applies if you activate the screen saver manually:
- when you have the configuration set so the other monitors stay active the behavior is that you need to click the screen saver window and moving the mouse will not close it. This is intentional so you can have musicbee displaying the screen saver in one monitor and still use your computer as normal. If you are using another app and let it idle then the normal windows screen saver will eventually activate, and moving the mouse will close the windows screen saver as normal. But the MB screen saver will still show.
Perhaps its misleading to call MB a screen saver when used with this configuration
- when you have the configuation set so the other monitors black out, then it should behave like a normal screen saver and hide the cursor/ close on moving or clicking the mouse anywhere on any of the monitors

if the screen saver is activated by a wait period from windows:
- only if musicbee is playing a track and has focus will the musicbee screen saver activate in place of the windows screen saver. This is intentional because other apps might want to do their own thing with a screen saver. When activated this way, the other monitors will black out irrespective of the configuration and should behave like a normal screen saver (from your report perhaps it is not).
- If these conditions are NOT met, then the windows screen saver should activate (unless another app does something itself) and the MusicBee screen saver should not display

so with this understanding, is there any incorrect behavior? (eg. perhaps you thought moving the mouse would close the screen saver as used in the first configuration)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 27, 2012, 02:00:39 AM
This may be yet another of those "phred only" issues, but yes, I feel there is incorrect behavior.

With the monitor line set to "active" or "blackout" the behavior is the same when the ss is activated by a wait period from windows.
- windows ss set to 1 minute wait
- MB ss set for monitor 1; active (or blackout) set for other monitor
- MB playing a track and has focus
- after 1 min windows ss launches on both monitors
- mouse or keyboard action closes windows ss on both monitors which then shows MB ss on monitor 1 and the active desktop on monitor 2 (whether set to active or blackout)  [This is the first of two incorrect behaviors.  If set to blackout, I would expect monitor 2 to be black at this point]
- neither clicking the mouse (on monitor 1) nor moving the mouse nor keyboard action closes the MB ss [This is the second incorrect behavior.]
- only task manager closes the MB ss

 I'm pretty sure you've said that you don't have two monitors, so I'm wondering if someone who does have two monitors would try to confirm the behavior.

Thanks for putting up with this.  If I'm still not understanding how this should behave, just tell me and I'll drop it.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on February 27, 2012, 03:47:54 AM
First off, I just want to say that this plugin is really awesome! Only about a week ago there was simply a wish and a conceptual image, and now we have this with full customization and neat features! I was going to ask for dual monitor support but you read my mind before I even got to it. Good work, Steven! :)

Secondly, I have two monitors and I'm running Windows 7. I can reproduce the same problem phread has above.

There is no difference regarding the setting of otherMonitors, when set to "blackout" the other monitor still shows desktop while the first one shows MB screensaver after Windows screensaver has stopped. I can only stop the MB screensaver from the task manager or from the task bar: hovering over the MB icon shows the screensaver as an application that can be closed next to the MB application.

Also, I have noticed this: If I set otherMonitors to "blackout" and invoke the screensaver manually, there is no blackout on the other screen. It looks the same as if the setting was "active", however with the setting of "blackout" I can not quit the screensaver by mouse click or key press (just like the issue above).  

Edit:

Summary for two monitors. 1 and 2 with task bar only on 2:
When invoked manually (by hotkey):
* If monitor="-1" -- Everything works as expected
* If monitor="1" and otherMonitors="active" -- Everything works as expected
* If monitor="1" and otherMonitors="blackout"
-- MB screensaver shows on monitor 1, monitor 2 is still active.
    Screensaver must be quit from task manager or task bar.
* If monitor="2" and otherMonitors="active" -- Everything works as expected
* If monitor="2" and otherMonitors="blackout"
-- Monitor 1 is active, monitor 2 is black.
    "Blackout" on monitor 2 does not respond to mouse click.
    Alt+Tab will show task bar from where it can be quitted (the "black" does not show in task manager).

When MB has focus and is invoked by Windows screensaver timer:
* If monitor="-1" -- Everything works as expected
* If monitor="1" and otherMonitors="active"
-- Windows screensaver shows first.
    Once gone, MB screensaver shows on monitor 1 and monitor 2 is active.
    Screensaver can only be quit from task manager or task bar.
* If monitor="1" and otherMonitors="blackout"
-- Windows screensaver shows first.
    Once gone, MB screensaver shows on monitor 1 and monitor 2 is active.
    Screensaver can only be quit from task manager or task bar.
* If monitor="2" and otherMonitors="active"
-- Windows screensaver shows first.
    Once gone, monitor 1 is active, monitor 2 is black.
    Alt+Tab will show task bar from where it can be quitted (the "black" does not show in task manager).
* If monitor="2" and otherMonitors="blackout"
-- Windows screensaver shows first.
    Once gone, monitor 1 is active, monitor 2 is black.
    Alt+Tab will show task bar from where it can be quitted (the "black" does not show in task manager).

When MB does not have focus and Windows screensaver timer runs out:
Everything works as expected

For me I'm perfectly fine as I'm only gonna use it for monitor 1, the "active"-setting and start/stop it manually. But if you want I can help you track down the bugs.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 27, 2012, 06:42:58 PM
updated:
http://musicbee.niblseed.com/V2/ScreenSaver.zip

i fixed a silly bug that seems consistent will all the reported findings (but i cant test myself to be 100% sure)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 27, 2012, 09:01:44 PM
Not sure if it's due to my sometimes buggy videodrivers, but I found that the Spectrum Visualizer works fine for all images with corresponding xml files in the 'rotation' folder, but when showing the default ScreenSaver.Background.jpg image the Visualizer is corrupted for that screen. The visualizer in the next screens from the rotation folder are all o.k. again.

Is it ment to include the default image in the rotation, or should only the images and settings in the rotation folder be displayed and rotated?
A setting for behaviour I would like is that it first shows the screensaver.background.jpg image once, and after that only rotates all pictures in the rotation folder.

(if anyone want to test my screensaver settings, I just posted it in the customisations > screensaver topic, called 'rainbow wave plasma rotation')
 

 
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 27, 2012, 09:26:41 PM
i've not seen any corruption with the visualiser default or rotation and its exactly the same code as the rotation images. Perhaps there is something different you did for the settings of that file that causes a video bug (maybe try temporarily using one of the rotation image settings in place of the default to confirm)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 27, 2012, 09:51:47 PM
The corruption shows in a way that when displaying the default picture, the visualizer ment for the default picture is displayed but frozen, and the visualizer from the previous picture is showing.

In the screenshot: left bottom (orange) should be active and moving but is frozen, and the (green) one at the right bottom is the one from the previous picture is still showing and active.
Seems to be some kind of a refresh problem?

(http://i.imgur.com/QNhRUl.jpg) (http://i.imgur.com/QNhRU.jpg)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 27, 2012, 10:00:31 PM
did you do the test i suggested? As i said, it is exactly the same code so the problem is likely to be something about your setting file
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 27, 2012, 10:33:34 PM
i have an idea what it might be (nothing to do with it being the default file) and will look at it tomorrow night
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 27, 2012, 10:51:44 PM
Tried that, the problem seems to be somewhere in that region.
I found and corrected two [spaces] that were different, but that gave a somewhat other kind of corruption.
(a part of the visualizer moved, and a part didn't  ???

I edited the xml files with notepad++.
Is that o.k. or is that not suitable, and could that maybe create problems?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 27, 2012, 11:22:38 PM
updated:
http://musicbee.niblseed.com/V2/ScreenSaver.zip

i fixed a silly bug that seems consistent will all the reported findings (but i cant test myself to be 100% sure)
No change for me.  It still has the same behavior as I reported earlier and paq confirmed.  But like paq, I can live with one monitor active if this is going to cause you to start pulling out your hair.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on February 28, 2012, 12:00:01 AM
The only things that change since my previous post with the newer version is this:

When invoked manually (by hotkey):
* If monitor="2" and otherMonitors="blackout"
-- On the contrary from previous test, monitor 1 is now black and monitor 2 is active. Otherwise the same.

When MB has focus and is invoked by Windows screensaver timer:
* If monitor="2" and otherMonitors="active"
-- On the contrary from previous test, monitor 1 is now black and monitor 2 is active. Otherwise the same.
* If monitor="2" and otherMonitors="blackout"
-- On the contrary from previous test, monitor 1 is now black and monitor 2 is active. Otherwise the same.

Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on February 28, 2012, 03:35:08 AM
I found a bug. RatingAlbum shows quite many more stars instead of the correct rating.

For example if I play an album with a rating of 1 star, 20 stars are shown. With a rating of 2 stars 40 stars are shown. It seems to match the actual album rating that can be found in the tag inspector.

One question: What does "scale", true or false, do for the SpectrumVisualiser?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 28, 2012, 07:28:46 AM
1. Is it possible to create a text return when very long song- or artist names don't fit the screen?

2. Is it possible to create a 'center' (or 'centre'?) align function?

Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 28, 2012, 08:31:14 AM
No change for me.  It still has the same behavior as I reported earlier and paq confirmed.  But like paq, I can live with one monitor active if this is going to cause you to start pulling out your hair.
i will create 2 virtual screens so i can simulate this otherwise i am never going to get to the bottom of it
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: lynott on February 28, 2012, 09:43:25 AM
I "patched" the latest screensaver update, and now it is disabled in prefs. When trying to enable I get an error message telling me to use the latest version of Musiccbee.  I use the latest from the beta 2 thread, and everything worked fine prior to updating the screensaver files.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 28, 2012, 09:48:24 AM
One proposal.

The screensaver, with the option to rotate backgrounds, is just great, BUT... (there's always a 'but'  :P)

There's plenty of nice clear backgrounds out there (Deviantart has hundreds). With all of them, the screensaver looks like that:

(http://i41.tinypic.com/2irw908.jpg)

It's difficult to read the title or the singer...  :(  (and there is backgrounds much clearer!)

The proposal is... why not having a secondary file 'ScreenSaver.CLEARBACKGROUND.xml' that is just applied to clear backgrounds?

Changing the font colour, it just looks like that: (the xml file with colours changed is here: http://www.mediafire.com/?vm6wq5qmvk4lsik )

(http://i43.tinypic.com/2gucej9.jpg)

How to know that a background is clear? Well, it could be showed in the name of the image. So, for example, any background that needs dark fonts can be renamed as 'PictureName.CLEARBACKGROUND.jpg', that tells MB 'hey, don't use the normal xml file, use the alternative one'  :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 28, 2012, 10:12:25 AM
One proposal.

...
you can assign each picture a specific settings file, which might change the colour of the text or position to better suit the picture
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 28, 2012, 10:14:51 AM
I "patched" the latest screensaver update, and now it is disabled in prefs. When trying to enable I get an error message telling me to use the latest version of Musiccbee.  I use the latest from the beta 2 thread, and everything worked fine prior to updating the screensaver files.
you cant be using the latest MusicBee.exe version - its here:
http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: lynott on February 28, 2012, 10:26:01 AM
Thanks. That solved it :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 28, 2012, 11:06:15 AM
One proposal.

...
you can assign each picture a specific settings file, which might change the colour of the text or position to better suit the picture

Didn't know it. Great!  :D
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: lynott on February 28, 2012, 12:26:01 PM
Is it possible to have MB activate the screensaver  quicker than the windows saver is set to do? When not using MB, saver is set to 20 mins, but when using MB I'd like it to kick in after say 2 mins. Is that possible?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 28, 2012, 01:09:55 PM
i am not planning to make any further enhancements to this plugin after the remaining bugs are fixed.
You can activate the Screen Saver manually via hotkey or the View menu. Otherwise you could reduce the windows timeout period if thats going to be acceptable.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 28, 2012, 07:54:55 PM
this should resolve all the issues:
- dual screen handling
- incorrect handling of settings for rotation in certain circumstances (anyone using the rotation feature should apply this version)
- album rating star count

http://musicbee.niblseed.com/V2/ScreenSaver.zip

i also decided to add an override setting for the idle period eg. if you want the MusicBee screensaver to invoke sooner than the standard windows screensaver but MusicBee still needs to be playing a track for the screensaver to activate:
<settings idlePeriod="0" />
where idlePeriod: 0 = trigger in place of the windows screen saver, 1..n = trigger after n seconds of idle time

i have also added some notes towards the bottom of ScreenSaver.Settings.xml explaining some of the non-obvious attributes
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 28, 2012, 08:05:20 PM
Would it be possible (and quick, since you don't want to spend more time with this) to allow the time (hour and minute, HH:MM) as an aditional field for the screensaver?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on February 28, 2012, 08:28:39 PM
Sweeeeet,

Just tested, working perfectly now. Thnx again!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on February 28, 2012, 08:37:59 PM
i've also added:
<element type="Time" x="1000" y="30" font="Arial" style="Regular" size="14" fg="245,245,245" ></element>

http://musicbee.niblseed.com/V2/ScreenSaver.zip
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on February 28, 2012, 11:34:46 PM
this should resolve all the issues:
- dual screen handling
- incorrect handling of settings for rotation in certain circumstances (anyone using the rotation feature should apply this version)
- album rating star count

http://musicbee.niblseed.com/V2/ScreenSaver.zip

i also decided to add an override setting for the idle period eg. if you want the MusicBee screensaver to invoke sooner than the standard windows screensaver but MusicBee still needs to be playing a track for the screensaver to activate:
<settings idlePeriod="0" />
where idlePeriod: 0 = trigger in place of the windows screen saver, 1..n = trigger after n seconds of idle time
NICE!!!  Works perfectly now.  And the addition of the idle period override, along with the time display makes it even sweeter.

Thanks Steven. 
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on February 29, 2012, 11:39:30 AM
i've also added:
<element type="Time" x="1000" y="30" font="Arial" style="Regular" size="14" fg="245,245,245" ></element>

http://musicbee.niblseed.com/V2/ScreenSaver.zip

Thanks!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: lynott on February 29, 2012, 12:07:33 PM
Thanks :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Carsten on March 03, 2012, 04:53:21 PM
Steven great work so far,
but i would skip the albumreference eg "from "Greatest Hits""
if there is now album set, in this case it displays "from """.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 04, 2012, 02:08:45 AM
Steven great work so far,
but i would skip the albumreference eg "from "Greatest Hits""
if there is now album set, in this case it displays "from """.

First off, create a virtual tag like <IsNull(<Album>,,From "<Album>")> that will show "From 'Album Name'" when <Album> is set and nothing otherwise. Then edit ScreenSaver.Settings.xml and replace the part about the album and the word "From" with your recently created Virtual Tag.

Another "solution" would be to just remove the "From"-word so that nothing at all will be shown when no Album is set.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on March 04, 2012, 01:46:27 PM
It would be nice to have the option for transparency for the progressbar and it's border.
And while we're at it, maybe also for the time.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on March 04, 2012, 01:48:54 PM
i am not planning to make any further enhancements to this plugin after the remaining bugs are fixed.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on March 04, 2012, 01:52:39 PM
Speedy Steven already fixed those bugs very fast, and after that e.g. also added 'time' display option.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 04, 2012, 01:57:56 PM
i'm not planning to make any further changes to this but you can use an alpha channel on any colour definition - see the notes in the example ScreenSaver.xml file
It definitely works for the progress bar border as i use that in the latest default screen saver, and i think it should work for the progress bar itself
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on March 04, 2012, 01:58:53 PM
Ahhh --- and here I am trying to save him some work.

I guess we should all realize that just because he says "enough" or "no" he can always go back and revisit the issue.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on March 04, 2012, 02:00:48 PM
Ah, stupid of me, I never thought of just adding the alpha value myself.
Thnx.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on March 04, 2012, 11:44:02 PM
I was thinking now... there was some progress bar 'Soundcloud' style that at the end was not added because it didn't fit well in the now playing track tab...

If the code is done... how about adding it to the screensaver?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: jistme on March 05, 2012, 10:12:31 AM
You mean something like this?:

http://getmusicbee.com/forum/index.php?topic=5665.0
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on March 05, 2012, 11:38:39 AM
You mean something like this?:

http://getmusicbee.com/forum/index.php?topic=5665.0


Precisely!

I remember that Steven was thinking that it didn't fit well in the general interface of MusicBee.

However, I think it could fit perfectly in the screensaver:

(http://i41.tinypic.com/i44q38.jpg)

Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: ma_t14 on March 05, 2012, 12:04:54 PM
Greb that looks wonderful  :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on March 05, 2012, 06:33:15 PM
 :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 05, 2012, 08:31:57 PM
i have added a sound graph element
<element type="SoundGraph" x="73" y="665" width="1006" height="80" scale="true" fg="20,90,140" bg="80,150,200" bdr="200,50,110,160"></element>

with this note:
  - for SoundGraph, because retrieving the data is very expensive it is only done once at the start of a track and uses the SoundGraph width from the default ScreenSaver.Settings file. So if you have rotation enabled and change the width of the sound graph, then the existing sound data will be scaled to that size

i also will look to make the screen saver viewable like a visualiser so it shows inside of musicbee
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on March 06, 2012, 01:43:56 PM
Great! (both things)

Just waiting for the link....  ;D
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 06, 2012, 07:47:59 PM
A small bug I found: When displaying a rating in the screen saver and the rating is "No stars" the corresponding symbol is not shown.

Is it possible to add support for changing the size and color of the rating stars and the love symbol?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 06, 2012, 08:09:46 PM
i have put docking the screen saver as a visualiser on hold for now as there are some complications with getting it to work well ie. scaling the panel layout to the new smaller size

this has the SoundGraph element as described - its in the default settings file but commented out
http://musicbee.niblseed.com/V2/ScreenSaver.zip

also you need the lastest MusicBee.exe which has the API enhancement to support the sound graph
http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 06, 2012, 10:36:50 PM
Support for screensaver and dual monitors is broken in the latest version of the screensaver (Windows 7, MusicBee 2.0.448).

For example if I have the line <settings monitor="1" otherMonitors="active" /> the screensaver will upon pressing the assigned hotkey show up on both screens, instead of only one. Once gone by clicking on it the mouse cursor will not show while hovering over MusicBee. It is still possible to interact with MusicBee by both mouse and hotkeys but the mouse pointer disappears in the area of MusicBee. If I then activate the screensaver once again using the hotkey the screensaver will show up on the correct screen. But the mouse does not seem to reappear.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 06, 2012, 11:09:22 PM
i dont have time to properly test but i have reuploaded screensaver.zip and it should be fixed
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 06, 2012, 11:17:23 PM
I have that time and it seems to be back to normal now. Thanks Steven :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 06, 2012, 11:20:12 PM
i reuploaded again as i found another bug when re-opening a second time
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on March 07, 2012, 02:43:40 AM
Not sure how popular this would be, and I also know you said you were (mostly) done adding new things to the screensaver, but I think it would be nice to have the rotation triggered by the next track starting.  Something like "rotationPeriod=TrackLength"

Thanks for considering.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 07, 2012, 02:57:53 AM
There is another new bug present in the latest upload of the screensaver regarding dual monitors:
If I have <settings monitor="1" otherMonitors="active" /> the screensaver shows on monitor 1 as it should but the X / close symbol / cross in the upper right corner shows when the mouse is hovering over the active screen, and not when over the screensaver.  If I change to monitor="2" the close icon displays correctly.  If I use an old mb_ScreenSaverPlugin.dll with latest modified date of 2012-02-28 21:31, the behavior of the close icon is correct.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 07, 2012, 08:31:29 AM
trying with my simulated 2 screens i cant reproduce this and i also dont see how its possible - it cant capture mouse events when the cursor is not over the panel unless you enable a control to have exclusive mouse capture which is not being used in this case.
Perhaps its simply not hiding the X when you move the mouse out of the screen saver bounds (it worked fine for me, but its not unknown for mouse events to not fire)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Greb on March 07, 2012, 03:55:49 PM
Is there some way to include in the screensaver the cover or the soundgraph from the following tracks?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 07, 2012, 04:01:58 PM
no there isnt and any further enhancements to this plugin will need to wait
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 07, 2012, 10:54:59 PM
trying with my simulated 2 screens i cant reproduce this and i also dont see how its possible - it cant capture mouse events when the cursor is not over the panel unless you enable a control to have exclusive mouse capture which is not being used in this case.
Perhaps its simply not hiding the X when you move the mouse out of the screen saver bounds (it worked fine for me, but its not unknown for mouse events to not fire)
Then that's strange... However I got some new clues for you. It seems to be dependent of which monitor is primary.

* Monitor 1 is primary and configuration is <settings monitor="1" otherMonitors="active" />
-- Everything works as expected.
* Monitor 1 is primary and configuration is <settings monitor="2" otherMonitors="active" />
-- If I start screensaver with MusicBee and the mouse pointer in monitor 2, then it will start without a close icon shown. Once I move the mouse to monitor 1 the close icon shows up. When I move it back to monitor 2 the close icon is still being shown. If MusicBee or the mouse pointer is not in monitor 2 when I start the screensaver then the close icon will be shown from the start and will not disappear wherever the mouse is.

* Monitor 2 is primary and configuration is <settings monitor="1" otherMonitors="active" />
-- The behavior is inverted from the expected one, that is the close icon shows when over monitor 2 and disappears when over monitor 1.
* Monitor 2 is primary and configuration is <settings monitor="2" otherMonitors="active" />
-- Everything works as expected.

In summary: The close icon works when the screensaver is shown on the same screen as the primary one, otherwise not. If I use a mb_ScreenSaverPlugin.dll file with latest modified date of 2012-02-28 21:31 (as seen when I  right click the file > properties > information tab > latest modified date) then the behavior of the close icon is correct for all cases above.

Although it is a nice touch with the close icon showing when hovering over the screensaver, maybe the easiest solution is to not display it at all?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 08, 2012, 06:41:11 PM
thanks paq, that detailed test report was very helpful and i believe i found and fixed the problem
http://musicbee.niblseed.com/V2/ScreenSaver.zip
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 10, 2012, 12:06:48 AM
thanks paq, that detailed test report was very helpful and i believe i found and fixed the problem
http://musicbee.niblseed.com/V2/ScreenSaver.zip

I can confirm it is now working as it should, good work Steven! :)

However, I've found a new small bug for you: If the screensaver is running and I at the same time am changing the rating of the currently playing song, either by a hotkey or in MusicBee on an active monitor, the rating shown in the screensaver does not refresh. The rating updated accordingly with the mb_ScreenSaverPlugin.dll file with latest modified date of 2012-02-28 21:31 but has not been working since.

Speaking about rating I will just remind you that the rating "No stars" does not show at all in the screensaver. I really appreciate all your efforts you're putting into this and hope that I can be of assistance :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 17, 2012, 02:46:59 PM
i'm back looking at this again
i am planning to make this plugin interactive, so you can click the progress bar, have player control buttons (if you want) etc
it will still have screen saver functionality but really that will be a subset of what this becomes. So you will have another view in the Views menu called "Theatre Mode" as well as the existing "Activate Screen Saver" function. When activated as a view, it will be interactive and dock to the size of the musicbee window but can be switch to full monitor size. When activated as a screen saver (manually or from timeout) it will behave like a screen saver and close when the mouse is moved.
Because it needs to resize the musicbee window size i will need to introduce some new anchor and dock attributes on the elements so the layout is better handled on resize.

I think its appropriate to rename this plugin as the existing "Screen Saver" name would lead people to make wrong assumptions of what it is. Someone suggested "Theatre Mode" which i think is good and what i will call it unless people want to suggest something they think might be better.
It does mean i am going to rename the plugin and the settings file names
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Maleko12 on March 17, 2012, 10:17:43 PM
YES! I made a similar comment on the Clean LP Screensaver topic.  I don't like screensavers and I don't use them either, but I LOVE these minimalist designs. "Theatre Mode" would be a great name and be yet another unique feature that MB has.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: SimonBRT on March 18, 2012, 05:54:29 AM
This sounds like an excellent development.  Can't wait to try when it arrives.  I think theatre mode sounds like a perfect name...
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 21, 2012, 11:10:35 PM
now with "Theater Mode" support. Two menu items are added to the View menu:
- Theater Mode
- Activate Screen Saver
both can be activated by hotkey assignment

When displayed using the Theater Mode view, the view docks to the size of the MusicBee application window, and the controls (progress bar, sound graph and a new player bar) are all interactive. Pressing F11 or Alt Enter switches the view to full screen. The player bar is displayed by moving the mouse and automatically hides afterwards.
When activated as a screen saver, the behavior is the same as before

updated MusicBee.exe to support new required API functions:
http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip
new plugin:
http://musicbee.niblseed.com/V2/TheaterMode_Plugin.zip

1. I suggest you delete or rename the old mb_ScreenSaver.dll so it doesnt intefere with this new plugin (which is called mb_TheaterMode.dll)
2. the default settings file is now called: TheaterMode.Settings.xml
    - it has instructions inside it, but the main difference is elements can be placed relative to other elements and have their width sized to other elements. This is necessary in order to handle screen resizing well. Additionally fonts and elements will scale (unless you disable the scaling setting)
    - the old screen saver settings file probably wont work exactly as before so suggest you adjust the new settings file to your liking


paq, i have added the Zero rating image. However in this version clicking on the ratings does nothing

edit:
- one thing i just realised is when you have the window borders unskinned, there isnt an obvious way to close the view. Just move the mouse and click the settings button on the player bar, which has a "Restore Main Window" menu item.
When skinned you can also access the View menu to restore the main window
- also there is a bug where you cant move the musicbee application window when the Theater Mode view is displayed
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 22, 2012, 04:25:01 AM
Awesome indeed! :) Here's a rundown of a few things that struck my mind after I replaced the Screen Saver plugin with this one:

Wish: To be able to go from Theatre Mode (non full screen) back to Main Player by pressing the Esc key.

Bug #1: With two monitors and no matter the setting of the line <settings monitor="1" otherMonitors="active" /> this error is returned every time the Screen Saver closes:
Code
System.NullReferenceException:  Object reference not set to an instance of an object
   at MusicBeePlugin.Plugin.CloseWindows()
   at MusicBeePlugin.Plugin.TheatrePanel.OnMouseMove(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseMove(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Bug #2: The Screen Saver shows up on monitor 1 also with the setting of monitor="2". The other monitor behaves correct.

Maybe bug #3: When in Theatre Mode MusicBee does not react to some hotkeys, even if they're global. For example: I can't restart MusicBee and tracks does not get rated using my hotkeys for that, and they're all global. Bug or is it supposed to be like this?

Follow-up:
paq, i have added the Zero rating image. However in this version clicking on the ratings does nothing
The Zero Rating symbol does not show up for me neither in Theatre Mode or in Screen Saver. This applies to both Rating and AlbumRating.

Question: Is it possible to position something centered vertically (and that also adjusts to scale)? I have a background picture with a line drawn from left to right in the middle vertically where I want to place the Spectrum Visualizer. I've tried but never got it to work for all possible sizes of the MB window.

PS: Is it possible to do so that errors shown in MB are always shown in english? Right now they are shown in my locale, swedish, wich means I have to translate them before I post them here.

Keep up the good work! :)
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 22, 2012, 08:23:03 AM
i cant believe i messed up #2 again - stupid mistake with the validation
this should fix #1,#2 - i will look at the others later and it should be ok to add a centre attribute
http://musicbee.niblseed.com/V2/TheaterMode_Plugin.zip

anyone new reading this you also need to update MusicBee.exe but this is unchanged from yesterday
http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Alexis on March 22, 2012, 01:49:30 PM
Fantastic!!!!!!   Thank you Steven!

I am not sure it is an ideal requirement, but I have discovered that  when theater mode is activated, the MB window cannot be moved.  

Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 22, 2012, 02:06:09 PM
yes i am aware of this - see my earlier post for a couple of other known issues. These will be fixed tonight
I noticed the time is displayed off the panel - is that because you changed the font or position yourself?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Alexis on March 22, 2012, 03:10:45 PM
Thank you.  No, i have not changed anything about font or positioning.  I did not even  notice that.   Dragging the edge to narrow or widen the window it  does not affect it either.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on March 22, 2012, 05:06:07 PM
How do i convert my Screensaver files to Theater files? they are scrambeld now :S i treid somethings but it seems to go wrong

edit:
im going to use your included xml file and edit it :)

Resize bug:
http://i350.photobucket.com/albums/q429/Silasje1/sssss.png (fixed when pressing next track if it helps :)

edit2:
I can't get the Theather plugin to look the same as the Screensaver plugin :( I cant change things good enough and the Time element keeps going an other direction then i want :P

Edit3:
Renaming the screensaver files to theater and then using it in the Screensaver mode doesnt look the same as the normale Screensaver plugin would :S Maybe included the Screensaver plugin code in the theatermode plugin? or create 1 plugin since this isnt going to work
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: dgbx on March 22, 2012, 05:09:34 PM
I'm having the same issue.  Theatre mode is working but not screensaver.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 22, 2012, 05:38:40 PM
How do i convert my Screensaver files to Theater files? they are scrambeld now :S i treid somethings but it seems to go wrong
did you remove the old screen saver plugin - if not please check the instructions i gave from a few of posts before
the new xml file each element can be relative to another using the xAnchor and yAnchor attributes. In these cases x and y are an offset, so xAnchor="Picture.Right" x="-5" means 5 pixels to the left of the right side of the picture. See the new settings file for examples
as for the resize issue, i will check that out

I'm having the same issue.  Theatre mode is working but not screensaver.
which issue is that?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on March 22, 2012, 05:42:28 PM
How do i convert my Screensaver files to Theater files? they are scrambeld now :S i treid somethings but it seems to go wrong
did you remove the old screen saver plugin - if not please check the instructions i gave from a few of posts before
the new xml file each element can be relative to another using the xAnchor and yAnchor attributes. In these cases x and y are an offset, so xAnchor="Picture.Right" x="-5" means 5 pixels to the left of the right side of the picture. See the new settings file for examples
as for the resize issue, i will check that out

i already had removed the old plugin.. i will try to find the new settings :)
1 question:
Can you maybe try to include the Screensaver Plugin in the Theater mode. This means those don't need to be recoded.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: dgbx on March 22, 2012, 05:57:43 PM
I renamed the following files:

c:\Program Files\MusicBee\Plugins\mb_ScreenSaverPlugin_orig.dll
c:\Program Files\MusicBee\Plugins\ScreenSaver.Settings_x.xml

so no correctly named files for those two.

The only changes I did to the file "c:\Program Files\MusicBee\Plugins\TheaterMode.Settings.xml" was to increase the coming up next to 10 songs and include the sound graph.

Using the Edit/Preferences/Plugins menu I have tried both enabling and disabling the screensaver plugin though I did not uninstall it.

---------

OK, with the two screensaver file renames above AND disabling the screen saver plugin in the Edit/Preferences/Plugins menu, I now have both the screen saver and theatre mode working.  Whew!

Thanks for the tip.  I had read the instructions but did not do them correctly I guess.

Very nice having both screen saver and theatre mode controlled from the theatre mode files/settings.  I thought screen saver would still have to be enabled in the plugin preferences to have it work.  Obviously I thought wrong.


Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: dgbx on March 22, 2012, 06:12:53 PM
Also was able to move the "Time" element back to the left so it shows fully.  I like the new relative positioning.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: lnminente on March 22, 2012, 07:55:04 PM
also there is a bug where you cant move the musicbee application window when the Theater Mode view is displayed
Maybe there is a mouse hook for when the left mouse button is clicked.

If it doesn's exist already, an element for the xml like a back button at top left could be really nice to an easier come back to the normal view
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 22, 2012, 08:08:19 PM
thats a good suggestion but i wont have time to implement it for now.
I have fixed it so it always displays the menu (even when windows borders are not skinned) and pressing the Escape key also closes it. I have also fixed the bug with not being able to move and the other bugs reported.
I will post an update later after making a couple more changes
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 22, 2012, 09:41:52 PM
this should fix the bugs - you must use the latest musicbee.exe link below with this:
http://musicbee.niblseed.com/V2/TheaterMode_Plugin.zip
http://musicbee.niblseed.com/V2/MusicBee_Exe_Patched.zip

includes a couple of changes:
- when shuffle mode is enabled, it pre-queues the next X number of random tracks so you can see them in the upcoming tracks list.
- pressing Esc closes the Theatre Mode view
- a new Center attribute eg. yAnchor="Panel.Center" y="0" should be the center of the panel
- the Rating field now uses the size attribute
  <element type="Field" id="Rating" size="20" ... means each star will be 20px high. The default is 16
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Alexis on March 22, 2012, 10:47:13 PM
Thank You Steven, works just great!
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 23, 2012, 09:23:30 AM
I have added a plugin topic for this functionality
see
http://getmusicbee.com/forum/index.php?topic=6009.0
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on March 23, 2012, 02:08:39 PM
Something like width: 100% would be nice :) i don't like to make loads of values to keep the progressbar in the panel
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 23, 2012, 02:29:59 PM
you can already dock a element width to another element eg. the album cover, and then specify an offset from that to tweak the width. So perhaps you can already acheive what you want (see the default template for elements that have their width docked)
otherwise could you give a bit more detail with an example of how you would want to use the %
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on March 23, 2012, 02:33:06 PM
The progressbar i always use (at the top) is easier to code just doing width: 100%. Diffrent screen widths can mess up the lenght if i manually put it to  xAnchor="Panel.Left" x="0"
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: paq on March 23, 2012, 02:52:57 PM
The progressbar i always use (at the top) is easier to code just doing width: 100%. Diffrent screen widths can mess up the lenght if i manually put it to  xAnchor="Panel.Left" x="0"

To make the progressbar be equal width of the screen, just have widthDock="Panel" width="0" in the ProgressBar element.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: silasje1 on March 23, 2012, 03:14:16 PM
Thanks :) updated my Clean LP theater. could someone try it?
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on March 25, 2012, 03:09:07 AM
Not sure how popular this would be, and I also know you said you were (mostly) done adding new things to the screensaver, but I think it would be nice to have the rotation triggered by the next track starting.  Something like "rotationPeriod=TrackLength"
Now that TheaterMode has taken off like wildfire (or so it seems) is there any chance that something like this can be implemented?

Thanks.
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: Steven on March 25, 2012, 11:31:59 AM
i have implemented that for the next plugin update
<settings rotationPeriod="EndOfTrack" />

To everyone, going forward could any future requests/ questions/ issues be raised on this topic:
http://getmusicbee.com/forum/index.php?topic=6009.0
Title: Re: 'screensaver' playing view mode for HTPC plasma/lcd displays
Post by: phred on March 25, 2012, 01:29:03 PM
Thank you, kind Sir.  I look forward to seeing it in action.