Extracting mididb from EZDrummer

Discussion in 'PC' started by Mecha, Dec 16, 2024 at 1:53 PM.

Tags:
  1. Mecha

    Mecha Newbie

    Joined:
    Monday
    Messages:
    5
    Likes Received:
    1
    Hi Friends,

    I've been going through the mind numbing exercise of porting EZD Libraries over to SSD5.5. Over the years I've invested quite a lot into EZD but I've recently fallen in love with the sounds of SSD5.5. I want to have all my EZD libraries searchable in SSD which means renaming everything into the SSD format and it's slowly killing my soul.

    I had wondered if it's possible to extract whatever information lives in the mididb files for the various EZD libraries and feed this into some python to do it all for me. I don't know what's in those mididb files, but I'm fairly competent with Python, so I know if I can get at a good source of data I can save myself from the certain misery of manually renaming everything to the SSD format.

    From what I understand today;
    EZD Libraries have a funky structure of;
    Root
    |
    +-- Folder named (some integer, type (i.e Ballad/Halftime in folder name)
    Example: 200@_BALLAD
    |
    +-- header file
    +-- Folder (Named for integer which is an increment above one, style and timing)
    Example: 204@SWING_3#4
    |
    +-- Another header folder named for tempo, some ordering value, a grouping and BPM again
    Example: 087-S060@_60s_BALLAD_87_BPM
    +-- Midi Folders, named for tempo, some ordering value, position in song
    Example: 087-S061@INTRO
    |
    +-- Midi files - names don't seem to matter much EZD seems to analyse on first load/db refresh.

    What I don't get here is the specific info for a given midi file I see in EZD for example, power hand, No. Bars.

    SSD5.5 Expects the following (to be completely searchable in the Grooves bit):
    Minimum requirement
    - Root Library with a .lib extension
    - Grouping for song/type/style with a .sng extension
    - Part of song with a .prt extension

    To make it searchable alongside the existing libraries:
    library.lib
    |
    +-- [timing] [tempo] [style] [feel].sng
    Example "44 170 Metal Straight.sng" would indicate 4/4 timing 170 BPM Metal with a straight feel
    |
    + [order No.] [Part of song].prt
    Example "01 Intro.prt" contains all the intros
    |
    +--Midi Files [Part of Song] [order] - [Power Hand] - [Length].midi
    Example "Int 01 - Snare - 1 Bar.midi"

    So after all that explanation. I just want to know if it's possible to get everything I need to rename a library via a script from EZD format to SSD Format.

    What would be even better is if some clever person has already written something that does this. If anyone knows of such a thing I'd appreciate the share!
     
  2.  
  3. Mecha

    Mecha Newbie

    Joined:
    Monday
    Messages:
    5
    Likes Received:
    1
    The directory structure didn't print right above, but if you can answer my questions you probably already know both pretty well anyways!
     
  4. Synclavier

    Synclavier Rock Star

    Joined:
    Nov 28, 2014
    Messages:
    575
    Likes Received:
    382
  5. Mecha

    Mecha Newbie

    Joined:
    Monday
    Messages:
    5
    Likes Received:
    1
    Legend! The first one looks more promising. Its doing some funky stuff the file names etc. Second one looks like more of a lift, create new dir structure and dump so maybe not renaming the actual midi files. I'll try the first and report back.
     
  6. Mecha

    Mecha Newbie

    Joined:
    Monday
    Messages:
    5
    Likes Received:
    1
    No joy sadly. I think the mapping file the toontrack2slate thing is using is just too old. It missed most libraries and made a bit of a mess of what it did find. Also, it doesn't edit the midi file names, just creates the structure and dumps everything in, which means it's missing lots of info in the groove browser in Slate.
     
  7. sisyphus

    sisyphus Audiosexual

    Joined:
    Apr 29, 2014
    Messages:
    1,457
    Likes Received:
    622
    For some reason, I thought SD could read EZD midi naturally if you pointed it to the folder or copied the EZD midi over... I would have sworn with earlier versions.... but I could be wrong, failing memory, and/or stupid... and all three can be true at once. :)

    edit: OH, I was just being stupid here, or lacking reading comprehension skills, as I initially read your post as Superior Drummer, not Slate... my bad...
     
  8. Synclavier

    Synclavier Rock Star

    Joined:
    Nov 28, 2014
    Messages:
    575
    Likes Received:
    382
    yeah:) and both Superior Drummer and EZD read the same midi format libraries
     
  9. Synclavier

    Synclavier Rock Star

    Joined:
    Nov 28, 2014
    Messages:
    575
    Likes Received:
    382
    I remembered about two more projects that convert drumlibs :winker:

    https://github.com/insomnimus/drum-mapper
    https://www.midiremap.com/drum-maps

    And there was also a forum user that coded some tool for converting libraries but I can't find the thread
     
  10. Mecha

    Mecha Newbie

    Joined:
    Monday
    Messages:
    5
    Likes Received:
    1
    So the insomnimus one looks cool, that's a whole vst plugin. I'll have a play with that, but it's way more than what I want here. I made the decision yesterday to just build my own and spent some time digging around the way EZDrummer Works. I've made some good progress so far. Once I have a working prototype I'll share it back here. Another day or so I reckon, depending on if I can be arsed refactoring it to be tidy and adding tests :wink:
     
  11. dubtronic1000

    dubtronic1000 Member

    Joined:
    Feb 8, 2023
    Messages:
    13
    Likes Received:
    8
    Location:
    UK
  12. Synclavier

    Synclavier Rock Star

    Joined:
    Nov 28, 2014
    Messages:
    575
    Likes Received:
    382
Loading...
Similar Threads - Extracting mididb EZDrummer Forum Date
Extracting all individual midi files from a SD3 'MidiDB' file Software Aug 20, 2022
Best Tools for Extracting Audio from Video? Working with Video Oct 27, 2024
Extracting grooves in Reaper [SOLVED] Reaper Sep 26, 2024
Extracting Audio From Proprietary Formats Working with Sound Feb 1, 2024
Extracting tutorial video from an online platform to watch them offline Education Dec 25, 2023
Loading...