Play midi files using mci

Share your advanced PureBasic knowledge/code with the community.
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Play midi files using mci

Post by BackupUser »

Code updated For 5.20+

Restored from previous forum. Originally posted by BalrogSoft.

Hi to all
I found a little tip on inet to play midi files using mci, im was searching how to play midi files or other formats without using any third library, and without any lincense for my 3d engine, and i found it:

Code: Select all

Procedure LoadMidi(Nb,file.s)
  i=mciSendString_("open "+file.s+" type sequencer alias mid"+Str(Nb),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure PlayMidi(Nb)
  i=mciSendString_("play mid"+Str(Nb),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure PlayMidiFrom(Nb,Start,Endz)
  i=mciSendString_("play mid"+Str(Nb)+" from "+Str(Start)+" to "+Str(Endz),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure PauseMidi(Nb)
  i=mciSendString_("pause mid"+Str(Nb),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure ResumeMidi(Nb)
  i=mciSendString_("resume mid"+Str(Nb),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure StopMidi(Nb)
  i=mciSendString_("stop mid"+Str(Nb),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure FreeMidi(Nb)
  i=mciSendString_("close mid"+Str(Nb),0,0,0)
  ProcedureReturn i
EndProcedure
Procedure SetMidiTempo(Nb,Tempo)
  i=mciSendString_("set mid"+Str(Nb)+" tempo "+Str(Tempo),0,0,0)
  ProcedureReturn i
EndProcedure
Bye...

Balrog Soft
Amiga and PC Coder
http://www.balrogsoftware.com
[url]mailto:balrog@balrogsoftware.com[/url]
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Post by BackupUser »

Restored from previous forum. Originally posted by plouf.

Very nice :)
i use Movie Library to play midi's support most comamnd :)
but this has some more :)


Christos
Post Reply