MusicHawk has it. That's exactly what I need it to do.
To comment on lalittle's comments/questions:
That said, I'm not sure how this would be implemented. I'm curious to hear some opinions on what the best approach would be for some of the details. For example, what conditions would have to be met for a rip to be considered a "re-rip"? Would it be an issue of album and artist tags matching? If the track names were slightly different, how would the system handle this situation -- would it assume that the existing imported files have the correct names, or would it assume that the CD had the latest information?
I think is would be a safe assumption to always use the data in the MC library when re-ripping, otherwise the user would likely just delete the file(s) from MC then use the rip function. Basically start over.
I know I have spent years getting my MC library data the way I want it and I would hate to see a re-rip function that tried to fill those fields on its own and wipe out years of work.
I would think the process of when or what to re-rip would normally be defined by the user. Something like right click an album and select re-rip. Or select re-rip after inserting a CD.
That being said, I suppose it could be automated just like the current Rip feature is and controlled through options. At a minimum, there would need to be confirmation messages (that could probably be turned off if desired).
Here is some (bad) psudocode for what an
automated re-rip process might be like:
Insert CD
If CD is detected in the MC Library
CD is a re-rip candidate
end if
If re-rip candidate
If options set to auto re-rip
perform re-rip process (verify with prompts based on options settings)
else
if user requests to re-rip
perform re-rip process
end if
end if
else
normal rip candidate
end if
re-rip process (start)
- determine which tracks from the CD are in the MC library based on track number only (file names could be ambiguous)
- re-rip the existing MC tracks to a temp directory (ignore tracks numbers not already in MC library or maybe use options/prompts to rip all tracks or just existing MC lib tracks)
- copy or move the newly ripped files over the existing files using the current MC library file name.
- update the tags of the new files from the MC library
- update the MC library from the tags (gets the new bitrate info, etc.)
- set some sort of property to identify the file as having been re-ripped. maybe a re-rip date field or something like that.
re-rip process (end)
If the process is not automated, it would simply depend on selections made by the user, but the re-rip process outlined above is really the same.
I really like Option 2 as outlined by MusicHawk for just doing a file replace rather than a re-rip.
This might be very useful if you had a damaged CD that you wanted to re-rip. Since the CD is damaged and you cannot re-rip it without errors.
You could purchase the damaged track(s) from an on-line source for cheap.
A function to easily replace the existing files with the new files would be great.
Anthem
Listening to: 'Six Degrees Of Inner Turbulence (II. About To Crash)' from 'Six Degrees of Inner Turbulence - Disc 2' by 'Dream Theater' on Media Center 12