Audex does not show CD cover

Hello all,

in theory, Audex should automagically search and download the cover art for a CD, show it in the GUI, and store it together with the rippped files.
However, this does not work for me (I use OpenSUSE 12.2 and audex 0.74b1-2.1). The program does not show any CD cover.
Sometimes I get a notification in the system tray saying something like e.g.:
“finished http://images.google.com/images?gbv=1&q=Aerosmith%20Pump
So, it seems that Audex does perform a search but fails to download the image(s). When I enter the above url manually in firefox, I see several cover images though.

Any ideas?

Friedhelm.

So I had not been using Audex, but it seems very nice, except it does not fetch the CD cover for me either. I had to add in the KDE:Extra openSUSE 12.2 repository to install Audex. I did send an email to I presume the author on the issue and we will see if I get a reply. In the mean time, its easy to find and save a CD cover by manual means unless you are ripping CD’s by the hundreds. The Audex Web site can be found here:

Audex

I noticed that the Home button does not bring you back home and the latest news is dated 2011-01-15, so it is hard to say if there is still anyone there at home anymore. The bottom line is it is a bug in Audex and I am unsure if anyone will be working on a fix there.

Thank You,

Edit Flash: Just got my email message returned to sender about the Audex Problem. I am thinking you are now S.O.L. on this problem. Sorry …

Okay; “Hilf dir selbst, so hilft dir Gott”, as they say in Germany.
So I downloaded the source code from the Audex homepage (thanks for link!) and fixed it myself.

I found the fix in a thread on kde-apps.org:
Audex KDE-Apps.org

It turned out that the regular expression for scanning the Google response was wrong (don’t ask me what exactly was wrong; I’ve never been good at reading these expressions).

Here comes a quick HowTo, in case anybody wants to implement the fix, too:

o First, in order to compile the sources, I had to install the following packages:
cmake
gcc-c++
libkde4-devel
libkdcddb4-devel
libcompactdisc4-devel
cdparanoia-devel

o Download and extract the source code somewhere
o Follow the instructions on the Audex homepage, i.e.
In the source directory type:
mkdir build
cd build
cmake …
make

o At first, I got a compiler error for utils/hashlist.cpp: It did not find “close” and “lseek”.
Fixed this by adding “#include <unistd.h>”.

o Then, edit utils/coverfetcher.cpp according to the above mentioned thread, i.e. the code in method “parse_html_response” should read:


