program changes or other controler data.

Support and feedback for Acoustica's Mixcraft audio mixing software.

Moderators: Acoustica Greg, Acoustica Eric, Acoustica Dan, rsaintjohn

User avatar
Acoustica Greg
Posts: 24647
Joined: Wed Mar 01, 2006 5:30 pm
Location: California
Contact:

Re: program changes or other controler data.

Post by Acoustica Greg »

Ian,

I thought you were talking about CC volume messages in the piano roll.

It would be normal for the volume sliders to return to a neutral position because MIDI files don't store that data.

Greg
Mixcraft - The Musician's DAW
Check out our tutorial videos on YouTube: Mixcraft 10 University 101
User avatar
Ian Craig
Posts: 1019
Joined: Sun Jan 22, 2017 7:15 pm
Location: Belfast, Northern Ireland, UK
Contact:

Re: program changes or other controler data.

Post by Ian Craig »

Okay, thanks 8)
Mixcraft 9 Pro Studio (build 470) recording output using MRecorder
AMD Ryzen 8 Core 3.0 GHz (40 GB Ram) & Intel i9 11th Gen 3.5 GHz (64GB Ram),
Windows 10 Professional
Focusrite Scarlett 2i2 & 8i6
jwmix
Posts: 23
Joined: Mon Apr 30, 2018 12:06 pm

Re: program changes or other controler data.

Post by jwmix »

This is an FYI type post, not a how to code it post,
from an old man. None of this should be new info,
except perhaps, for the PowerShell part.

With PowerShell, by it's self or with other actions,
one can write text information into a midi file.

The below is written into the midi file's first informational track,
though it could go anywhere, because text info is allowed in midi files.

TrackInfo = "InfoStart*" +
"Mixcraft track info, volume slider -4.1 dB, effects count 2*" +
"Mixcraft effect 1, Acoustica EQ, Preset Classic V, Output Gain +2*" +
"Mixcraft effect 2, Acoustica Compressor, Preset Keyboards - String Pads*" +
"Mixcraft Vst Glass Viper, Preset Tremolo Soft, No changes**" +
"MusicMaker track info, Vst DN-e1, Bank A, Leads, Alice, Volume 31%*" +
"MusicMaker all other options default, effects count 2*" +
"MusicMaker effect 1, 10 Band EQ, 600 +10, 1K +8, all others default 0*" +
"MusicMaker effect 2, Compressor, Threshold -20.67 dB, Attack 16.16 ms, all " +
"others default*InfoStop"

Then later when one wonders how this midi file was used,
just have PowerShell read the two DAWs track info lines,
from one's midi file.

(All .NET Framework APIs usable within PowerShell)
Using Bytes = System.IO.File's ReadAllBytes(MidiFile) and
System.Text.Encoding's ASCII.GetString(Bytes, StartAt, VariousCounts )
one can work out the location of this info, within one's midi file.

Info = using again ASCII.GetString(Bytes, StartAt, EndAt)
Info.Split('*')

Gives one the below:

InfoStart
Mixcraft track info, volume slider -4.1 dB, effects count 2
Mixcraft effect 1, Acoustica EQ, Preset Classic V, Output Gain +2
Mixcraft effect 2, Acoustica Compressor, Preset Keyboards - String Pads
Mixcraft Vst Glass Viper, Preset Tremolo Soft, No changes

MusicMaker track info, Vst DN-e1, Bank A, Leads, Alice, Volume 31%
MusicMaker all other options default, effects count 2
MusicMaker effect 1, 10 Band EQ, 600 +10, 1K +8, all others default 0
MusicMaker effect 2, Compressor Threshold -20.67 dB, Attack 16.16 ms, all others default
InfoStop

Now one can make two wave files (one in Mixcraft and one in Music Maker)
and zippy do dah, another million seller is done, by two completely different
DAWs and two completely different users. Don't fight with one's different DAW
users, instead work with them, and share one's data usage ways (all the way to
the bank)!

Know one's data - The word info is used here, but you may have the word info used
else where, within your midi information. So know one's data (when searching).

One can also see this info straight from the midi file via the PowerShell's
Format-Hex cmdlet (command).

Be-aware that most DAW(s), when re-saving this midi file in the DAW(s),
do not re-write this midi text info back into the midi file (but text
is allowed). So in this case, just have PowerShell put the perhaps,
updated Mixcraft/Music Maker track info, back into the midi file (like
you did in the first place). Now you once again have track info, within
one's midi file, for your's or other's benefit. Wouldn't this be great,
if the DAW wrote track info usage, within the midi file, for their users?

I still prefer storing all this info (plus tons more) via PowerShell,
into Html, MusicXml, NotePad, Before/After Actions, Charts (and etc.)
type of report(s), for each project. But it's nice having it available,
within the midi file too. Know one's data (some DAW(s) do not tell you,
about one's data). But in this data heavy world of today, one should
be able to search all their projects, to get say a count of projects
using blah blah or for singer blah blah. One's music data, is one's
business data!

Read PowerShell blogs, watch PowerShell ISE videos.

Adjust their PS business ways, to your PS Mixcraft music needs.

Have fun, find a PowerShell youngster (for help) and share!
Post Reply