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: Automate EAC ripping from CD insert (Read 10641 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Automate EAC ripping from CD insert

Goal:
I want to *completely* automate EAC (using REACT and mods as necessary) so that when an Audio CD is inserted, the whole process just runs and ejects the CD waiting for the next one. I've been researching, but haven't found a way to completely automate this process, such as is possible with Windows Media Player, for instance. If there's an easy way to do this, please post.

Specific Question:
What is the ProgID and Verb required to programatically call the rip (F10) function from EAC? If no one knows, can someone tell me the CLSID for EAC so I can find these myself?

Background:
Since I haven't found out another way to do this, I want to register EAC ripping as the default AutoPlay action for an audio CD. I know where this information goes (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\AutoplayHandlers\EventHandlers\PlayCDAudioOnArrival), but I don't know the values to enter for the above entries (ProgID and Verb). By using this method, anytime an audio CD is inserted, it will automatically kick off a complete ripping process in EAC using the REACT scripts.

Longer Background:
This is now the 4th time I've ripped my CD collection. I've previously used WMP to rip to WMA format in increasingly higher bitrates. This is very straightforward as with a couple clicks you can configure WMP to rip any new CD on insert, then eject when it's done. This way I can just insert CD after CD while I'm working, playing, etc.

However, I've been encouraged to rip once and for all to a lossless format, then convert to MP3 as necessary. Even with my modest 400 CD collection, I would much, much rather rip everything, then come back and manage the failures/exceptions (for instance the U2 7 album has never ripped with the correct track titles) than preview and press F10 for every CD.

Thanks for any pointers.

Automate EAC ripping from CD insert

Reply #1
You could try RipStation Micro (free but needs registration). 

http://www.ripfactory.com/rsmicro.html

Pro:
-Completely automated CD-batch ripping as you describe (ie no interaction at all other than placing the next CD in the tray
-Much faster than EAC (eg. on my laptop EAC=20 mins; RSM=5 mins using FLAC with a new CD in good condition)
-Supports FLAC, WAV, MP3, WMV etc
-Can rip to multiple formats simultaneously
-Two different metadata providers (FreeDB and 3G)
-Gets album art from Amazon
-Dead simple to use

Con
-Nowhere near as good with damaged CDs as EAC (audible glitches in the worst cases)
-Company keeps promising updates that never come
-If there is no metadata online (this is quite rare) the UI for entering your own metadata is rubbish (window too small for long track names etc).
-No setting to auto-fill out generic metadata if none is found online: it will just sit there waiting for you to enter your own tags.  The first time you'll realise there's a problem is when a CD has been in the drive for 20 mins...
-Supplier makes a big fuss about how good its metadata is, but classical music freaks like me are never happy with other people's metadata :-)
-I worry about future-proofing (commercial software from small company ... will I still be able to use it in 5 years?)

My experience is that although I would have liked the perfect-every-time rip that EAC would guarantee, in reality I would simply never have finished my own ripping marathon if I'd been using nothing but EAC; I just don't have the patience.  By comparison, I was easily able to rip 50 or more CDs a day with RipStation (not including time for being fussy with my classical metadata in foobar!).

Now all my CDs are ripped (c.600), and the new ones incoming get ripped straightaway (yes, I have done my Christmas presents already!). 

Every time I find a damaged one that Ripstation didn't do properly I put it on a little 'to do' pile, which will need to be re-ripped properly using EAC at some point.  The pile's not very big, so I haven't got around to it yet...

Overall I'd say it was well worth the effort to have all my CDs ripped more-or-less 'definitively', and despite Ripstation's shortcomings it's definitely earned its place in my tool-kit.  Having tried loads of rippers (EAC, Audiograbber, WMP, DBpoweramp), not one of them was even half as easy, fast and convenient.

Hope that helps

SC

Automate EAC ripping from CD insert

Reply #2
You might look into AutoIT, which is a free BASIC-like scripting package enabling you to automate interactions with Windows software (useful for automated installs by IT admins across a network of PCs with all the appropriate options chosen as the admins wish). I think it even has a macro recording mode (much like MS Excel or Word can record a macro to help you create a VisualBasic for Applications macro to automate your frequent actions that you normally achieve using your mouse)

I think around the time REACT was created, someone used AutoIT to automate a lot of EAC actions.

[edit]As Akkurat points out below, REACT uses AutoIT, and as I clicked to view his reply I remembered AutoFLAC, which I think was a forerunner of REACT[/edit]
Dynamic – the artist formerly known as DickD

Automate EAC ripping from CD insert

Reply #3
REACT is created with AutoIt! Ryan Rands, if you're familiar with programming, you could take the REACT source code and modify it for your needs. AutoIt is like Visual Basic, quite an easy programming language.

If you only have about 400 CD's, I wouldn't bother automating, just use REACT. Check that the meta info (artist, album, tracknames, etc.) is correct and start the rip (+use album art downloader XUI for album covers if needed). Just my 2c.

Automate EAC ripping from CD insert

Reply #4
Thanks for jumping in Akkurat. I was hoping you knew the answer the my specific question: what is the ProgID and Verb for programmatically calling the F10 function from EAC?

I agree that I don't think it's necessary to get into the script myself, but at the same time, I simply don't want to review/approve rips before they happen.

Once I get the AutoPlay settings worked out, I'd be happy to share the results with you and the rest of community. I would think it's a pretty common request to have CD automatically ripped on insert.

Automate EAC ripping from CD insert

Reply #5
ProgID, Verb? What are these? Anything to do with OLE, COM, etc. windows stuff? Or did you mean with AutoIt language? AFAIK, you're trying something that is not possible. Maybe the EAC forum would be a better place to ask this?

About the "review before ripping" topic, don't you think that it would be more efficient to have everything ok straight from the start? But, it's up to you, do what you think is necessary.

Here's a step by step procedure for ripping a 1 CD:
1) Insert CD
2) Open REACT (if not open) (you could "automate" windows to open REACT when inserting a CD.. a bit pointless though if you rip more than one CD's at time)
3) Check that album, artist, tracknames, etc. are correct (from freedb) or/and input missing info
4) Start a rip
4.1) Optional: album art downloader XUI runs, select a cover image
5) Go surfing interwebs, or whatever you want to do
6) After rip is finished, check that it was good (AccurateRip info, etc.)
7) Eject CD

