Sourceforge Community Choice Award 2009

We have nominated ChemicalCovers to the Sourceforge Community Choice Award 2009 in the category : “Best project for Multimedia”.

We dream ? “Certes”…

You can vote for ChemicalCovers with this link :

Leave a Comment

We are not dead

Version 0.3.0.1 is out. Well, that means we are not dead.

Job, family, hobbies don’t let us much spare time. But we’ll keep on working on this… :-)

So, with this release, things are going better and better regarding “User Interface Experience”: small, but annoying bugs, have been removed:
- now copy paste artist and or album works fine,
- tab key let you navigate among those 2 fields,
- Drag and drop from and to chemical cover is better.

And, under the surface, a few things have also been set right:
- Junorecords search engine has been improved,
- some unwanted Java exception removed, etc.

That’s not much, so we only increment version number by a small “.0.1” amount.

Anyway, we hope you will like it.

Version 0.4 is still quiet far, but other 0.3.xx should be available soon: Stay tuned!

Tags:

Leave a Comment

Version 0.3 is out!

Summary of new features :

  • Reduce drastically memory consumption
  • New intelligent system to identify the similar covers
  • The search can be stopped
  • New CoverFlow View (thx to Romain Guy for his portion of code)

1. Automatic detection of similar covers

Similar covers are now detected and grouped together. The algorithm to do so is based on the computation of the PSNR (Peak Signal Noise Ratio) between two images.

By default, inside a group of similar covers, only the “best” one is shown. If you wish, you can also show the other similar covers in the group by unchecking the checkbox “Hide similar covers” in the status bar. If you do so, all thumbnails of a same group will be “grayed” except the first one (i.e. the best one). To actually view the groups, you must sort the table by similarity by clicking on the column header “Similarity”.

You can tune the way the similarity detection algorithm works, in two ways:

  • You can change the threshold starting from which two images are considered similar, by using the slider “Similarity Threshold” in the status bar. Values for this threshold go from 8.0 to 20.0. The higher the threshold, the more strict the similarity will be. The default is 12.0.
  • The second slider “Max. distance” is a more technical: it allows you to change the maximum distance allowed between two images in a same group. If this maximum distance is exceeded, the worst covers in the group are removed until we fall back under the maximal allowed distance.

2. Cover Dialog improvements

This dialog can now handle multiple images (i.e. user selects “View Image” when there are several covers selected):

  • the selected images can be browsed back and forward with the left and right arrow keys
  • the “Save” popup menu will then save the currenlty visible image

3. Behavior changes regarding cover selection

  • clicking on one of the already selected covers leave the selection unchanged, and the popup menu appears for this selection.
  • clicking on an unselected cover replace the current selection with this cover, and the popup menu appear for this one cover

4. Internationalization

  • the column names have been externalized in resource bundle
  • at startup, the language code is fetched from the user preferences (if the preference is not set, the default locale is used)
  • when the user selects another language, he is invited to restart the application
  • currently supported languages: English, French and Dutch

5. Implemented drag and drop in both directions

You can drop a MP3 file anywhere in the main panel and it will start searching for the corresponding artist and/or album. Dropping is disabled if there is an ongoing search.

You can select one or more covers and start dragging them: the covers will be downloaded to disk (and a nice progress dialog then shows up). When the covers are downloaded (i.e. when the progress dialog has disappeared) you can safely drop the covers in any directory of your Windows explorer. If the drop is not done, the covers are simply deleted.

6. New Search features

The user can now specify a minimum cover size before searching:

  • cover dimensions are checked before download if the search engine has returned the dimensions
  • otherwise the dimensions are checked after the cover has been downloaded
  • covers with an unknown size (this happens when the search engine has returned a thumbnail URL but not the full-size dimensions) will be rejected if the user specifies any minimum dimension.

7. Other Improvements

Memory usage: we don’t keep the full size covers in memory anymore!

  • when a cover is downloaded we resize it to fit into a square of 160×160px (keeping the original aspect ratio) and the full size image is then immediately flushed and gc’d
  • the 160px image is used for displaying into the tooltip in list and table view, for the cover flow and for the PSNR computation
  • the thumbnail for the list view (which can be in enabled or disabled state) is built from the 160px image the first time it is requested
  • when saving a cover to disk we download the image from the URL, keeping the original extension (instead of JPEG-compressing an image residing in memory)
  • when viewing an image, we download it first (asynchronously):
      1. - a nice infinite progress wheel is displayed while the image is being downloaded
        - a global image cache allows keeping the N last viewed full-size images in memory (N is currently set to 10)
  • the resize cache used for the PSNR computation is cleared  when all covers have been found (images are flushed and gc’d)
  • The full size cover is downloaded only once, and only the first time it is really needed.

Before these changes, after downloading 122 covers of Nirvana, the heap size was +/-300MB. After the changes, the heap size is only 28M ! (with a peak to 80M during download)

8. Stop button

You can now stop a running search with the Stop button.
When all search engines are done (either normally or after a Stop), we display the following text in the status bar: “Finishing pending downloads… (Downloads: n/N)”

9. Other

  • the default filename for saving a cover is built from the cover info, but we replace the characters not matching “[a-zA-Z\d-\. ]” by an underscore (to avoid errors with ‘:’, ‘/’, etc.)
  • if an error occurs when saving an image an error message box is displayed
  • removed two libraries : forms and looks (4OOK saved).

Leave a Comment

Incredible!

The next release of ChemicalCovers, will be available in a few days. Before this great day, this is a short list of the new features :

  • Reduce drastically memory consumption
  • New intelligent system to identify the similar covers
  • The search can be stopped
  • New CoverFlow View (thx to Romain Guy for his portion of code)

And more…

For the impatients : You can already download the code via our SVN repository.

Leave a Comment

ChemicalCovers 0.2: let’s rock!

A new release of ChemicalCovers is available. This 0.2 release fixes some bugs but add really exciting features :

  • Results can be displayed in a table
  • Each search engines can be disabled or enabled
  • Some new search engines

And now ? Go to download chemicalcovers 0.2 !

Leave a Comment

Search engines

Currently (last svn revision), ChemicalCovers supports six search engines

  • Album Art Exchange
  • Amazon
  • CD Universe
  • Coveralia
  • Discogs
  • MusicBrainz

Tags:

Leave a Comment

ChemicalCovers 0.1 is out

The first release of ChemicalCovers is out. It’s not totally bugfree but really usable.

Download it now ! Enjoy…
0.1 is out

Leave a Comment

0.1 available soon…

The firt release of ChemicalCovers will be available soon.  Some bugs must be fixed. But you can already use ChemicalCovers with the java webstart :
webstart

Tags:

Leave a Comment

Let’s run !

ChemicalCovers was just started !

This project is born when we tried to get album covers with iTunes. No account on iTunes ? Create it, it’s free ! Yes it’s free but you have to send your credit card number in the last registration step ! No credit card ? No abum cover ! That sucks…

And so, we decided to write a simple program to get album covert from several locations.

Tags: ,

Leave a Comment