Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: ARCue.pl - Check whole CD rips with AccurateRip (Read 131291 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

ARCue.pl - Check whole CD rips with AccurateRip

Reply #25

I have another problem with a cd I just tried. With this disc ID: 00115f65-890a960a  reported correctly with EAC and ARCue. Here is the problem.

EAC reports for track 1:  Accurately Ripped    (confidence 3)    [eccc8d81]
ARCue reports for track 1: Track not present in database.    [eccc8d81]

Here is copy and past of the disc ID also to clarify:

EAC    : [Disc ID: 00115f65-890a960a]
ARCue: [Disc ID: 00115f65-890a960a]

This happens with all the tracks!

Anyone else getting problems with cd's that don't have data tracks also like me?


First part of the move completed...

Is this using the newer version of the script?  Does it work correcty with the older version?  I did have problems like this myself, it essentially boiled down to perl comparing two identical 32bit values as if one were signed and the other weren't.  That was what the {use integer; $CRC = ... + 0} was to fix.  I'll have another dig.

Regards,

Chris


Sorry, just reread your original post, it doesn't sound like thats the problem after all.

Could you post the full output of ARCue.pl, including the summary.  Secondly, where you've installed EAC, there should be an AccurateRipCache folder, containing a file called,

dBAR-nnn-00115f65-xxxxxxxx-890a960a.bin

where nnn is the number of tracks, anx xxxxxxxx is another checksum.  Could you post this file too please.

Chris

ARCue.pl - Check whole CD rips with AccurateRip

Reply #26


I have another problem with a cd I just tried. With this disc ID: 00115f65-890a960a  reported correctly with EAC and ARCue. Here is the problem.

EAC reports for track 1:  Accurately Ripped    (confidence 3)    [eccc8d81]
ARCue reports for track 1: Track not present in database.    [eccc8d81]

Here is copy and past of the disc ID also to clarify:

EAC    : [Disc ID: 00115f65-890a960a]
ARCue: [Disc ID: 00115f65-890a960a]

This happens with all the tracks!

Anyone else getting problems with cd's that don't have data tracks also like me?


First part of the move completed...

Is this using the newer version of the script?  Does it work correcty with the older version?  I did have problems like this myself, it essentially boiled down to perl comparing two identical 32bit values as if one were signed and the other weren't.  That was what the {use integer; $CRC = ... + 0} was to fix.  I'll have another dig.

Regards,

Chris


Sorry, just reread your original post, it doesn't sound like thats the problem after all.

Could you post the full output of ARCue.pl, including the summary.  Secondly, where you've installed EAC, there should be an AccurateRipCache folder, containing a file called,

dBAR-nnn-00115f65-xxxxxxxx-890a960a.bin

where nnn is the number of tracks, anx xxxxxxxx is another checksum.  Could you post this file too please.

Chris


Ok, here is dBAR-010-00115f65-008bd1e7-890a960a.bin

and here is the output from ARCue.pl :

Code: [Select]
Checking AccurateRip database

Track    Ripping Status        [Disc ID: 00115f65-890a960a]

1    Track not present in database.    [eccc8d81]
2    Track not present in database.    [16382340]
3    Track not present in database.    [3fe5c721]
4    Track not present in database.    [9546ab6b]
5    Track not present in database.    [ea657670]
6    Track not present in database.    [6b2167a2]
7    Track not present in database.    [6160a42b]
8    Track not present in database.    [2b80bb47]
9    Track not present in database.    [cab19e73]
10    Track not present in database.    [5fa7c9c6]

_______________________

Disc not present in AccurateRip database.


Kevin

ARCue.pl - Check whole CD rips with AccurateRip

Reply #27
The other problem I had with ARCue having the wrong Disc ID is corrected, thanks alot!

ARCue.pl - Check whole CD rips with AccurateRip

Reply #28
Code: [Select]
Disc not present in AccurateRip database.


Ok, that means that ARCue.pl is getting a file not found back from the accurate rip server;  I tried forcing the discid, and it downloaded fine here.  Could you give the following a go,

http://www.srcf.ucam.org/~cjk32/ARCue/ARCue-madxcream.pl

and post the result please.

Chris

ARCue.pl - Check whole CD rips with AccurateRip

Reply #29


Code: [Select]
Disc not present in AccurateRip database.


Ok, that means that ARCue.pl is getting a file not found back from the accurate rip server;  I tried forcing the discid, and it downloaded fine here.  Could you give the following a go,

http://www.srcf.ucam.org/~cjk32/ARCue/ARCue-madxcream.pl

and post the result please.

Chris


I'm getting this with the problem cd image:
Code: [Select]
http://www.accuraterip.com/accuraterip/5/6/f/dBAR-010-00115f65-008bd1e8-890a960a.bin
NO SUCCESS
404 Not Found


I'm getting this with one that works:
Code: [Select]
http://www.accuraterip.com/accuraterip/1/e/1/dBAR-021-0034a1e1-03244649-29107115.bin
SUCCESS
200 OK

ARCue.pl - Check whole CD rips with AccurateRip

Reply #30
Hi Kevin,

Right, EAC is getting the file,

dBAR-010-00115f65-008bd1e7-890a960a.bin

whilst ARCue is trying to download,

Code: [Select]
http://www.accuraterip.com/accuraterip/5/6/f/dBAR-010-00115f65-008bd1e8-890a960a.bin


Note the difference in the middle 8 character id.  This value is also calculated from the track offsets / lengths, like the rest of the discid.  Do you think you could post a copy of the cue sheet, along with a screenshot of EAC showing the track lengths and offsets that it sees.

Regards,

Chris

ARCue.pl - Check whole CD rips with AccurateRip

Reply #31
Hey Chris, here is the info you wanted:



Cuesheet:
Code: [Select]
REM REPLAYGAIN_ALBUM_GAIN -6.05 dB
REM REPLAYGAIN_ALBUM_PEAK 0.97723
REM REPLAYGAIN_ALBUM_SCALE 0.49831
REM GENRE "Christian Rock"
REM DATE 1985
REM DISCID 890A960A
REM COMMENT "ExactAudioCopy v0.95b4"
PERFORMER "Stryper"
TITLE "Soldiers Under Command"
FILE "Stryper - [1985] Soldiers Under Command.flac" WAVE
  TRACK 01 AUDIO
TITLE "Soldiers Under Command"
PERFORMER "Stryper"
INDEX 00 00:00:00
INDEX 01 00:00:32
  TRACK 02 AUDIO
TITLE "Makes Me Wanna Sing"
PERFORMER "Stryper"
INDEX 00 05:04:27
INDEX 01 05:04:30
  TRACK 03 AUDIO
TITLE "Together Forever"
PERFORMER "Stryper"
INDEX 00 07:56:55
INDEX 01 07:58:15
  TRACK 04 AUDIO
TITLE "First Love"
PERFORMER "Stryper"
INDEX 00 12:01:40
INDEX 01 12:02:55
  TRACK 05 AUDIO
TITLE "The Rock That Makes Me Roll"
PERFORMER "Stryper"
INDEX 00 17:50:40
INDEX 01 17:54:40
  TRACK 06 AUDIO
TITLE "Reach Out"
PERFORMER "Stryper"
INDEX 00 22:53:17
INDEX 01 22:57:02
  TRACK 07 AUDIO
TITLE "(Waiting For) A Love That's Real"
PERFORMER "Stryper"
INDEX 01 28:19:47
  TRACK 08 AUDIO
TITLE "Together As One"
PERFORMER "Stryper"
INDEX 00 32:55:05
INDEX 01 32:56:62
  TRACK 09 AUDIO
TITLE "Surrender"
PERFORMER "Stryper"
INDEX 00 38:01:37
INDEX 01 38:02:45
  TRACK 10 AUDIO
TITLE "Battle Hymn of the Republic"
PERFORMER "Stryper"
INDEX 00 42:31:47
INDEX 01 42:33:15
Thanks again for this great tool. My other option was to wait until dbPowerAMP supported cuesheets and single image mode with accuraterip, which is probably around a year away (according to info from the site).

Kevin

[!--sizeo:1--][span style=\"font-size:8pt;line-height:100%\"][!--/sizeo--]Moderation: Codebox.[/size]

ARCue.pl - Check whole CD rips with AccurateRip

Reply #32
Code: [Select]
  TRACK 01 AUDIO
    TITLE "Soldiers Under Command"
    PERFORMER "Stryper"
    INDEX 00 00:00:00
    INDEX 01 00:00:32


This was what was causing the problem; I wasn't correctly calculating the second part of the discid when the first track had a non zero offset.  It should now be fixed in the latest version.

Thanks again for this great tool. My other option was to wait until dbPowerAMP supported cuesheets and single image mode with accuraterip, which is probably around a year away (according to info from the site).


No problem, I wrote it primarly for my own amusement, but thought it may well be of use to others.

Regards,

Chris

ARCue.pl - Check whole CD rips with AccurateRip

Reply #33
Confirmed to work, thanks Chris!

ARCue.pl - Check whole CD rips with AccurateRip

Reply #34
found another problem one:

EAC disc ID: [Disc ID: 00122ecc-950b070b]
ARCue disc ID: [Disc ID: 00122ecc-950b060b]

from this cue:
Code: [Select]
REM GENRE "Hard Rock"
REM DATE 1992
REM DISCID 950B070B
REM COMMENT "ExactAudioCopy v0.95b4"
PERFORMER "Whitecross"
TITLE "High Gear"
FILE "Whitecross - [1992] High Gear.flac" WAVE
  TRACK 01 AUDIO
TITLE "High Gear"
PERFORMER "Whitecross"
INDEX 00 00:00:00
INDEX 01 00:00:50
  TRACK 02 AUDIO
TITLE "Dancin' In Heaven"
PERFORMER "Whitecross"
INDEX 00 03:26:67
INDEX 01 03:26:70
  TRACK 03 AUDIO
TITLE "In America"
PERFORMER "Whitecross"
INDEX 00 08:41:05
INDEX 01 08:41:37
  TRACK 04 AUDIO
TITLE "Overdrive"
PERFORMER "Whitecross"
INDEX 00 12:26:62
INDEX 01 12:27:10
  TRACK 05 AUDIO
TITLE "Without Your Love"
PERFORMER "Whitecross"
INDEX 01 14:28:55
  TRACK 06 AUDIO
TITLE "Coming Home"
PERFORMER "Whitecross"
INDEX 00 18:37:27
INDEX 01 18:37:30
  TRACK 07 AUDIO
TITLE "My Love"
PERFORMER "Whitecross"
INDEX 00 22:45:27
INDEX 01 22:45:37
  TRACK 08 AUDIO
TITLE "I'm Askin' You Today"
PERFORMER "Whitecross"
INDEX 00 28:00:40
INDEX 01 28:00:42
  TRACK 09 AUDIO
TITLE "Gonna Keep On"
PERFORMER "Whitecross"
INDEX 00 32:17:07
INDEX 01 32:17:10
  TRACK 10 AUDIO
TITLE "I Shout"
PERFORMER "Whitecross"
INDEX 00 36:18:52
INDEX 01 36:19:15
  TRACK 11 AUDIO
TITLE "Long Road To Walk"
PERFORMER "Whitecross"
INDEX 00 40:39:72
INDEX 01 40:40:00
Kevin

[!--sizeo:1--][span style=\"font-size:8pt;line-height:100%\"][!--/sizeo--]Moderation: Codebox.[/size]

ARCue.pl - Check whole CD rips with AccurateRip

Reply #35
found another problem one:

EAC disc ID: [Disc ID: 00122ecc-950b070b]
ARCue disc ID: [Disc ID: 00122ecc-950b060b]


Thanks very much for the alpha testing.  Could you try the latest version, this should be fixed now.

Chris

ARCue.pl - Check whole CD rips with AccurateRip

Reply #36
Thanks very much for the alpha testing.  Could you try the latest version, this should be fixed now.

Chris


It works now for that cd. Thanks and hope I'm not bothering you too much

ARCue.pl - Check whole CD rips with AccurateRip

Reply #37
Chris, are you still working on getting ARCue to work with cd's that contain data tracks? I haven't found any more problems with any of my cd's I have checked. I only have a few more to go, except for all the cd's that do contain data tracks. I'll help test it if you like and get you any cue sheets and screen shots of EAC with cd's that contain data tracks.

Kevin

ARCue.pl - Check whole CD rips with AccurateRip

Reply #38
Chris, are you still working on getting ARCue to work with cd's that contain data tracks? I haven't found any more problems with any of my cd's I have checked. I only have a few more to go, except for all the cd's that do contain data tracks. I'll help test it if you like and get you any cue sheets and screen shots of EAC with cd's that contain data tracks.

Kevin


Hi Kevin,

Sorry for the delay in replying, I'm part way through the second part of the big move, and don't have reliable internet access at the moment (I'm 'borrowing' a connection right now).  I do intend to add support for CDs containing data tracks, as well as cue sheets referencing multiple wav files.  I reckon I'll have computing facilities fully restored by next weekend, so maybe I'll get things done during the week following that.  Any screenshots and data you can post to validate against would be much appreciated.  Also, are all your data tracks always the final track?  Do you know if this is always the case.

Regards,

Chris

ARCue.pl - Check whole CD rips with AccurateRip

Reply #39
Hi Kevin,

Sorry for the delay in replying, I'm part way through the second part of the big move, and don't have reliable internet access at the moment (I'm 'borrowing' a connection right now).  I do intend to add support for CDs containing data tracks, as well as cue sheets referencing multiple wav files.  I reckon I'll have computing facilities fully restored by next weekend, so maybe I'll get things done during the week following that.  Any screenshots and data you can post to validate against would be much appreciated.  Also, are all your data tracks always the final track?  Do you know if this is always the case.

Regards,

Chris


Chris, as far as data tracks, all the cd's I have, the data tracks show up as the last track. I have no knowledge of any cd's where the data track comes first, but that's just from my experience. Maybe someone else can shed some light on this that knows for sure.

As far as the screenshots, do you mean screen shots of cd's that contain data tracks and their correct Accurate rip ID number?

Kevin

ARCue.pl - Check whole CD rips with AccurateRip

Reply #40
Has any more work been done on producing a faster/C version of this?  I've got some time again so I'm going to try out the latest version to see if I can even get valid results now.  Doing all this testing before resulted in a burned out DVD-RW after doing read offset tests, that threw a kink in the plans for a month or so.

ARCue.pl - Check whole CD rips with AccurateRip

Reply #41
Has any more work been done on producing a faster/C version of this?  I've got some time again so I'm going to try out the latest version to see if I can even get valid results now.  Doing all this testing before resulted in a burned out DVD-RW after doing read offset tests, that threw a kink in the plans for a month or so.


Well I was getting the "track not in database' error before, but either because of the new drive or the updated script it now works exactly as expected.  This is great news, I can now check my ripped image files before they get converted to flac images and mp3 tracks.

It is fairly slow but it's not that much relative to the time it takes to rip then convert to flac then split and convert to mp3.  If anyone has had any success converting this to a small c program it would be such a great addition thoug.  Having to install perl just for this is excessive but it will fill the gap in the meantime.

Thanks so much for your work on this, you've found a way to give me exactly what I needed!

ARCue.pl - Check whole CD rips with AccurateRip

Reply #42
I'd like to integrate this into my REACT2 config.  I've noticed that when the script is finished, whether successful or not, the command window closes if launched from a BAT file.

Is there a way to have the script return a value when finished, for example 0 if the disc is accurate, and 1 if the there are inaccurate tracks, and then have the BAT file created by REACT2 check that value?  Basically I'd like to have REACT2 check the ripped WAV file before processing, then continue if it's accurate, and stop if it's not.  I can take care of the IF's and such to make the BAT file do what I want after the check, but I don't know how to check the result of arcue.pl.

I know this question involves batch scripting as well, but this would be a great addition to my config if I can get it to work automatically.

ARCue.pl - Check whole CD rips with AccurateRip

Reply #43
I'd like to integrate this into my REACT2 config.  I've noticed that when the script is finished, whether successful or not, the command window closes if launched from a BAT file.

Is there a way to have the script return a value when finished, for example 0 if the disc is accurate, and 1 if the there are inaccurate tracks, and then have the BAT file created by REACT2 check that value?  Basically I'd like to have REACT2 check the ripped WAV file before processing, then continue if it's accurate, and stop if it's not.  I can take care of the IF's and such to make the BAT file do what I want after the check, but I don't know how to check the result of arcue.pl.

I know this question involves batch scripting as well, but this would be a great addition to my config if I can get it to work automatically.


If you ever get this working with REACT2, please share it. I assume you are doing doing the F10 option with REACT ripping to single image? This is also how I rip my cd's.

Well, actually how about doing arcue test.cue >> txt file. Then scan the created txt file for errors. I'm not good with this sort of thing, but I'm sure it could work.

ARCue.pl - Check whole CD rips with AccurateRip

Reply #44
Getting arcue to scan the ripped WAV image is no problem, even getting it to pause after scanning so you can read the CMD window is easy, but getting it to intelligently decide to continue on a successful scan or abort on a failed scan is not so easy.  Of course I wanna go the hard route

The best usage of this would be when running REACT2 encodes in batch where you don't wanna monitor the whole thing.  Then having failed scans written to a log while successful scans complete as usual.

To get REACT2 to perform the scan, just add the commandline to your REACT2 image.cfg somewhere a the top before any processing begins, then a PAUSE line after it.  If it's successful, hit enter and it will continue.  If not, hit CTRL-C to exit the batch process.

Hmmm, is there a way in a batch file to parse a text file and search for some text?  Then perform a command if it is found/not found?

If so, you could use the

arcue test.cue >> textfile.txt

and then parse the txt file for 'Successful Rip' or some such text, then continue if found, or exit if not.

Where's Synthetic Soul when you need him? 

ARCue.pl - Check whole CD rips with AccurateRip

Reply #45
If anyone has had any success converting this to a small c program it would be such a great addition thoug.  Having to install perl just for this is excessive but it will fill the gap in the meantime.


Well, if you don't want to install perl, you can try the following executable:

arcue.rar

It is not a C program, just a packet with all necessary perl libraries and the script itself, so it's far bigger than the perl script.
It works in the same way, just provide the cue files as parameters to arcue.exe

~

ARCue.pl - Check whole CD rips with AccurateRip

Reply #46
If so, you could use the

arcue test.cue >> textfile.txt

and then parse the txt file for 'Successful Rip' or some such text, then continue if found, or exit if not.

Where's Synthetic Soul when you need him? 


Yes, that's what I had in mind also. Never done anything like parsing a txt file before, so will have to wait for someone that does know how.

ARCue.pl - Check whole CD rips with AccurateRip

Reply #47


If so, you could use the

arcue test.cue >> textfile.txt

and then parse the txt file for 'Successful Rip' or some such text, then continue if found, or exit if not.

Where's Synthetic Soul when you need him? 


Yes, that's what I had in mind also. Never done anything like parsing a txt file before, so will have to wait for someone that does know how.


Well the only thing left between me and ripping my collection was getting this working in REACT, so I sat down today and put in the error codes into arcue.pl and the handling into the REACT config and I'm finally ready to start ripping my collection.  Thanks so much for doing this up!

I came here to say that, and I see posts asking if this could work with REACT, and... yes, it certainly can!  Here's how I did it.


in ARCue.pl, change the final output section like so to include a  return value for the various outcomes, then exit the script with said  return value.  Only changes here are the 5 lines that have references to $errlev.  value of 0 means no problem, only changed if there IS a problem.
   
Code: [Select]
    my $errlev = 0;
    
    if ($arDiscNotInDb) {
        print "Disc not present in AccurateRip database.\n";
        $errlev = 2;
    } elsif ($arNetworkFailed) {
        print "Failed to get $arUrl : " . $arNetworkFailed . "\n";
        $errlev = 3;
    } elsif ($accuratelyRipped == $trackCount) {
        print "All Tracks Accurately Ripped.\n";
    } else {
        if ($notAccuratelyRipped >= 3) {
             print "Your CD disc is possibly a different pressing to the one(s) stored in AccurateRip.\n"
        }

        printf "Track(s) Accurately Ripped: %d\n", $accuratelyRipped;
        printf "**** Track(s) Not Ripped Accurately: %d ****\n", $notAccuratelyRipped;
        printf "Track(s) Not in Database: %d\n", $notInDatabase;
        $errlev = 1;
    }

    print "\n\n\n";
    exit $errlev;


Then, over in the REACT.ini add a few variables like

Code: [Select]
RunAccurateRip=1
ARcue=@Tools@\newARcue.pl


Then in REACT-image.cfg add a little error handling.  If the script returns a value of 1 (inaccurate rip) then abort, otherwise carry on to wave gain and encoding.  I also added a label just before cleanup because I didn't want EAC to ask me to over-write files anymore.

Code: [Select]
REM **** use ARCue.pl (perl script) to verify wav image against AR database
IF NOT @RunAccurateRip@==1 GOTO end_RunAR
    "@ARcue@" "@sourcecuesheet@"

    REM    if rip is inaccurate, abort, otherwise continue on to wave gain.    
    IF ERRORLEVEL 1 GOTO error_1
    GOTO :end_RunAR

:error_1
    ECHO Some tracks were not accurately ripped, aborting compression.
    ECHO Exiting script...
    PAUSE
    
    REM     delete old files so EAC doesn't ask to overwrite next time.    
    GOTO cleanup
:end_RunAR



I wrote other return values into arcue, but I'm personally only concerned about inaccurate rips at the moment.

I might expand later to do something with the discs that aren't in the DB, like making a list of them somewhere.  Then I could re-rip them with secure test and copy and I submit the results to the DB, but I'll worry about that when I come across one.

I hope this helps you guys out, I spent all afternoon fiddling with funky win9x vs winNT batch syntax, but I've tested it out and it works great.  Atleast for the one CD I've tested (i hardcoded the return value to test that the batch file could receive and interpret it okay.

ARCue.pl - Check whole CD rips with AccurateRip

Reply #48
This is EXACTLY what I've been looking for.  Thanks so much for the leg work on this one.  I'll be testing this out soon.  Awesome job!

ARCue.pl - Check whole CD rips with AccurateRip

Reply #49
If anyone's interested here are my files.  I have them configured to Rip to Image, Check with AR, then convert to FLAC Image and MP3 Tracks.  This is everything I ever wanted, if only someone could come up with a quick sexy AR checker... or a new version of EAC with on the fly checking *drool*.  Why read it twice, we have lots of ram now!

Anyways, here they are.  I changed the name to arcue-react.pl because there was once a newarcue.pl I believe.  Do with it what you will, let me know if there's are new "official" versions of REACT or ARCue that support this functionality! 

PS: this is posted on NOPASTE so it won't be up forever, so if you need it tell me where to put it.

React.ini
React-image.cfg
arcue-react.pl

edit: NOPASTE wipes even faster than I thought, if someone else can point out where to post these I will, otherwise maybe we can get it included into react or something