Post your questions, opinions and reviews of the MPC1000. This forum is for discussion of the OFFICIAL Akai OS (2.1). If you wish to discuss the JJ OS, please use the dedicated JJ OS forum
User avatar
By chilom Tue Dec 13, 2005 12:11 pm
hi all,

i would like to know where i could find mpc 1000 file format specification

(.PGM and .SEQ)

thx
By sparq Tue Dec 13, 2005 1:49 pm
chilom wrote:hi all,

i would like to know where i could find mpc 1000 file format specification

(.PGM and .SEQ)

thx
what exactly do you want to know about it? you have to give more detail into your question. do you want to find what is in the pgm and seq file? or where you can find already made files? what exactly do you want to know?
User avatar
By pedroagb Tue Dec 13, 2005 2:02 pm
Here is a page about the pgm format:

Stephen Norum :: MPC 1000 PGM File Format
http://ieee.usask.ca/members/snorum/pgm/

as for the seq, I have no idea, but would like to know as well. Specifically, is there any way of editing seq files outside the mpc? Like maybe some comercial sequencer will open them? anyone?

cheers
User avatar

By chilom Tue Dec 13, 2005 2:44 pm
Well i would like to make a small utility to manipulate the .SEQ, in oder to be editable from a software sequencer.

hmm ppl would say its useless when you have a hardware sequencer. But some of your friends dont always have such machines. If you want to show them how you have build the track ( the sequencing itself) it could be nice to be imported from their software sequencer.

seems that at least me, my friends and pedroagb wanna know about :p

and well i would also make a kind of dedicated Akai file format manipulator.

it s personal project for training my ( poor :( ) programming knowledge and skill.

thx for your replies

By mpc3000 Tue Dec 13, 2005 5:12 pm
"If you want to show them how you have build the track ( the sequencing itself) it could be nice to be imported from their software sequencer. "

What is the problem? Save as MID on the MPC1000 (look it's in the manual, which qualifies that feature to be in the unnoticed tricks thread). And the MPC1000 imports MID files. SEQ specific data gets lost (names, drum settings, etc), but if you are just 'showing' them, then it is not a problem.
User avatar

By soyo Tue Dec 13, 2005 7:28 pm
mpc3000 wrote:"If you want to show them how you have build the track ( the sequencing itself) it could be nice to be imported from their software sequencer. "

What is the problem? Save as MID on the MPC1000 (look it's in the manual, which qualifies that feature to be in the unnoticed tricks thread). And the MPC1000 imports MID files. SEQ specific data gets lost (names, drum settings, etc), but if you are just 'showing' them, then it is not a problem.


dont listen to him! (no diss) im totaly with you when making a program for editing .seq files

that would be ill!

beging with just trying to open a .seq file in wordpad and se what you can see. Talk to WaxAegis who made blue box
User avatar

By Antonym Tue Dec 13, 2005 7:58 pm
Well i would like to make a small utility to manipulate the .SEQ, in oder to be editable from a software sequencer.

hmm ppl would say its useless when you have a hardware sequencer. But some of your friends dont always have such machines. If you want to show them how you have build the track ( the sequencing itself) it could be nice to be imported from their software sequencer.


DO IT!!!!!!!! DOOOOO IT!! oh man i would laud you as a messiah, ESPECIALLY if you made the program capable of rendering each track into separate files....!!!!!!! no longer a need for tracking!

as i said before, i'd pay $100 for it
User avatar

By Lampdog Tue Dec 13, 2005 8:49 pm
"Well i would like to make a small utility to manipulate the .SEQ, in oder to be
editable from a software sequencer. "

Save the seq in mpc as a MIDI SEQ, import into software sequencer.

just like MPC3000 said.

By mpc3000 Tue Dec 13, 2005 8:58 pm
" ESPECIALLY if you made the program capable of rendering each track into separate files..."

You mean like spliting the midi data into separate tracks based on note numbers like mididrum:
http://www.gnmidi.com/gnfreeen.htm

I think most all the software sequencers have this built into it also.
User avatar

By chilom Wed Dec 14, 2005 11:24 am
thx mpc3000 and lampdog for the .mid trick

but as i said, it is for my own training, througt an interresting project (from my point of view of course). so i am looking around informations ;)


thx for all your replies.

By mpc3000 Wed Dec 14, 2005 2:43 pm
"it is for my own training, througt an interresting project"

That is a rather hefty project. It is not something I would want to do.

I took a look at it this morning before work:

x0000-x002F are the Seq headers (file length, name, tsig, 1st bar, last bar, bpm etc).
x0030 starts the tempo map
x0FD0 start the track data. There are 64 of these chunks at 48 bytes each and have the name, midi channel, program, status
x1C00 boundary marker?
x1C10 starts the data

Data:
4 bytes is # ticks
1 byte is track number
1 byte event (like midi x90 is note, and I suspect others also)
The next bytes depend on what type of event.
For note: Velocity, Duration, 7 bytes zero padding

By mpc3000 Wed Dec 14, 2005 5:17 pm
Let's reply to my own post. given the above it should be pretty easy to script something to split seq files:

Assuming a single track and only note data between 35 and 99

Read seq_header
Read tempo_map

for x = 1 to 64
Read track_info[x]
next

Read boundary1
Write new_file.seq_header
Write new_file.tempo_map
write new_file.template_track_info
write new_file.boundary1

do until end of file
read event
write new_file.event.tick
write new_file.(event.note - 34) /* track number */
write new_file.event.note
write new_file.event.velocity
write new_file.event.duration
write new_file.zero_pad
loop

Write new_file.boundary


All the work is reading the note number and subtracting 35 to use as new track number. Foe example note 35 would end up on track 1, note 42 would end up on track 8, and so on, based on index of 1.

The new_file.template_track_info would be something as simple as the tracks pre-named to note 35, note 36, note 37. One could feasibly cross reference the note number to the program and find the name of the sample, but that would introduce interdependencies between the SEQ, PGM and WAV files outside of the MPC that would get tricky to explain/manage/copy.
User avatar

By Lampdog Wed Dec 14, 2005 5:36 pm
WAY above my head but it's interesting..