Request for midi export/import

Xaphoid
Posts: 20
Joined: Wed Nov 23, 2011 12:21 pm

Request for midi export/import

Post by Xaphoid »

didn't see a thread for requests of new features so I'll post here.

I need midi export support badly for collaboration between different platforms that use midi. If anyone else would find this useful please put your petition here.

Note to Oskari T: I'd be willing to make donations every month in the amount that I can afford if this can be implemented. :D
User avatar
tinga
Posts: 526
Joined: Tue Nov 22, 2011 5:25 pm

Re: Request for midi export/import

Post by tinga »

Piano roll import the first midi track, an import with an option to select the track's number we want to import will be cool, an import track by track, by this way we could have a better control for machine assignment, i'm not sure that a global import will be the best solution, why not a new machine, a midifile player, Kazuya's midi 2 peer doesn't work in new buzz :cry:
oskari
Site Admin
Posts: 296
Joined: Mon Nov 21, 2011 2:04 pm

Re: Request for midi export/import

Post by oskari »

Pattern XP and Pianoroll can already export midi (CMachineInterfaceEx::ExportMidiEvents), but there's no GUI support for this. Maybe someone wants to do it.
Xaphoid
Posts: 20
Joined: Wed Nov 23, 2011 12:21 pm

Re: Request for midi export/import

Post by Xaphoid »

so it will do this from the tracker as long as its XP?
Xaphoid
Posts: 20
Joined: Wed Nov 23, 2011 12:21 pm

Re: Request for midi export/import

Post by Xaphoid »

how do I use that piece of code? Can I use it as a command in the Debug console somehow?
oskari
Site Admin
Posts: 296
Joined: Mon Nov 21, 2011 2:04 pm

Re: Request for midi export/import

Post by oskari »

It's done now and supports at least pxp MIDI parameters and Polac VSTi's parameters, including note delay and cut.

It looks for parameters called Note, Note Velocity (or just Velocity), Note Cut and Note Delay. Any machine that has these (or some of these) parameters may work.
Xaphoid
Posts: 20
Joined: Wed Nov 23, 2011 12:21 pm

Re: Request for midi export/import

Post by Xaphoid »

I guess money talks! hehehe. Thanks for the quick turnaround on that request.
User avatar
Evelon
Posts: 147
Joined: Tue Nov 22, 2011 11:00 pm

Re: Request for midi export/import

Post by Evelon »

Fucking awesome, Oskari! Thank you so much!
ags
Posts: 169
Joined: Sat Nov 26, 2011 4:06 pm

Re: Request for midi export/import

Post by ags »

oskari wrote: including note delay and cut.
Neat.
hundredcaws
Posts: 71
Joined: Sun Jul 15, 2012 7:47 am

Re: Request for midi export/import

Post by hundredcaws »

so how to run the export option. i cannot see the button ?
oskari
Site Admin
Posts: 296
Joined: Mon Nov 21, 2011 2:04 pm

Re: Request for midi export/import

Post by oskari »

Right-click in the new sequence editor.
syphilissauna
Posts: 169
Joined: Thu Feb 02, 2012 6:53 pm

Re: Request for midi export/import

Post by syphilissauna »

diggin up this thread because I was recently importing a few midi files into a buzz track using the patternxp piano roll method and was noticing that if I import a midi file and then switch to regular pattern xp editing the note information isnt there any longer .. is there something Im doing wrong ? Id like to import using the pianoroll and then switch to regular editing mode so that I can copy , paste , add notes etc with more ease .. any ideas ?
Mu_
Posts: 126
Joined: Wed Nov 23, 2011 11:43 am
Location: Warsaw, Poland

Re: Request for midi export/import

Post by Mu_ »

[...]
Last edited by Mu_ on Fri Jan 18, 2013 3:17 am, edited 1 time in total.
oskari
Site Admin
Posts: 296
Joined: Mon Nov 21, 2011 2:04 pm

Re: Request for midi export/import

Post by oskari »

You have to enable MIDI notes in pattern XP (Columns...).
syphilissauna
Posts: 169
Joined: Thu Feb 02, 2012 6:53 pm

Re: Request for midi export/import

Post by syphilissauna »

oh ok thanks yall .
Per Lichtman
Posts: 16
Joined: Wed Jun 13, 2012 2:59 am

Re: Request for midi export/import

Post by Per Lichtman »

First of all, thanks for the MIDI import/export capability. It is so greatly appreciated and I can't tell you how many times I wish I had, had it years ago. Kudos. :)

Are there any plans to add MIDI channel to the data exported? I do a lot of rhythmic string writing in Buzz where I use MIDI channels for articulation switching (staccato up cha 1, staccato down cha 2, pizzicato a cha 3, pizzacto b cha 4, etc.). If the MIDI channels changes were preserved during export, I could pretty much go straight from Buzz to my notation program without having to open the Buzz file to check my edits (like I have done for years :)

Btw, it took me a bit to figure out how to get MIDI export working since I was missing a couple steps so here's the short version for anyone just starting out.

MIDI Export
  • - In Buzz go to View>Settings
    - Click on the Sequence Editor tab and make sure that "Hide Editor" is set to "False".
    - Select the Pattern View (F2).
    - You should now be able to see the New Sequencer display near the top of the screen, located above the headers reading "Machine", "Editor", "Wave", "Base Octave", etc.
    - Right-Click anywhere in the New Sequencer and select "Export Track as MIDI" (to export just the selected machine) or "Export Song as MIDI" (to export the MIDI for all the machines).

