BFD Metadata and Database Editor (edit: OSX version in testing!) - Fxpansion.com

Forum

FXpansion Forum

BFD Metadata and Database Editor (edit: OSX version in testing!)

Support for BFD Expansion Packs and Convertors

Moderators: Drew_fx, clare_fx, SKoT_FX, Steve_FX, john emrich, Mully_FX, mayur_FX, Angus_FX, Andreas_FX, Rory_FX, Rhi_FX, Paul_fx, Moderators

aburakov
Posts: 95
Joined: Mon Dec 03, 2012 10:01 pm
Location: Mom's basement

BFD Metadata and Database Editor (edit: OSX version in testing!)

Postby aburakov » Thu Aug 06, 2015 8:23 pm

Not sure if this is the right place for this topic, but here goes...

I got tired of Sonic Reality's great expansions with crappy metadata, so i sat down for a couple of hours and wrote this simple tool to edit metadata for BFD drums (which was since completely rewritten). It has only been tested on Windows 7 and OSX Lion, with BFD 3.1. Some of the functionality probably would work with BFD2, but don't count on it.

Individual file mode

This mode edits the kit/kitpiece metadata that is stored in the BFD files. Most of the kits/presets will be either in
\Documents\FXpansion\BFD3\Kits (or Presets)
or
C:\ProgramData\FXpansion\BFD3\System\Kits (or Presets)
on Windows, and in
/Users/<user>/Documents/FXpansion/BFD3/Kits (or Presets)
or
/Libraries/Application Support/FXpansion/BFD3/System/Kits (or Presets)
on OSX.

The drum kit pieces are stored wherever you installed your core library and/or expansion packs.

From here on, any kit, kitpiece or preset will be referred to as "item".

0) turn off BFD3!
1) run the app
2) point it to the folder with BFD data you wish to edit (it can work with anything from individual items and up to lots of libraries at once)
3) let it load the metadata from all the items
4) select items that you want to edit
5) mark checkboxes of values that you want to save
6) edit the fields you want to edit (if multiple items are selected, changes will apply to all items)
7) press "save"
8) if you want to revert changes to any items, select desired items and press "restore latest backup" (you can restore everything up to the originals that way - every change you ever make is backed up)
9) rescan the library for the changes to take effect


Database mode

Unlike individual files mode, this mode edits BFD3 database directly, so all the data is stored in one file. You will probably see some hidden items in the database - i have no idea what makes them hidden. Database mode actually allows deleting stuff too.

Also, unlike individual files mode, since the database is stored in only one file, you cannot roll back individual changes if you made a bulk edit - it's all or nothing.

WARNING! If you do a rescan, any changes you've made to the database will be lost!

0) turn off BFD3!
1) run the app
2) in most cases, default path should work, but you can point BFD3ME to a database file anyway
3) press "load" and let it load the metadata from the database file
4) select items that you want to edit
5) mark checkboxes of values that you want to save
6) edit the fields you want to edit (if items are selected, changes will apply to all drums)
7) press "save"
8) if you want to revert changes to any items or restore deleted data, press "restore latest backup" (you can restore everything up to the originals that way - every change you ever make is backed up)
9) if you want to remove the item from BFD3 database, press "delete"
10) reload BFD3 for changes to take effect


Which mode do i need?

