Album Art Viewer v1.1

| | | | | |

Here you can find my modified versions of the Album Art Viewer plug-in which was originally developed by Will Fisher but i've now taken on development of the plug-in (though it is included the Winamp SDK as an example of accessing the album art api interfaces in the client).

Patches to this plug-in have been made to allow for the plug-in to work correctly with newer Winamp clients (now only supporting Winamp v5.66 / v5.666 due to api usage and since there's no real need to use old and unsupported client versions) and to add additional features based on forum requests and my own usage of the plug-in.

If you do come across an issue then you can either contact me or post in this thread which has followed my patched versions of the plug-in as well as the original releases by Will.

  • Improved quality of artwork scaling so images should look better to the eye
  • Changed to use some 5.66+ specific API to save on code duplication
  • Changed when settings are saved to only happen if something changed
  • Re-saved the notfound.png image to get a ~60% saving with no quality loss
  • Changed when some aspects are done from initial loading to later on to reduce overall loading time
  • Changed to be compatible with the preference window changes in Winamp v5.66x
  • Changed when settings are saved to help Winamp's closing speed
  • Re-fixed the R6031 CRT error on closing Winamp
  • Fixed the embedded mode not appearing correctly on first load until the library is re-sized
  • Added some missing localisation support (details view)
  • Minor optimisations to the drawing code for size and speed
  • Added support for SHOUTcast v2 in-stream artwork from compatible SHOUTcast v2 DNAS
  • Added support to query the file directly for rating information if no rating provided by the library
  • Added skinned menu support on compatible Winamp clients
  • Changed to check for additional Winamp notifications to ensure we update on more potential artwork changes
  • Changed the plug-in to only work on Winamp 5.64 and higher due to plug-in API changes
  • Fixed compile issue causing a R6031 error on closing with some setups and Windows OS versions
  • Fixed some minor coding issues from a code review
  • Disabled 'Get album art' menu item as Winamp does not have a working artwork provider since the v5.63 release which also affects all previous Winamp versions (this item will be re-enabled if / when that changes)
  • Added option to right-align the album art in details mode as well as albumart positioning / sizing improvements in details mode
  • Added option to only show albumart found in details mode (will not show the not found image if it would otherwise be shown)
  • Added Windows App / Shift + F10 support for showing the options menu in the window
  • Changed the no album art image to be a 241 x 241 instead of 75 x 75
  • Changed details mode to revert to albumart only mode if there are no details to show e.g. for separators
  • Changed 'Open folder' to use the api_explorerfindfile so it will select the file (matches rest of Winamp now)
  • Fixed 'Open folder' to work with rsn playlist entries (now they can cope with album art)
  • Fixed slow resource leak when details mode was enabled
  • Fixed non-details mode being incorrectly refreshed on mouseover / clicking in window
  • Fixed changing of the Winamp's playlist editor / library window font not being followed (might give some layout quirks)
  • Fixed changing the option for following the current track vs currently playing not updating correctly
  • Added an option to embed the album art window into the Media Library window
  • Standardised the menu handling code into common functions instead of the duplicated instances (saves some size of the plug-in)
  • Added initial implementation of the info preview as suggested from the plug-in's forum thread (enable via right-click)
  • Fixed the plug-in to no longer crash Winamp on screen resolution changes (has been like this since the plug-in was made)
  • Fixed open folder action opening the folder for currently playing file instead of the selected file
  • Changed the skinned window code to use the embedwnd codebase (resolves some edge cases if the modern skin mode is used)
  • Changed the plug-in to only work on Winamp 5.58 and higher due to unicode api and supporting dll linkage (saves 64KiB)
  • Fixed the hidemodern ini setting being read at the wrong stage of loading
  • Improved handling when plugin load order is different on some quirky installs
  • Removing menu item for enabling modern skin support in the Album Art window
  • Added in a prompt (shown only once) explaining the issues with enabling the feature and if they are sure they want to do so
  • Added loading support of notfound.bmp from the currently loaded skin which can be just a renamed .png file (to work around skin extraction quirks)
  • Added detection of being used under a modern skin so the album art window and menu item can be automatically hidden (default: on)
  • Added in ability for the tracking action to work via the keyboard actions along with button clicking
  • Tweaked the menu item text so the items (at least with en-us translations) is better consistant with the rest of Winamp (if that's possible, heh)
  • Added config menu into the Winamp preferences so it's possible to access the options when the album art window isn't shown
  • Source code available from here
  • Added localisation support (with example en-us language file included in the installer)
  • Adding an option to show the album art when clicking on an item in the playlist editor without having to play it
  • Fixed the main menu item not working via the system menu
  • Plug-in will now only work on 5.53+ clients to ensure the Alt+A global shortcut will work (bug-fix for v0.3)
  • Fixed issue with api.h not containing all of the required headers (only affects compiling source code)
  • Source code available from here
  • Added Alt+A global shortcut to toggle the album art window
  • Album art window is now included in Winamp's ctrl+tab feature (broken in some 5.5x builds)
  • Double-click will now open the folder (like the native album art window does)
  • Made background colour match the media library album art views (override with waBkClr=1 in the plugin's ini section)
  • Made compatible to deal with Winamp being minimised on startup so the window won't appear briefly
  • Implemented winampUninstallPlugin(..) support
  • Minor code changes to better reflect some Winamp api usage
  • Source code available from here

As of v0.8 of the plug-in a 'details' view has been preliminarily added which acts a bit like the file information view in the Bento skin or the album art views in the media library. The image to the right shows the feature in usage including the hot-tracking on the rating feature as it appears with the current v0.8 implementation.

Now that the basis of the feature is implemented i'd like to get some feedback from people as to what is needed to make it more useable or an issues with how it works please.

As of v0.85, the plug-in provides an 'embed' option has been implemented which allows the album art to be embedded into the Media Library window.

Due to how this works, you will need to restart Winamp for changing into this mode which will also remove the standalone instance of the window (unchecking the option restores this).

The screenshot to the right shows this mode in effect when using a classic skin (left) and a modern skin (right).