Project file change using command line switch

Gaap

2016-06-18 16:31:45

I have begun to use MIDI Translator Pro for about three months in Japan.
I am using Cantabile Performer and MIDI Translator for a live performance.
I'm trying some methods to use MIDI Translator as an assistant of the performances.
For example, detecting a phrase and take trigger (change of the volume,
turn up a page of the PDF score) or detecting a chord set beforehand
and add another sound (notes or SE etc.) something like that.

So I made bmtp file for each song I play. In a live performance, I have to change
those bmtp files quickly in an interval of song and song.

Cantabile Performer has a function to execute a command set at the time of start
and stop of the song. So I tried to use command line switch of MIDI Translator.
For the 1st song, it's no problem using /project. But after the 2nd song, how to
change bmtp files. Closing project by /close is successfully done. What I have to do next ?

Please advise me.

p.s.
I'm not a native speaker of English. I'm very sorry if strange expression is included.

florian

2016-06-18 21:56:40

Hi, I assume your problem is that it'll start another instance of MT Pro, so you end up having 2, 3, or more MT Pro's, each executing a different project?

One of the next versions will allow you to prevent this behavior, i.e. only ever one instance is open. Starting it with a new project file will then let the running instance load that new project file.

However, for now, you can load the project file from an action in MT Pro: use the outgoing action "Execute File" and just enter the path to the project file. If they're all in the same folder, just put the filename there (no folder). Paths entered there are relative to the currently running project file. MT Pro detects project files in the ExecuteFile action and loads it directly. So then you only need a suitable incoming trigger for this ExecuteFIle action, for example a special MIDI message from Cantabile Performer.

Let me know if that makes any sense!
Regards,
Florian

Gaap

2016-06-19 02:39:48

Hi Florian,

Thank you very much for your quick reply.

The content that you explained is as follows ?

1. The project file for the next song is loaded by the current project file.
2. Use "Execute File" only with the next project filename. (all bmtp files are in the same folder)
3. "Execute File" is triggered by some special MIDI message from Cantabile.
4. This method is usable when a set list is settled.
5. I am looking forward to the next version up. :-)

I'll try it for the live performance on July 2nd.

Best Regards,
Gaap

florian

2016-06-19 21:28:57

sounds good! you could create a preset for loading the other project files. For each project file, create one distinct MIDI message. So, e.g., if you have 5 project files, create 5 translators. Like that, each project file can be loaded with a specific MIDI message. Now copy that preset and paste it into every project.

With that setup, you can arbitrarily choose a project file via MIDI message, also jump back, and so on.

Good luck! Please let us know how your testing progresses.
Florian

Gaap

2016-07-10 14:32:56

Hi Florian,

In a live performance on July 2nd, MIDI Translator worked perfectly.
Thank you very much for your advice.

The change methods of the project files which I used are as follows.

1. Copy and rename the bmtp files. From filename using the song title
to filename using setlist order.

cf. song_title.bmtp -> support_file01.bmtp

2. Add a preset shown below to each bmtp file and set it to be "always active".

--------------- Preset Next Song Select (n)

[x] Translator 0: How many Songs ?
Incoming: Project Opened
Rules:
//the numbers of the songs
ns=7

// 1.Song Title 1
// 2.Song Title 2
// 3.Song Title 3
// 4.Song Title 4
// 5.Song Title 5
// 6.Song Title 6
// 7.Song Title 7
Outgoing: (none)

[x] Translator 1: Trigger from Cantabile
Options: swallow
Incoming: Program Change on channel 16 set 'rr' to program
Rules:
rr=rr+1
if rr>ns then exit rules, skip Outgoing Action
zn=rr
Outgoing: One-shot timer "TM0": 0 ms delay

[x] Translator 2: Goto Song(n)
Incoming: On timer "TM0"
Outgoing: Support_File%02d zn%.bmtp, delay:500 millisec


3. From Cantabile, send program change with the setlist number to MIDI Translator.

4. Once any of the bmtp file is opened, I can choose every song for the next
regardless of set list order.

TM0 is not required for this preset I know but it is reserved for some additional actions.

Of course it will be more convenient when these actions became to be controlled by a command-line.
However, I became able to wait for the next version up patiently. :-)

florian

2016-07-12 02:40:03

great to hear that it worked as intended!
Thanks for sharing,
Florian