Import database form Collectorz MP3 Collector

Post a reply

In an effort to prevent automatic submissions, we require that you complete the following challenge.
:D :) :( :o :-? 8) :lol: :x :P :oops: :cry: :evil: :roll: :wink:

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review

Expand view Topic review: Import database form Collectorz MP3 Collector

by imd1b4u » Mon Oct 15, 2007 8:41 pm

Thanks for your reply. I had written a script that sometimes added audio CDs to the Medias table with those three fields not set properly. I didn't expect that, and to me that was an undesirable feature or bug. Still, I didn't think it was a major problem, but wanted to check if you had found out differently.

As it is, I figured out how to sidestep the issue. I like that idea even better.

by Steegy » Sun Oct 14, 2007 7:11 am

IsAudioCD, CDDBId, or TOCData don't really matter. Everything works fine without them. The main reason for not filling in these database fields (at least CDDB and TOC) is that there's no real easy way for a script to get those values. Take a quick look at the MM database, and you'll see that in some cases (non-cd media, not-cddb'ed, ...) these fields aren't filled in either. Anyway, this script was made for a specific purpose, and filling these fields wasn't part of it.

I don't really know which other part of your post I should answer, and what I should answer, but this script is used to make MediaMonkey aware that certain tracks belong to some physical media you own, if for some reason that relation got lost (e.g. ripping and adding to library, converting, ...). The result is that, if you enter the physical medium in your computer, MediaMonkey will recognize those songs on your hard drive as being part of it, just as what happens when you enter a cd of which you ripped the tracks with MM. (That's all.)

If this doesn't answer your questions, please let me know.

by imd1b4u » Sun Oct 14, 2007 4:26 am

@Steegy: I noticed that your script does not change anything in the IsAudioCD, CDDBId, or TOCData fields in the Medias table. It could be that are not worrying about importing data from an Audio CD, but I was wondering if you came to the conclusion that those fields really don't matter, in any case. I was getting the same impression (that they don't matter).

I don't know what would happen if someone tried looking up the CD with freedb. That may (or may not) set the CDDBId field, at least, but, of course, it might also overwrite the song data with whatever got pulled in from freedb. Simply scanning the CD doesn't update anything in the entry in the Medias table, as far as I can tell.

I am thinking that this is not really a problem, but I was wondering if you had any insight into this.

The reason I care at all is that running a script that calls UpdateDB on the songs of an Audio CD that hasn't been scanned into the database yet winds up creating the same situation. A record is created in the Medias with those same three files not set properly (but at least the serial number and both label fields are set, so your script isn't needed in that case).

by trixmoto » Thu Dec 22, 2005 6:45 am

A new version of the script has been posted which is more stable when importing numeric strings. This should fix the problem. Let me know if you have anymore. :)

by trixmoto » Thu Dec 22, 2005 5:50 am

The problem is that one of the "Size" fields does not match the normal pattern. Possibly because the size is larger than expected. If you could email me the export file you are using I can test and adjust the script accordingly.

by Guest » Thu Dec 22, 2005 5:43 am


Thanx a lot for all the work you have done :D I''m impressed!

I've installed the script from trixmoto, but it shows an runtime error message in line 154, colum 2. The scripts now will only adds the first song of my fist MP3 CD :cry: It also stats then Overloop, clng or something...

I've also installed the script of Steegy, but that doesn't work yet, I think because of the error in the script of trixmoto.

I'm a noob with visual basis scripts etc, so I'm not sure what to do next...

Thanx again!


by trixmoto » Wed Dec 21, 2005 9:09 am

I'm sorry, I don't understand. Can you give me an example?

EDIT1: Surely if I set the path as "?:\Folder\File.mp3" then it won't know which drive it's on? :-?

EDIT2: I've been setting the path as "D:\Folder\File.mp3" and in the database the path appears as ":\Folder\File.mp3" and the IDMedia appears as 84 (which is the ID of a new record with drive letter D and serial=-1).

EDIT3: The only difference if I start the path with a "?" is the new media record has a drive letter of -1 instead of 3.

by Peke » Wed Dec 21, 2005 8:59 am

Do not forget to add "?" instead of drive letter in Path field so that mm searches drives for it.

by trixmoto » Wed Dec 21, 2005 8:24 am

This script can now be found here:

by trixmoto » Wed Dec 21, 2005 6:42 am

@Ewoud: I'm having problems because one of your albums (Various - Nederlandse Top 100 Van 2003) contains NULL characters in the Notes field. Any idea why there are null characters in the notes field?

by trixmoto » Wed Dec 21, 2005 4:23 am

Just normal: "G:\Folder\Another Folder\Track.mp3" - it was a stupid typo on my part. It's working now, I'm just stablising the parsing and trying to improve efficiency before I release it later today. :)

by Peke » Tue Dec 20, 2005 8:24 pm

In what format are Paths at MPC/XML?

by trixmoto » Tue Dec 20, 2005 11:32 am

Import script is getting there. Having problems with things like some of your years are set to "Llec" which is not a valid number! :)

Working out the bugs but it should be ready soon.

Just realised that the path is not going in right. Presumably this is because a new location needs to be added the database? At the moment I'm using SDB.NewSongData not SQL. Can someone help?

by Steegy » Tue Dec 20, 2005 8:38 am

You're right, I changed it now. Thanks!

by trixmoto » Tue Dec 20, 2005 8:20 am

Looks good to me (although I'd have checked for selected tracks at the beginning). I suppose I'd better get working on the import script then! :)