Generally, Individual files mode is the one you should be using, because it does permanent changes to the metadata that persist between library rescans. It is only when you have weird stuff in the database (stuff that couldn't be fixed through regular metadata editing and rescanning) that you should use the Database mode.

I've taken much care to ensure nothing the program does is destructive (and if it is, backups are made automatically), but obviously i am not responsible for any damage that may or may not come from usage of this program.

Neither myself nor this tool are affiliated with FXpansion in any way, and usage of this tool will obviously not be officially supported by FXpansion. Use it at your own risk.

For now, only a subset of metadata is supported, but source code is available on Github in case anyone wants to add something.

DOWNLOAD

Kudos to FXpansion for making this easy! XML metadata really is the way to go. I hope this doesn't prompt you to move to a binary configuration format...

UPDATE: 7/8
- Cleaned up code, added threading
- Support for more metadata tags
- Added big scary disclaimer
- Minor tweaks to UI

UPDATE 8/8:
- Fixed a copypaste bug that made any parameter edit default to editing library name

UPDATE 8/8-2:
- Added support for editing kits metadata (name and library only)
- Better error handling

UPDATE 8/8-3:
- Added filtering

UPDATE 8/8-4:
- Added BFD Database Editor

UPDATE 16/8:
- Complete rewrite, introduced OSX support, added tree view and path combobox

UPDATE 29/8:
- Improved usability
- Automatically updating info_path tag
- Renamed "Load" button to be more descriptive in each mode
Last edited by aburakov on Sat Aug 29, 2015 3:26 pm, edited 38 times in total.

User avatar
purtington
Posts: 3086
Joined: Wed May 16, 2007 9:37 am
Location: Bristol UK
Contact:

Postby purtington » Fri Aug 07, 2015 8:33 am

I don't have time to check it right now as I'm off and away till Sunday but will give it a go then.

So with this I can edit the library info and make all my expansion kits show up under the library tab as opposed to their current
status of, "Unknown"!!!??

If it works then you are going to be a very popular man and fxpansion will be very much indebted to you.
Perhaps they'll even buy it from you? :wink:

You should post it in the BFD3 and BFD2 forum as well.



Steve
https://soundcloud.com/steve-corr

GA-X58A-UD3R,
Intel i7 930, 2.8Ghz, Overclocked at 3.40Ghz
12GB Corsair DDR3 Ram
WD Caviar Black, 6Gb X 2
+ 500GB SSD drive for BFD Samples
focusrite scarlett 2i4
Windows 10 + windows 7 32bit

aburakov
Posts: 95
Joined: Mon Dec 03, 2012 10:01 pm
Location: Mom's basement

Postby aburakov » Fri Aug 07, 2015 8:36 am

purtington wrote:I don't have time to check it right now as I'm off and away till Sunday but will give it a go then.

So with this I can edit the library info and make all my expansion kits show up under the library tab as opposed to their current
status of, "Unknown"!!!??

If it works then you are going to be a very popular man and fxpansion will be very much indebted to you.
Perhaps they'll even buy it from you? :wink:

You should post it in the BFD3 and BFD2 forum as well.



Steve

yes, that's precisely what this utility is for (i got tired of it too :D ). additionally, you can add categories that aren't present. for example, in Imperial Drums, toms aren't marked as "floor", "high" etc. - just toms; with this app, you'll be able to do that. you'll also be able to correct markings in Sonic Reality's packs (i.e. in Alan Parsons kits, floor toms are marked as "low" instead of "floor").

naturally, you can also make up whichever categories you wish - it won't affect the existing kit presets in any way. the only thing you should be wary of changing is kitpiece name - that could cause problems with presets (although i haven't tried it).

as for posting it in other forums... that is up to the mods, plus i would hate to track three topics instead of one in case i will update the tool. i think making it an "announcement" if it proves popular enough would suffice.
Last edited by aburakov on Fri Aug 07, 2015 8:42 am, edited 1 time in total.

User avatar
purtington
Posts: 3086
Joined: Wed May 16, 2007 9:37 am
Location: Bristol UK
Contact:

Postby purtington » Fri Aug 07, 2015 8:41 am

yes, that's precisely what this utility is for (i got tired of it too :D ). additionally, you can add categories that aren't present. for example, in Imperial Drums, toms aren't marked as "floor", "high" etc. - just toms; with this app, you'll be able to do that. you'll also be able to correct markings in Sonic Reality's packs (i.e. in Alan Parsons kits, floor toms are marked as "low" instead of "floor").

naturally, you can also make up whichever categories you wish - it won't affect the existing kit presets in any way. the only thing you should be wary of changing is kitpiece name - that could cause problems with presets (although i haven't tried it).



Wow!!!!

Sounds like the dogs whiskers, look forward to trying it out on Sunday.

Steve
https://soundcloud.com/steve-corr

GA-X58A-UD3R,
Intel i7 930, 2.8Ghz, Overclocked at 3.40Ghz
12GB Corsair DDR3 Ram
WD Caviar Black, 6Gb X 2
+ 500GB SSD drive for BFD Samples
focusrite scarlett 2i4
Windows 10 + windows 7 32bit

Verda Lumo
Posts: 30
Joined: Tue Mar 04, 2014 8:12 am

Postby Verda Lumo » Fri Aug 07, 2015 9:42 am

Great tool! Thank you very much!

Drew_fx
Posts: 3828
Joined: Fri Jul 21, 2006 5:32 pm
Location: London, UK

Postby Drew_fx » Fri Aug 07, 2015 12:15 pm

Wow, that's quite cool! I'll have a bash on this.

Jan.Schoene
Posts: 98
Joined: Fri Dec 23, 2005 2:07 pm
Location: Dortmund, Germany

Postby Jan.Schoene » Fri Aug 07, 2015 3:54 pm

OS X please ... :D
To avoid questions:
MacBook Pro Retina, Core i7 2,6GHz, 16GB RAM, OS X 10.13.x (always latest), Logic Pro X, Cubase 9.5, BFD3 (always latest stable), BFD Eco, BFD Eco DV

aburakov
Posts: 95
Joined: Mon Dec 03, 2012 10:01 pm
Location: Mom's basement

Postby aburakov » Fri Aug 07, 2015 9:36 pm

I've made minor updates to the tool.

wrt OSX, as i said, i don't have access to an OSX machine, so i can't do it myself. however, if enough people ask, i'll consider porting the tool to something more cross platform than .NET 4.6 and maybe getting someone else to compile it for OSX.

User avatar
jord
Posts: 3884
Joined: Mon Sep 11, 2006 1:10 am
Location: Guelph, Ontario, Canada

