ectoplasm88
Inspired
I've been reading through the forum posts, wiki, and wherever else google takes me on processing a sysex file and more specifically a Axe-Fx III preset or bank thereof. So far the only thing I think I know for sure is each line in an individual preset file will start with the header:
F0 00 01 74 10 - F0 = start of command, 00 01 74 = Fractal Audio ID, 10 = product ID of Axe-Fx II
It looks like the first line always has the command code of 77 which from other posts marks it as the header...
It looks like the last line (18th) always has the command code of 79 so I'm guessing this is just the footer/end of record marker...
All the other lines in between (16 total) are 3k in size and have the command code of 78
So obviously all the meat of the presets are in these 16 commands. After the command code 78 it seems like they all have this series of bytes:
00 08 - Not sure what to do with these?
It looks like after the 00 08 on line 2 of the presets is always followed by 13 02 00 55 54 02 then a series of 5 bytes that are specific to the patch then it seems like 00 then what appears to be the start of the patch name. Then next byte always seems to line up with the first character of the patch and I can see some subsequent characters that are part of the patch name.
So that is about as far as I've gotten so far. I'm still trying to educate myself on how to process these types of files and aside from the hex to ascii conversion I'm probably missing something on how to translate everything. If anyone has some additional knowledge they'd be willing to share it would be much appreciated. Most of what I've found only goes up to the Axe-Fx II era of products so I'm not sure how much is still true for the current presets. The author of FracTool has been able to process these files so I might be able to eventually figure it out on my own but I'd love some help.
My motivation for processing these files is to write some simple command line tools to help with preset management on my mac. Through the preset settings, tagging of scenes, etc I want to be able to quickly batch process stuff. For example I'd love to be able to quickly dump all of my presets that use a certain amp model into a folder or create a bank file from them. Maybe I come up with a scheme of tagging a scene with something like <FV> for favorite and I can quickly run a query that spits out some sort of info on those scenes are a subset. I'm also thinking I might try to build an improved preset librarian and I'd obviously like to be able to pull in all the preset info quickly. I'm dying for some better way than managing files and directories on my hard drive to organize the presets, scenes, IR's and blocks.
FracTool is awesome and I am getting started on some of this by using the export to csv feature but I'd much prefer to interact with the sysex files directly plus I'm just a geek that loves to understand things at a pretty low level.
I'll be willing to share whatever I create with the others in this community as well. Sorry if in this I'm missing some really obvious newb stuff on the sysex/midi file processing but I am a newb at it
F0 00 01 74 10 - F0 = start of command, 00 01 74 = Fractal Audio ID, 10 = product ID of Axe-Fx II
It looks like the first line always has the command code of 77 which from other posts marks it as the header...
It looks like the last line (18th) always has the command code of 79 so I'm guessing this is just the footer/end of record marker...
All the other lines in between (16 total) are 3k in size and have the command code of 78
So obviously all the meat of the presets are in these 16 commands. After the command code 78 it seems like they all have this series of bytes:
00 08 - Not sure what to do with these?
It looks like after the 00 08 on line 2 of the presets is always followed by 13 02 00 55 54 02 then a series of 5 bytes that are specific to the patch then it seems like 00 then what appears to be the start of the patch name. Then next byte always seems to line up with the first character of the patch and I can see some subsequent characters that are part of the patch name.
So that is about as far as I've gotten so far. I'm still trying to educate myself on how to process these types of files and aside from the hex to ascii conversion I'm probably missing something on how to translate everything. If anyone has some additional knowledge they'd be willing to share it would be much appreciated. Most of what I've found only goes up to the Axe-Fx II era of products so I'm not sure how much is still true for the current presets. The author of FracTool has been able to process these files so I might be able to eventually figure it out on my own but I'd love some help.
My motivation for processing these files is to write some simple command line tools to help with preset management on my mac. Through the preset settings, tagging of scenes, etc I want to be able to quickly batch process stuff. For example I'd love to be able to quickly dump all of my presets that use a certain amp model into a folder or create a bank file from them. Maybe I come up with a scheme of tagging a scene with something like <FV> for favorite and I can quickly run a query that spits out some sort of info on those scenes are a subset. I'm also thinking I might try to build an improved preset librarian and I'd obviously like to be able to pull in all the preset info quickly. I'm dying for some better way than managing files and directories on my hard drive to organize the presets, scenes, IR's and blocks.
FracTool is awesome and I am getting started on some of this by using the export to csv feature but I'd much prefer to interact with the sysex files directly plus I'm just a geek that loves to understand things at a pretty low level.
I'll be willing to share whatever I create with the others in this community as well. Sorry if in this I'm missing some really obvious newb stuff on the sysex/midi file processing but I am a newb at it