How much time do you think that the steps 3 & 6 (and possibly 4.1 which could take some time) would take? IMHO, not much. And in your case, the step 3 would be pointless since you seem to believe blindly that the metadata is correct almost always OR you rather would change it later if you notice the errors.

If you don't care about secure ripping and "perfect" metadata, then, in example, SomeChap's recommendation sounds ok to me. If you ever find a way to do what you want with EAC/REACT, please do tell us.

Automate EAC ripping from CD insert

Reply #6
Ok, I'll post on the EAC forum. Thanks.


Ripstation Micro is definitely giving me what I want for now (except I was hoping to do single CD FLACs with cue sheets, but track FLACs is ok).

It's a personal preference to rip all the good CDs and fix mistakes later, but I can't imagine there aren't other people who would prefer to just have the thing rip and notify them if there's a problem, rather than prompting for each disc.

I will keep working on the autoplay solution.


Automate EAC ripping from CD insert

Reply #8
Rounding off the RipStation tangent, just to correct myself when I said -

Con
-No setting to auto-fill out generic metadata if none is found online: it will just sit there waiting for you to enter your own tags.  The first time you'll realise there's a problem is when a CD has been in the drive for 20 mins...


I was wrong. There is in fact a setting to fill out generic tags (eg 'Unknown Artist') and rip the disc without user interaction.

However there are a couple of quite big 'Cons' I missed out:

-Ripstation won't do _anything_ with a CD unless it has a good connection to the GD3 metadata provider.
-Ripstation won't take metadata from FreeDB unless it can contact GD3 first and confirm that there's no metadata for the disk in question in GD3's database.
-Can't get Ripstation to work properly over Remote Desktop for some reason.  Something to do with recognising the CD drive associated with the windows session.

Ripstation seems to be married in to GD3 in some way.  GD3 offers free subscriptions which don't expire for Ripstation users so it's easy enough for now, not a deal-breaker for me but still, more control would be nice... 

That said, I believe there is an 'offline' mode for when Ripstation can't detect any internet connection at all.  It's just that if you are connected to the internet then you can't use Ripstation without a username and password for GD3.  Not the end of the world as I said.

The remote desktop thing may be a problem for those with headless media servers, but it might just be something wrong with my particular configuration so YMMV.

Back on topic, I didn't know about REACT, but I'm a long-term fan of AutoIt.  I'd definitely be interrested in haveing a play with REACT, so glad to have read this thread.

cheers

SC


Automate EAC ripping from CD insert

Reply #10
Fantastic! Did you get it to work with REACT?


I don't believe it's working with REACT, because the only option I got was to rip to WAV and not FLAC. Ripstation is working for me, so I didn't take the time figure out EAC.

It's really simple to test this yourself. Just create a file from the code in the post, name it something.reg and import. Then go into AutoPlay and set the default Audio CD action to rip with EAC. To turn it off, just go back into AutoPlay and turn off autoplay or make it some other option.

In Vista, you can click Start, then type autoplay and it will find it. In XP you can find AutoPlay options in the Control Panel, I believe.

Quote
That said, I believe there is an 'offline' mode for when Ripstation can't detect any internet connection at all. It's just that if you are connected to the internet then you can't use Ripstation without a username and password for GD3. Not the end of the world as I said.


I've had problems with maybe 1 CD in 10-15 (on both my computer and my wife's) where it said it couldn't find the DB information and just quit. I never signed up for GD3, but it's found everything so far on FreeDB, even what I think of as rare disks (like free ones from music services).

I tried it manually a few times, but I've finally figured out that Ripstation must have a really short timeout waiting for FreeDB. In each case, I either just pop the same CD back in, or I put it lower in the stack and it always rips the next time around. I think Ripstation just doesn't wait around, so if there's any hiccup with a reply from the DB, it just skips it.

Thanks, everyone for your help! I'm 75% done with my collection, I've ripped to both FLAC and MP3 and I haven't devoted hardly any time to it.

Automate EAC ripping from CD insert

Reply #11
I don't believe it's working with REACT, because the only option I got was to rip to WAV and not FLAC.

Oh ok, you'd have to activate/simulate a F4 or a F10 keystroke for REACT to start ripping.. I was just interested to hear if one could use REACT with that method.. I'm too perfectionist to rip without checking that metadata and the rest are ok. Nice to hear that you found your solution finally (was it 2 years you were looking this?) with Ripstation.