...
  QRegExp rx("<a\\shref=\"(\\/imgres\\?imgurl=^\"]+)\">\\s\
]*<img^>]+src=\"(^>]+)\"></a>");
  QString html = xml;
  html.replace( QLatin1String("&"), QLatin1String("&") );
  
  rx.setMinimal(TRUE);
  
  int pos = 0; int i = 0;
  while (((pos = rx.indexIn(html, pos)) != -1) && (i < fetch_no)) {
...

o Once more, type “make” in the build directory. You will find the new audex executable – now with a working cover fetcher – in the same directory.
o I did not perform “make install”, I just copied the new executable to /usr/bin/ thereby overwriting the “original” one.

Now everything works perfectly for me :slight_smile:

Have Fun!
Friedhelm.

Most interesting. I found some names that were not right in your prerequisite listing:

cmake
gcc-c++
libkde4-devel
libkcddb4-devel
libkcompactdisc4-devel
cdparanoia-devel

After loading these and making the modifications you mention, I still get the following error:

/home/james/Downloads/audex/utils/hashlist.cpp:35:41: error: ‘lseek’ was not declared in this scope
/home/james/Downloads/audex/utils/hashlist.cpp:45:13: error: ‘close’ was not declared in this scope
make[2]: *** [CMakeFiles/audex.dir/utils/hashlist.cpp.o] Error 1
make[1]: *** [CMakeFiles/audex.dir/all] Error 2
make: *** [all] Error 2
james@linux-c100:~/Downloads/audex/build> 

Placing this at the top with the other include did not eliminate the above error message:

#include <unistd.h>

Thank You,

Never Mind, I added the include to the file “utils/hashlist.h” which was complaining and now it compiles and does work, fetching the CD cover. So to recap the steps:

  1. Download the latest source file from here: http://kde.maniatek.com/audex/files/audex-0.74b1.tar.xz
  2. open Up YaST, search for the following packages and install these if not already there:
cmake
gcc-c++
libkde4-devel
libkcddb4-devel
libkcompactdisc4-devel
cdparanoia-devel
  1. Extract the audex-0.74b1.tar.xz file into your downloads folder
  2. Modify the file $HOME/Downloads/audex-0.74b1.tar.xz/utils/coverfetcher.cpp such that:

Beginning at Line 165 change to:

...
  QRegExp rx("<a\\shref=\"(\\/imgres\\?imgurl=^\"]+)\">\\s\
]*<img^>]+src=\"(^>]+)\"></a>");
  QString html = xml;
  html.replace( QLatin1String("&"), QLatin1String("&") );
  
  rx.setMinimal(TRUE);
  
  int pos = 0; int i = 0;
  while (((pos = rx.indexIn(html, pos)) != -1) && (i < fetch_no)) {
...
  1. Modify the file $HOME/Downloads/audex-0.74b1.tar.xz/utils/hashlist.h such that:

Add the Line:

#include <unistd.h>

Open up Terminal and execute these commands:

cd $HOME/Downloads/audex-0.74b1.tar.xz
mkdir build
cd build
cmake ..
make
make install <or> sudo make install

Or you can forgo the Make Install if you already have installed Audex and just copy the binary file over as in

sudo cp $HOME/Downloads/audex-0.74b1.tar.xz/build/audex /usr/bin/

I just popped in an Audio CD and it found the cover with no problems. Thanks for the fix information.

Thank You,

Thanks for the corrections. In fact, it makes more sense to add the #include in hashlist.h.

Just one more thing: You might have to be root to be able to copy the file to /usr/bin


sudo cp $HOME/Downloads/audex-0.74b1.tar.xz/build/audex /usr/bin/

Too bad the original author is no longer available. I really like this piece of software…

Regards,
Friedhelm.

On 2013-01-19 21:26, fstappert wrote:
> Too bad the original author is no longer available. I really like this
> piece of software…

Could you describe what it does? Does it rip CDs and find the cover, right?


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

This is a CD ripper like Asunder, but with more features including now, fetching the CD cover as well.

http://paste.opensuse.org/view/download/1741267

Thank You,

I edited my post and added in sudo for the copy command. Also, I guess you need the sudo for the make install, but not sure. Some programs will install in your local home folder and since we installed from the games repository,

"http://download.opensuse.org/repositories/games/openSUSE_12.2/"

I am just not sure about that requirement. Anyone else gives it a try, tell us if it needed or not.

Thank You,

On 2013-01-19 23:56, jdmcdaniel3 wrote:
>
> robin_listas;2520001 Wrote:

>> Could you describe what it does? Does it rip CDs and find the cover,
>> right?

> This is a CD ripper like Asunder, but with more features including now,
> fetching the CD cover as well.
>
> [image: http://paste.opensuse.org/view/download/1741267]

Mmm. I’ll have to try them… the one I used was grip, had the bunch of
features I wanted. Others I felt lacking in one thing or other. But it
was made for an old version of gtk and is not maintained any more.

With grip I could choose the exact set of options that lame would run
with…


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Audex has more features than Asunder and it seems to rip just as fast. But, I can say that at the moment, Audux is user supported as the author has not done anything in soon to be two years. Because Audex works so well, I see a lot of conversations about the app, just as a user created the fix here for the CD Cover fetch routine. Its hard to say what the future holds for Audex, but it looks like anyone could take up the torch if they wanted to do so.

Thank You,

Funny thing: Just today I got an update of Audex from the OpenSUSE repository. The new version is 0.74b1-11.1.
Thus, somebody is actually still maintaining this software. However, cover fetching still doesn’t work. So, if you have installed the update, you need to again copy “your” audex executable to /usr/bin.

Regards,
Friedhelm.

On 2013-01-20 12:06, fstappert wrote:
>
> Funny thing: Just today I got an update of Audex from the OpenSUSE
> repository. The new version is 0.74b1-11.1.
> Thus, somebody is actually still maintaining this software. However,
> cover fetching still doesn’t work. So, if you have installed the update,
> you need to again copy “your” audex executable to /usr/bin.

Why don’t you try to contact that maintainer? Via bugzilla, for example.
Send your patch. That way we could all make use of it.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Well Stranger Still, I see this very morning that a new version of Audex has been released on the Audex Web Site: http://kde.maniatek.com/audex/files/audex-0.76b1.tar.xz, version 0.76b1 which when compiled does fetch CD covers and does not produce the compile errors. I have created a Bug Report anyway requesting the new version 0.76 Beta 1 be used in lue of 0.74. My bug report is posted here:

https://bugzilla.novell.com/show_bug.cgi?id=799499

Thank You,

OK; thanks for the bug report. Should have done this right from the start maybe, as that’s the usual way to address bugs :slight_smile:

Regards,
Friedhelm.

Audex is now updated to 0.76b1 in the repository. However, it is still not fixed completely. In the dialog for choosing a cover, the size and dimensions of the pictures are not shown; it just shows “*, KiB”. In order to fix this, line 171 of coverfetcher.cpp should read:

while (((pos = rx.indexIn(html, pos)) != -1) && (i < fetch_no)) {

i.e. replace “xml” with “html”.

Anyway, I just noticed in the forum on kde-apps.org:
Audex KDE-Apps.org
that version 0.8 is on the way :slight_smile:
Thus, I guess there’s no need anymore to fix this issue by yourself…

Regards,
Friedhelm.

My Bug report had mention of .76 moving into the Extra repository. Hopefully, version .8 will have all of the required fixes. When I go to the Audex forum, .76 Beta 2 has been released, but no .8 I can see.

Thank You,

It’s the very last post in the forum (from Jan. 20, by marcomaniac):
“there is a “half-ready” Audex 0.8 (mainly some libs). At the moment I’m too busy unfortunately.”

Will that version be imported into the repository by default, or do we have to ask for it explicitly?
Anyway, for now, let’s just wait. I can also live with the current version, btw.

Regards,
Friedhelm.

Humm, I think that in general newer application versions come down automatically, but someone has to push the revised application into the system. In the case of Audex, an extra push, by the way of a bug report / update request, we can focus attention on getting in the newer version due to some bug such as we found here. We have hundreds of applications that can be updated at almost anytime and we do not have hundreds of folks just waiting around to help through our favorite app. There is nothing wrong with making a polite bug report so that they know the app is really being used and needs some help. Further, there is nothing wrong making a polite openFATE request if something is missing we really need. I encourage everyone that reads this to do the same. Do consider that finding some support for your request is helpful in moving things forward and the openSUSE forums is at least one place where you can make that happen, but there are others as well.

Thank You,

On 2013-01-20 03:48, Carlos E. R. wrote:

> Mmm. I’ll have to try them… the one I used was grip, had the bunch of
> features I wanted. Others I felt lacking in one thing or other. But it
> was made for an old version of gtk and is not maintained any more.

I’m ripping a CD right now. I like audex, I wanted something to rip
again my collection and it is going to be audex, it seems.

It can rip and encode simultaneously, same as grip did. But encoding of
a track just takes a few seconds in this machine, so it does no longer
matter (a few years ago it did).

The cover photo it gets is not the same as the one I have on the CD, and
I don’t see how to fetch alternatives, if there are any available.


Cheers / Saludos,

Carlos E. R.
(from 12.1 x86_64 “Asparagus” at Telcontar)