Forum: VirtualDJ Plugins

Use this forum if you have questions about plugins development, or if you want to talk with other developers.
Topic: [New Tool] VDJ8 Database Tools - Feedback needed


After some thoughts I decided to create a new tool for various operations with VirtualDj 8 database files.
Unlikely previous attempts of mine, this tool will NOT mess with your files and tags since VirtualDj 8 is absolutely capable of doing so.
What this tool will do, is to perform batch operations on the database file itself.
This tool won't do anything that a good XML editor with some RegEx scripts can do already. However it aims to simplify the process for users that don't know how to use RegEx.

Currently (2017-10-05) this tool is mostly in it's design stage, and that's where I need your feedback:

This tool will perform the following actions: (Edited 2017/10/06)

  • Reorder All POI's
    Reorder your POI's (basically your hotcues) in chronological order
  • Colorize All Action POI's
    Set a specific color for all action POI's so that they can stand out from the rest "normal" POI's
  • Lock All Cues
    Choose to lock cues for files that already hove some, or for ALL tracks.
  • Unlock All Cues
    Unlock all cues (if they are locked)
  • Delete POI's
    Choose to delete various types of POI's independently from each other (e.g. Delete action pois but keep the rest, or delete beatgrid pois only, e.t.c.)
  • Delete Comments
    Delete All Comments from DB
  • Format Track Numbers with a leading zero (e.g. 01 instead of 1)
  • Copy One DB Field to Another
    Copy information from one database field to another.
  • Switch One DB Field with Another
    Switch information between two database fields.
  • Clear a DB Field
  • Reset Cover Field
    Reset all linked covers for all files
  • Clear Track Color on Browser
    Clear the colors set by the user in VirtualDj browser


Until I finish the code behind these actions, I would like to know what other actions you may need from such a tool.
You can ask for anything, but remember 1) The action that you ask for will affect ALL files on your DB, and 2) This tool will modify ONLY your database file (so don't ask for anything that involves reading/writing to file tags)
I can't make a promise that I will fulfill every wish, but if a wish is reasonable enough and it can be done in a batch, I will add it.

Edit 2017/10/06:
Do you think a concatenate function would be useful ? (In other words merge the data of two fields and save them on any field)

Thank you!

Posted Thu 05 Oct 17 @ 8:46 am
Looks great!

Just a thought:
In the event we get a corrupted database.xml file, do we know what the issues often are?
And can we detect them?

Because then a couple of suggestions could be:
Backup and delete broken track entries
Backup and cut of file at corruption (and adding a new XML end)
Show unavailable drives (I think VDJ will try to fix those if it can, but if it has no place to go...)

Posted Thu 05 Oct 17 @ 9:24 am
VirtualDj 8 already detects and tries to fix corrupted database files (and also keeps a backup of the original file)
So I don't think this is a job for this tool.
However I'm thinking for a function that could possibly "split" the database on 2 parts:
1) With all files present on the system right now and 2) One with all missing files. But I can't think of any real case usage of this function...

Posted Thu 05 Oct 17 @ 9:31 am
Can we please have an option to delete (cleanup) all "online" files.

I only use Deezer now and again and to listen to new music, and once the track is finished with it leaves an entry on the DB permanently. The only option at the moment for these entries is to search for "netsearch" and delete them manually.

I'm pretty sure the Database>remove missing files from search DB doesn't clear these at present.

Thank you.