Postby jord » Sat Aug 08, 2015 1:54 am

If you want to make the source code available, one of us can port it over to an OS X app.

jord
Real guitar heroes play real guitars

Image

greg.montano@gmail.com
Posts: 382
Joined: Mon Mar 07, 2005 3:41 pm
Location: USA

Postby greg.montano@gmail.com » Sat Aug 08, 2015 1:57 am

This is awesome - Thanks so much!

Any chance you can have your parser work on presets? FXPansion have improved renaming library name in presets, but it doesn't work on factory presets.

I will edit the XML on the presets, but never had the stamina to do all the SR kit pieces!

Thanks again. Super cool.
Last edited by greg.montano@gmail.com on Sat Aug 08, 2015 10:59 am, edited 1 time in total.
Yamaha DTX 900
BFD 3 w/most expansion packs
Windows 7 64 bit
Core i7 3770k
Gigabyte mobo
16 gig RAM
Cubase Pro 8.5.0
Studio One Pro 3.1
RME UFX

aburakov
Posts: 95
Joined: Mon Dec 03, 2012 10:01 pm
Location: Mom's basement

Postby aburakov » Sat Aug 08, 2015 7:58 am

jord wrote:If you want to make the source code available, one of us can port it over to an OS X app.

jord

The source code is already attached to the first post. Although, frankly, there's not much to look at there - it's just editing XML. Anyone with a library that allows easy XML editing, will be able to cobble up something like that in a few hours (like i did).

Regarding presets editing: try the new 3.1 beta, it makes it real easy. I'm surprised FXpansion didn't add similar functionality for kitpieces. Altgough i could see the value for bfd2 users. I'll look into it, but it'd probably be a separate tool.

EDIT: ah, sorry, you mentioned it only worked on factory presets. I never use them so i never noticed. Yes, i'll look into it.

EDIT2: gmontano alerted me to a bug that made the tool unusable for editing anything other than library names. this has now been fixed.

aburakov
Posts: 95
Joined: Mon Dec 03, 2012 10:01 pm
Location: Mom's basement

Postby aburakov » Sat Aug 08, 2015 10:22 am

i don't see the factory kits anywhere. they aren't in any of the data paths i could think of. i suspect they are built into BFD3 and don't really exist as files (and thus can't be deleted, and this is why they reappear when you import BFD3 core library even if you deleted them earlier). so i'm afraid i won't be able to do anything with regards to factory presets.

EDIT: i think i find a way to edit kitpiece database without actually reloading the DB. BFD3 keeps metadata database in XML format as well, and in there i see the "-0" subclass in Ken Scott drums that was nagging me. maybe i'll be able to find the factory kits there as well.

EDIT2: i found the factory kits. so yeah, it's possible :) i'll cobble something up.

greg.montano@gmail.com
Posts: 382
Joined: Mon Mar 07, 2005 3:41 pm
Location: USA

Postby greg.montano@gmail.com » Sat Aug 08, 2015 11:22 am

Thanks! If you wanted a feature request :) it be cool to be able to filter or search for kit pieces inside of libraries. For example Imperial Drums has a boat load of pieces. Being able to search for things like"floor" or "10"" would help narrow down the pieces needing editing. Thanks again for making this
Yamaha DTX 900
BFD 3 w/most expansion packs
Windows 7 64 bit
Core i7 3770k
Gigabyte mobo
16 gig RAM
Cubase Pro 8.5.0
Studio One Pro 3.1
RME UFX

aburakov
Posts: 95
Joined: Mon Dec 03, 2012 10:01 pm
Location: Mom's basement

Postby aburakov » Sat Aug 08, 2015 12:10 pm

if i were more well-versed in .NET i could have implemented it, but honestly i can't be bothered, given the marginal benefits versus effort required to learn how it works...

i've added support for editing kits. the kits are located in two places:

1) Documents\FXpansion\BFD3\Kits (user-created)
2) C:\ProgramData\FXpansion\BFD3\System\Kits (factory)

you will need to rescan the kits afterwards. i'll be creating another tool to edit metadata directly in the database (it's too much effort to support this in BFDME versus just creating a new tool) so you'll be able to just reload BFD3 to see changes instead of rescanning everything.

greg.montano@gmail.com
Posts: 382
Joined: Mon Mar 07, 2005 3:41 pm
Location: USA

Postby greg.montano@gmail.com » Sat Aug 08, 2015 1:04 pm

Awesome. You are fast! Thanks.

Another pain point in the BFD universe is bulk converting BFD 2 kits to BFD 3 format if you are looking for inspiration. :)
Yamaha DTX 900
BFD 3 w/most expansion packs
Windows 7 64 bit
Core i7 3770k
Gigabyte mobo
16 gig RAM
Cubase Pro 8.5.0
Studio One Pro 3.1
RME UFX


Return to “BFD Expansion Packs & Convertors”

Who is online

Users browsing this forum: No registered users and 2 guests