by Peter Hollin » Wed Feb 11, 2009 7:57 pm
I'm a MM gold user and a network engineer.
I have to say - using the media ID is a good idea for locating physical media which may have moved around.
However;
It's tremendously counter-productive for anyone who uses a network drive or subst. Those volumeIDs change all the time. This issue has made me seriously consider no longer using or recommending MediaMonkey. The UNC solution is wrongheaded and backwards. My installation won't even work with UNC's anyway. People who use mapped drive letters do so specifically to abstract data landmarks away from the network topology. We have chosen not to use UNCs for very specific and beneficial reasons. I remember not-so-fondly having to push out registry entries to MSOffice clients to change a behavior which stupidly insist on using UNCs internally even when you have given them drive-mapped files. This sort of abstraction is vital to anyone who ever consolidates or separates servers.
The simplest solution would be not to use volumeIDs for any non-physical media. It confers no benefit on virtual drives whatsoever. This would require only the most trivial of code changes.
I would suggest going a step beyond this and also doing the following:
Even for physical media, don't rely on the volumeID until *after* you've failed to play a file. In fact, if files are successfully played and the volumeID is different, the volumeID should catch up to accommodate (possibly after a background sanity-check scan). I'm sure it would be easy to keep a list of volumeIDs on which the collection has been seen and how trustworthy each one is. If the user has relocated things in a way that is consistent with them understanding what they're doing, then the software should follow along. Even in the case of physical media, it's unreasonable to expect that the files will only ever be manipulated within MM. Sometimes hard-drives die and backups are restored. Some people use virtual machines or roaming desktops. Sometimes you need to use rsync to get the job done. Using the volumeid has its virtues - but it is better suited as a fallback than as an automatic action on startup.
Provide an easy way in the GUI for advanced users to change it. Heck, in the property panel where you can already see, but not edit, would be at least something. Better yet would be a dialog similar to the MM_HDDSerial.vbs script. It's enragingly frustrating to see it and not be able to edit it. I know where my music is. And yes, I can go into the database, but that involves decimal to hex conversions and takes some fiddling to get the hang of. People comfortable doing that are also comfortable doing a "cat /home/mp3/daftpunk.mp3 | mp3decode | /dev/snd" to play their music.
I'm a MM gold user and a network engineer.
I have to say - using the media ID is a good idea for locating physical media which may have moved around.
However;
It's tremendously counter-productive for anyone who uses a network drive or subst. Those volumeIDs change all the time. This issue has made me seriously consider no longer using or recommending MediaMonkey. The UNC solution is wrongheaded and backwards. My installation won't even work with UNC's anyway. People who use mapped drive letters do so specifically to abstract data landmarks away from the network topology. We have chosen not to use UNCs for very specific and beneficial reasons. I remember not-so-fondly having to push out registry entries to MSOffice clients to change a behavior which stupidly insist on using UNCs internally even when you have given them drive-mapped files. This sort of abstraction is vital to anyone who ever consolidates or separates servers.
The simplest solution would be not to use volumeIDs for any non-physical media. It confers no benefit on virtual drives whatsoever. This would require only the most trivial of code changes.
I would suggest going a step beyond this and also doing the following:
Even for physical media, don't rely on the volumeID until *after* you've failed to play a file. In fact, if files are successfully played and the volumeID is different, the volumeID should catch up to accommodate (possibly after a background sanity-check scan). I'm sure it would be easy to keep a list of volumeIDs on which the collection has been seen and how trustworthy each one is. If the user has relocated things in a way that is consistent with them understanding what they're doing, then the software should follow along. Even in the case of physical media, it's unreasonable to expect that the files will only ever be manipulated within MM. Sometimes hard-drives die and backups are restored. Some people use virtual machines or roaming desktops. Sometimes you need to use rsync to get the job done. Using the volumeid has its virtues - but it is better suited as a fallback than as an automatic action on startup.
Provide an easy way in the GUI for advanced users to change it. Heck, in the property panel where you can already see, but not edit, would be at least something. Better yet would be a dialog similar to the MM_HDDSerial.vbs script. It's enragingly frustrating to see it and not be able to edit it. I know where my music is. And yes, I can go into the database, but that involves decimal to hex conversions and takes some fiddling to get the hang of. People comfortable doing that are also comfortable doing a "cat /home/mp3/daftpunk.mp3 | mp3decode | /dev/snd" to play their music.