Posted Thu 05 Oct 17 @ 9:37 am
One thing that immediately comes to mind (that I've wished for in VDJ itself) is to set colours for tracks based on certain criteria - for example "make all reggae tracks green". It would set all your existing tracks that match genre=reggae to green, but also automatically do that to any newly imported ones.

I understand that the second (automatic) part would not be possible with your new tool, but you could achieve the first part.

It could also be used to set colours for certain tempos or tempo range. Lots of possibilities.
----------------------------------------------------------------------------------------------------------------------------------

[edit] another one that I've asked for more than once - to be able to list all "faulty" files. In VDJ 7 they used to be marked in the browser with a ! but I think this has been removed from the VDJ 8 browser. So the flagged files are still in the VDJ database but there's no way of filtering them or showing them in the 8 browser.

A bit more information (what exactly is wrong with the file) would be useful, but let's start with being able to see them. :-)
[thinking] this could perhaps be an option for the first idea - if track is flagged, colour it red.

Posted Thu 05 Oct 17 @ 5:48 pm
The problem with criteria based coloring is what happens when a track falls on more than one categories.

Color all "Reggae" tracks "Blue"
Color all 128+ BPM tracks "Orange"

What happens when a "Reggae" track has 129 BPM ? What color it should get ?


Posted Fri 06 Oct 17 @ 6:32 am
It's unlikely that a reggae track would be 129 bpm, but I see your point. :-)

However, the same would be true if the colouring was done "manually". You can't win 'em all.

What about the flagged faulty tracks?



Posted Fri 06 Oct 17 @ 5:53 pm
ZiglarControlleristMember since 2011
1.Convert database entries or entire database from windows readable format to mac readable format.
What i have realised is virtual dj on a mac can try to read windows formatted database files and do some conversion but then you loose all cue points.

Posted Fri 06 Oct 17 @ 7:45 pm
Macs can read, but, can't write to NTFS drives.
I have used my Mac for over 7 years reading and writing to an external hard drive formatted for NTFS.
I have plugin software by Paragon that enables reading and writing to NTFS drives totally seamlessly.

Click here

Posted Fri 06 Oct 17 @ 9:42 pm
groovindj wrote :
It's unlikely that a reggae track would be 129 bpm, but I see your point. :-)

However, the same would be true if the colouring was done "manually". You can't win 'em all.

What about the flagged faulty tracks?




Ok, I can try to come up with some "Colorize tracks based on various criteria" action(s)

Can you please explain better what you do mean by "faulty" tracks ?
IIRC, VirtualDj 7 would use the exclamation mark in time field when the track was VBR and was not yet analyzed (and therefore the time shown could be wrong)
I believe VirtualDj 8 still uses the exclamation mark on such cases, but I don't have any VBR files on my library anymore, nor any not scanned tracks! :P
Anyway, please explain better what you want, and if the info is present on the DB I can add an action

Posted Fri 06 Oct 17 @ 10:02 pm
From the VDJ 7 manual:
Exclamation ( ! ) in Time column – indicates that the file is corrupted (probably following a bad copy) and that it may finish abruptly or there may be excessive noise in the track

In the 7 DB they were marked as faked="1" but in the 8 DB they're corrupted="1".

Posted Fri 06 Oct 17 @ 10:46 pm
Do you have such files ? Can you send me a database copy with that info ? I have mot a single file flagged as corrupted and since this info could be held on 2 different nodes inside the XML, I need to know where...

So I either have to find such a file, or a database file with that info...

Posted Sat 07 Oct 17 @ 9:47 am
It's part of the infos line for each listed file.

<Infos SongLength="402.155102" FirstSeen="1307100840" Bitrate="320" Corrupted="1" Color="2465469" Cover="2" />

Last night I checked to see if the VDJ 8 browser still shows ! for these files, and yes it does. If you add corrupted="1" to a track in your DB you'll see the ! shown next to the track length in the browser.

Posted Sat 07 Oct 17 @ 9:55 am
geemixPRO InfinityMember since 2006
Would be nice if it could have a 1 click option to make backups of all db files found. i.e One found in my docs/vdj folder, one found in drive d: vdj folder, one found in drive e: vdj folder. And a user preset where you would store all your backups found. i.e. d:backups/ all with one simple click. Instead of having to do this manually (lazy I know lol)

Also, I know VDJ8 does a good job of fixing db files for missing tracks, but it would be nice if your tool could scan the db file, and check if the file can be found.

If file is not physically found, pop up a message saying which file is missing and would you like it to be removed from db (Yes/No).

Or maybe it could scan other user preset drive/folders to find the missing track. (Handy for anyone who has had to move their music from one drive (and/or folder) to another. Your tool could easily fix the db to remove those missing drive/folders entries. If the file is found on the same drive, update the folder location in the db with the newly found location instead.
If it's found on another drive, remove the missing file as VDJ would create/update the database on the other drive where the files are anyway.

Just a thought. I know VDJ kinda does all this with its own db cleaning, but it doesn't actually say which db entries it is fixing or give an option to delete entry or not, nor does it manually scan to find the missing file in another (preset) folder.... as far as I'm aware.



Posted Sun 10 Dec 17 @ 10:28 am
Hello. 3/5/18 I've searched for my problem and did not see an answer. Please help if you can. Yesterday, somehow, all my music folders are hidden, I know they are there because Time Machine shows it correctly in my backup. Currently I only show unsorted music. the FOLDERS are not there. How to I delete this and reload the master file on my computer. I've tried a few fixes mentioned in the forum and it didn't help. I'm spending the evening trying to undo whatever I did. but so far, no luck. Please send me an reply with ANY idea you have. I feel like the easiest cure is to delete the current music folder and reload, or refresh is from my HD. I tried "Add to Database" already. I tried "Recurse" already. *I recently changed computers, so maybe VdJ suddenly notices that and the old music folder isn't there? I can search inside the correct folder via. Going from Volumes, Macintosh, Users, me, music. all I see are the UN_FILED songs. NOT the FOLDERS. The same is true under "Local Music". Under Volumes, Macintosh, Users VDJ, Music, I see the correct backups. I don't know how to delete it and reload it. (if that is even possible) and I don't know why VDJ does not see it after I hit "refresh" and "add to database" . Thanks very much in advance

Posted Tue 06 Mar 18 @ 3:08 am