MIDI Import (supports the first track of a given MIDI file - use single track MIDI files for maximum compatbility)
  • - In Buzz, select the Pattern View (F2)
    - Find the "Machine" dialog box located above the main editor (and below the New Sequence Editor, if that is enabled in your view).
    - In the "Machine" dialog box, select the machine you want to import the MIDI sequence for.
    - In the Editor dialog box, select "Jeskola Pattern XP Editor"
    - If you want to import the MIDI sequence into a new pattern, create a new pattern (CTRL+ENTER or right-click anywhere in the bottom editor and select "New Pattern")
    - Click the "Columns" button on the left side of the screen.
    - Click the check box next to the machine you are editing to switch it from a filled box to checked one and click "OK". If the box is checked (as opposed to filled or empty) already, just leave it alone.
    - In the Editor dialog box, select "Jeskola Pianoroll". Note: It is suggested that you stop playback for this step as switching between Jeskola Pianoroll and other editors can be demanding on some systems.
    - Near the left side of the screen, click on the "Import" button.
    - Select the MIDI file you want to use.
    - You can now edit the MIDI note data in either the Jeskola Pianoroll or Jeskola Pattern XP editors by clicking on the "Editor" dialog box to switch between them.
hundredcaws
Posts: 71
Joined: Sun Jul 15, 2012 7:47 am

Re: Request for midi export/import

Post by hundredcaws »

syphilissauna wrote: Id like to import using the pianoroll and then switch to regular editing mode so that I can copy , paste , add notes etc with more ease .. any ideas ?
switching between pianoroll and patternxp most of the times causes crash (my experience)
nogginj
Posts: 3
Joined: Tue Jan 24, 2012 5:54 pm

Re: Request for midi export/import

Post by nogginj »

Per - I've added your nice little write-up to the buzz wiki.
http://buzzwiki.robotplanet.dk/index.php/MIDI_in_Buzz

Thank you
User avatar
vacuum
Posts: 96
Joined: Fri May 04, 2012 10:24 am

Re: Request for midi export/import

Post by vacuum »

Per Lichtman wrote: Are there any plans to add MIDI channel to the data exported? I do a lot of rhythmic string writing in Buzz where I use MIDI channels for articulation switching (staccato up cha 1, staccato down cha 2, pizzicato a cha 3, pizzacto b cha 4, etc.).
Maybe you can export them as seperate tracks. (I tried it only once, but it worked)
(maybe add this to the wiki too..?)

In case that you have used multiple midi channels in polac's vsti, you can record/export these channels like this:
You record all data to multiple instances of polac's "internal midi" and then export...
(the data for note cut and note delay get a little bit different here though)

-add multiple instances of polac's "internal midi" (as many as you have used midi channels)
-rightclick these "internal midi" devices and choose in attributes the "midi in channel" that you want to be recorded
-rightclick the (to be recorded) vsti and choose "midi send..." and then select all internal midi devices.
(in case the (to be recorded) vsti does not support midi send... then (rightclick and choose open...) replace the vsti by another instance of the internal midi)
-set it all up with the right names for the channels (right click and rename) so you remember what is what.
-set the looppoints, disable looping, add patterns to sequencerview and start recording.
-then export midi from sequenceview like described above

(sometimes the free demo of energyxt vsti might help too, for import/export midi, by recording data http://www.energy-xt.com/index.php?id=0200 )
Per Lichtman
Posts: 16
Joined: Wed Jun 13, 2012 2:59 am

Re: Request for midi export/import

Post by Per Lichtman »

nogginj wrote:Per - I've added your nice little write-up to the buzz wiki.
http://buzzwiki.robotplanet.dk/index.php/MIDI_in_Buzz

Thank you
Thanks for doing that. I hope it helps people.
vacuum wrote: Maybe you can export them as seperate tracks. (I tried it only once, but it worked)
(maybe add this to the wiki too..?)
I'm going to try the method you described now. I don't seem to be setup to get updates in this thread sent to my e-mail yet, so I apologize for not seeing your post sooner. :)

If Oskari adds a MIDI channel entry in Pattern XP and the Piano Roll that exports, that would be the ideal solution. But I'm definitely game to try yours and thanks for putting the time into detailing it!

I was also going to try using MIDI output from Buzz to record in Reaper, but for some reason the MIDIVST list of devices only shows "Internal MIDI" and "Internal MIDI (x64)" even though "MIDI Send" list for the Polac loader lists more than 9.

How can I repopulate my list of MIDIVST devices?

UPDATE: Found the MIDIVST answer eventually - just took more searching than usual.
Here's Polac's answer.

viewtopic.php?f=3&t=7&p=2845&hilit=midivst#p2856

And here's my step-by-step, based on that.

- Right click on a PVST or PVSTi in your session
- Click on "Preferences"
- Select the "Global 2" tab
- Select "Scan Shell" and select either "midivst.dll" or "midivst.x64.dll"
- Click "OK" in the dialog that pops up.
- Click "OK" in the preferences panel.
- Close Buzz.
- Restart Buzz.

The list should now include all your MIDI devices.
Post Reply