Hiya everyone,
Long time user of "Batch Converter"; recent purchaser of "CD Ripper" (and am expecting exactly the same high quality there ).
Also, pretty much OCD (Obsessive Compulsive Disorder) about the naming of our ripped music. I'm just having it rip our entire library again after a "Windows" ... lets go with "glitch" ... resulted in the deletion of the 40,000 or so files which comprised our audio media library. I had spent considerable effort re-organising the filenames, metadata, etc. of that library, and now it looks as though I'll have to do it all over again ...
But there is hope, I hope
Looking at the excellent instructions for "CD Ripper", it looks as though it will do a pretty good job of starting with good data, so that's a plus.
"CD Ripper" also has programmatic means to alter some of the information. Looking at that, it should even be possible to arrange titles in library order (and without one of my pet hates, "Title Case" - eurgh!), E.g., "A Momentary Lapse of Reason" would become "Momentary lapse of reason, A". Same with artist information - "Alice Cooper" should, of course, be "Cooper, Alice" (whereas "Alice in chains" remains "Alice in chains" as whoever "Alice" might have been, "Alice in chains" is not the name of a person).
See? Said I was OCD about these things
But it's not enough. There are (quite considerable) limits on what can be achieved with even the well thought out programmatic changes which can be applied in "CD Ripper".
Suggestion ...
(as a developer myself, I hate it when someone says "Errrr, how about ...", but hopefully this is a good suggestion which would be relatively simple to implement ...).
A configurable option to place a button on the metadata summary screen; that button will cause the selected metadata to be written to a temporary file, probably in some XML based format (you might need to define a suitable schema, or there may well be an existing one you can use). An external programme is called, and passed the name of that temporary file and a second; it reads the metadata from the first, makes any changes, and writes it to the second. When the programme has exited, any metadata in the second file is read and that is what is used to work out the save directory and filename, and the stored metadata.
(of course, piping into "stdin" and reading from "stdout" of such a programme would be neater and simpler, but that can be ... "interesting" ... on "Windows" based platforms ... Temporary files, whilst slightly inelegant, will work anywhere).
For example ...
Obviously the user still has to put in work creating the external programme (script, executable, ...) which will apply their own modifications to the data.
An excellent compliment to such a facility would then to be able to take such XML output from another programme and bulk apply it to the library rip directory. I.e., read a bunch of output in that format and (intelligently - where path or filenames are changed, a little bit of care would have to be applied working out where the item currently is ...) check whether any of it is different from what is already present and, if anything is, change it. E.g., the file might have been renamed, or the composer updated, or nothing might have changed (in which case that item would just be ignored).
If the user then just had a programme (run, by button, from the metadata summary as above) which saved the XML data it was given, they could rip a whole load of CDs and would end up with a pile of XML representing all the metadata. That could be edited with an XML editor (or even just a simple text editor) to make any bulk changes, then that XML data fed back into your software and bulk applied. So even users who can't (or don't want to) write their own metadata correction programmes could benefit - you could easily supply a default programme which just takes the XML metadata it's given and writes it to a given directory for later editing and bulk application.
So, whaddya think - sound sensible? Sound possible? Pretty please could we have such a facility before I launch back into months of re-ripping (I can wait )?
Long time user of "Batch Converter"; recent purchaser of "CD Ripper" (and am expecting exactly the same high quality there ).
Also, pretty much OCD (Obsessive Compulsive Disorder) about the naming of our ripped music. I'm just having it rip our entire library again after a "Windows" ... lets go with "glitch" ... resulted in the deletion of the 40,000 or so files which comprised our audio media library. I had spent considerable effort re-organising the filenames, metadata, etc. of that library, and now it looks as though I'll have to do it all over again ...
But there is hope, I hope
Looking at the excellent instructions for "CD Ripper", it looks as though it will do a pretty good job of starting with good data, so that's a plus.
"CD Ripper" also has programmatic means to alter some of the information. Looking at that, it should even be possible to arrange titles in library order (and without one of my pet hates, "Title Case" - eurgh!), E.g., "A Momentary Lapse of Reason" would become "Momentary lapse of reason, A". Same with artist information - "Alice Cooper" should, of course, be "Cooper, Alice" (whereas "Alice in chains" remains "Alice in chains" as whoever "Alice" might have been, "Alice in chains" is not the name of a person).
See? Said I was OCD about these things
But it's not enough. There are (quite considerable) limits on what can be achieved with even the well thought out programmatic changes which can be applied in "CD Ripper".
Suggestion ...
(as a developer myself, I hate it when someone says "Errrr, how about ...", but hopefully this is a good suggestion which would be relatively simple to implement ...).
A configurable option to place a button on the metadata summary screen; that button will cause the selected metadata to be written to a temporary file, probably in some XML based format (you might need to define a suitable schema, or there may well be an existing one you can use). An external programme is called, and passed the name of that temporary file and a second; it reads the metadata from the first, makes any changes, and writes it to the second. When the programme has exited, any metadata in the second file is read and that is what is used to work out the save directory and filename, and the stored metadata.
(of course, piping into "stdin" and reading from "stdout" of such a programme would be neater and simpler, but that can be ... "interesting" ... on "Windows" based platforms ... Temporary files, whilst slightly inelegant, will work anywhere).
For example ...
- You're ripping "School's out" by "Alice Cooper".
- The metadata has been gathered and the best options presented to you.
- You click the (for example) "Check metadata" button (which has appeared because you've configured an external checking programme).
- That receives information such as:
<Album>
<ID>0123456789</ID>
<Artist>Alice Cooper</Artist>
<Title>Schools Out</Title>
<PathElement>Alice Cooper</PathElement>
<PathElement>Schools Out</PathElement>
<AudioTracks>
...
<Track>
<Number>1</Number>
<Title>School's Out</Title>
<FileName>1_School's Out_Alice Cooper</FileName>
<Composer>Alice Cooper // Glen Buxton // Michael Bruce // Dennis Dunaway & Neal Smith</Composer>
...
</Track>
</AudioTracks>
</Album>
- It returns information such as:
<Album>
<ID>0123456789</ID>
<Artist>Cooper, Alice</Artist>
<PathElement>Cooper, Alice</PathElement>
<PathElement>School's out</PathElement>
<Title>School's out</Title>
<Genre>Glamrock</Genre>
<Genre>Soft rock</Genre>
<StudioID>AC98765</StudioID>
<AudioTracks>
...
<Track>
<Number>01</Number>
<Title>School's out</Title>
<FileName>01_School's out_Cooper, Alice</FileName>
<Composer>Cooper, Alice; Buxton, Glen; Bruce, Michael; Dunaway, Dennis; Smith, Neal</Composer>
...
</Track>
</AudioTracks>
</Album>
- You smile, thinking of the work you're saving with each rip, save the data, and move on to the next
Obviously the user still has to put in work creating the external programme (script, executable, ...) which will apply their own modifications to the data.
An excellent compliment to such a facility would then to be able to take such XML output from another programme and bulk apply it to the library rip directory. I.e., read a bunch of output in that format and (intelligently - where path or filenames are changed, a little bit of care would have to be applied working out where the item currently is ...) check whether any of it is different from what is already present and, if anything is, change it. E.g., the file might have been renamed, or the composer updated, or nothing might have changed (in which case that item would just be ignored).
If the user then just had a programme (run, by button, from the metadata summary as above) which saved the XML data it was given, they could rip a whole load of CDs and would end up with a pile of XML representing all the metadata. That could be edited with an XML editor (or even just a simple text editor) to make any bulk changes, then that XML data fed back into your software and bulk applied. So even users who can't (or don't want to) write their own metadata correction programmes could benefit - you could easily supply a default programme which just takes the XML metadata it's given and writes it to a given directory for later editing and bulk application.
So, whaddya think - sound sensible? Sound possible? Pretty please could we have such a facility before I launch back into months of re-ripping (I can wait )?
Comment