Version 4.3.1

This commit is contained in:
Gary Scavone
2009-03-24 23:02:17 -04:00
committed by Stephen Sinclair
parent 27d9b79dc7
commit d199342e86
105 changed files with 3455 additions and 12232 deletions

View File

@@ -1,3 +1,4 @@
### Do not edit -- Generated by 'configure --with-whatever' from Makefile.in
### STK demo Makefile - for various flavors of unix
PROGRAMS = demo
@@ -33,14 +34,14 @@ CC = @CXX@
DEFS = @byte_order@
DEFS += @debug@
CFLAGS = @cflags@
CFLAGS += @warn@ -I$(INCLUDE)
CFLAGS += @warn@ -I$(INCLUDE) -I../../src/include
LIBRARY = @LIBS@
LIBRARY += @frameworks@
REALTIME = @realtime@
ifeq ($(REALTIME),yes)
PROGRAMS += demo
OBJECTS += RtMidi.o RtAudio.o Thread.o Mutex.o Socket.o TcpServer.o
OBJECTS += RtMidi.o RtAudio.o Thread.o Mutex.o Socket.o TcpServer.o @objects@
DEFS += @audio_apis@
endif
@@ -53,25 +54,28 @@ DEFS += -DRAWWAVE_PATH=\"$(RAWWAVES)\"
%.o : $(SRC_PATH)/%.cpp
$(CC) $(CFLAGS) $(DEFS) -c $(<) -o $(OBJECT_PATH)/$@
%.o : ../../src/include/%.cpp
$(CC) $(CFLAGS) $(DEFS) -c $(<) -o $(OBJECT_PATH)/$@
all : $(PROGRAMS)
demo: demo.cpp $(OBJECTS)
$(CC) $(CFLAGS) $(DEFS) -o demo demo.cpp $(OBJECT_PATH)/*.o $(LIBRARY)
libdemo: demo.cpp
$(CC) $(CFLAGS) $(DEFS) -o demo utilities.cpp demo.cpp -L../../src $(LIBRARY) -lstk
$(CC) $(CFLAGS) $(DEFS) -o demo utilities.cpp demo.cpp -L../../src -lstk $(LIBRARY)
Md2Skini: Md2Skini.cpp Stk.o RtMidi.o
$(CC) $(CFLAGS) $(DEFS) -o Md2Skini Md2Skini.cpp $(OBJECT_PATH)/Stk.o $(OBJECT_PATH)/RtMidi.o $(LIBRARY)
libMd2Skini: Md2Skini.cpp
$(CC) $(CFLAGS) $(DEFS) -o Md2Skini Md2Skini.cpp -L../../src $(LIBRARY) -lstk
$(CC) $(CFLAGS) $(DEFS) -o Md2Skini Md2Skini.cpp -L../../src -lstk $(LIBRARY)
$(OBJECTS) : Stk.h
clean :
-rm $(OBJECT_PATH)/*.o
-rm $(PROGRAMS)
-rm $(PROGRAMS) *.exe
strip :
strip $(PROGRAMS)

0
projects/demo/Md2Skini.dsp Normal file → Executable file
View File

View File

@@ -1,240 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="Md2Skini"
SccProjectName=""
SccLocalPath="">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="."
IntermediateDirectory=".\debug"
ConfigurationType="1"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include"
PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;__WINDOWS_DS__;__WINDOWS_MM__"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="2"
PrecompiledHeaderFile=".\debug/Md2Skini.pch"
AssemblerListingLocation=".\debug/"
ObjectFile=".\debug/"
ProgramDataBaseFileName=".\debug/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
DebugInformationFormat="4"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib winmm.lib Wsock32.lib"
OutputFile="./Md2Skini.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="./Md2Skini.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
TypeLibraryName="./Md2Skini.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="."
IntermediateDirectory=".\release"
ConfigurationType="1"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="FALSE"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include"
PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;__WINDOWS_DS__;__WINDOWS_MM__"
RuntimeLibrary="0"
UsePrecompiledHeader="2"
PrecompiledHeaderFile=".\release/Md2Skini.pch"
AssemblerListingLocation=".\release/"
ObjectFile=".\release/"
ProgramDataBaseFileName=".\release/"
WarningLevel="3"
SuppressStartupBanner="TRUE"
CompileAs="0"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib winmm.lib Wsock32.lib"
OutputFile="./Md2Skini.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
ProgramDatabaseFile="./Md2Skini.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"
TypeLibraryName="./Md2Skini.tlb"
HeaderFileName=""/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
<File
RelativePath="Md2Skini.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\RtMidi.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\SKINI.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\src\Stk.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl">
<File
RelativePath="..\..\include\RtMidi.h">
</File>
<File
RelativePath="..\..\include\SKINI.h">
</File>
<File
RelativePath="..\..\include\Stk.h">
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -20,9 +20,9 @@
#include "utilities.h"
#include <signal.h>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <cmath>
using std::min;
bool done;
@@ -66,6 +66,10 @@ void processMessage( TickData* data )
register StkFloat value1 = data->message.floatValues[0];
register StkFloat value2 = data->message.floatValues[1];
// If only one instrument, allow messages from all channels to control it.
int channel = 1;
if ( data->nVoices > 1 ) channel = data->message.channel;
switch( data->message.type ) {
case __SK_Exit_:
@@ -75,13 +79,13 @@ void processMessage( TickData* data )
case __SK_NoteOn_:
if ( value2 == 0.0 ) // velocity is zero ... really a NoteOff
data->voicer->noteOff( value1, 64.0, data->message.channel );
data->voicer->noteOff( value1, 64.0, channel );
else // a NoteOn
data->voicer->noteOn( value1, value2, data->message.channel );
data->voicer->noteOn( value1, value2, channel );
break;
case __SK_NoteOff_:
data->voicer->noteOff( value1, value2, data->message.channel );
data->voicer->noteOff( value1, value2, channel );
break;
case __SK_ControlChange_:
@@ -90,31 +94,34 @@ void processMessage( TickData* data )
else if (value1 == 7.0)
data->volume = value2 * ONE_OVER_128;
else if (value1 == 49.0)
data->voicer->setFrequency( value2, data->message.channel );
data->voicer->setFrequency( value2, channel );
else if (value1 == 50.0)
data->voicer->controlChange( 128, value2, data->message.channel );
data->voicer->controlChange( 128, value2, channel );
else if (value1 == 51.0)
data->frequency = data->message.intValues[1];
else if (value1 == 52.0) {
data->frequency += ( data->message.intValues[1] << 7 );
// Convert to a fractional MIDI note value
StkFloat note = 12.0 * log( data->frequency / 220.0 ) / log( 2.0 ) + 57.0;
data->voicer->setFrequency( note, data->message.channel );
data->voicer->setFrequency( note, channel );
}
else
data->voicer->controlChange( (int) value1, value2, data->message.channel );
data->voicer->controlChange( (int) value1, value2, channel );
break;
case __SK_AfterTouch_:
data->voicer->controlChange( 128, value1, data->message.channel );
data->voicer->controlChange( 128, value1, channel );
break;
case __SK_PitchChange_:
data->voicer->setFrequency( value1, data->message.channel );
data->voicer->setFrequency( value1, channel );
break;
case __SK_PitchBend_:
data->voicer->pitchBend( value1, data->message.channel );
short temp;
temp = data->message.intValues[1] << 7;
temp += data->message.intValues[0];
data->voicer->pitchBend( (StkFloat) temp, channel );
break;
case __SK_Volume_:
@@ -134,7 +141,7 @@ void processMessage( TickData* data )
data->currentVoice = voiceByNumber( (int)value1, &data->instrument[i] );
if ( data->currentVoice < 0 )
data->currentVoice = voiceByNumber( 0, &data->instrument[i] );
data->voicer->addInstrument( data->instrument[i], data->message.channel );
data->voicer->addInstrument( data->instrument[i], channel );
data->settling = false;
}
@@ -155,7 +162,7 @@ void processMessage( TickData* data )
// control updates. If doing realtime audio output, it will be called
// automatically when the system needs a new buffer of audio samples.
int tick( void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames,
double streamTime, RtAudioStreamStatus status, void *dataPointer )
double streamTime, RtAudioStreamStatus status, void *dataPointer )
{
TickData *data = (TickData *) dataPointer;
register StkFloat sample, *samples = (StkFloat *) outputBuffer;

8
projects/demo/demo.dsp Normal file → Executable file
View File

@@ -307,10 +307,6 @@ SOURCE=..\..\src\RtAudio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\src\RtDuplex.cpp
# End Source File
# Begin Source File
SOURCE=..\..\src\RtMidi.cpp
# End Source File
# Begin Source File
@@ -651,10 +647,6 @@ SOURCE=..\..\include\RtAudio.h
# End Source File
# Begin Source File
SOURCE=..\..\include\RtDuplex.h
# End Source File
# Begin Source File
SOURCE=..\..\include\RtMidi.h
# End Source File
# Begin Source File

0
projects/demo/demo.dsw Normal file → Executable file
View File

File diff suppressed because it is too large Load Diff

View File

@@ -5,15 +5,14 @@ Rhodey doogie.ski
Mandolin duelingb.ski
Bowed fiddle.ski
PercFlut misacrio.ski
AgogoBel morazbel.ski
ModalBar morazbel.ski
Brass pictures.ski
Wurley nriderson.ski
Wurley riderson.ski
Flute simplgft.ski
Clarinet simplgft.ski
Marimba spain.ski
Vibraphn spain.ski
HeavyMtl streetsf.ski
Moog1 thecars.ski
ModalBar spain.ski
HevyMetl streetsf.ski
Moog thecars.ski
TubeBell tubebell.ski
FMVoices lacrymos.ski, vocaliz.ski

View File

@@ -1,221 +1,221 @@
/* Howdy!! ToolKit96cpp SKINI File, Perry Cook */
NoteOn 0.000327 2 68 64
NoteOn 0.011439 2 72 60
NoteOn 0.100661 2 69 58
NoteOff 0.022910 2 68 0
NoteOff 0.087179 2 69 0
NoteOff 0.002768 2 72 0
NoteOn 0.146276 2 74 60
NoteOn 0.007877 2 70 73
NoteOff 0.065823 2 74 0
NoteOff 0.034091 2 70 0
NoteOn 0.071562 2 65 42
NoteOff 0.095505 2 65 0
NoteOn 0.117222 2 72 36
NoteOn 0.003568 2 75 57
NoteOff 0.867934 2 72 0
NoteOff 0.016747 2 75 0
NoteOn 0.001292 2 70 66
NoteOn 0.016806 2 74 41
NoteOff 0.903721 2 70 0
NoteOn 0.002269 2 71 60
NoteOff 0.002452 2 74 0
NoteOff 0.024367 2 71 0
NoteOn 0.573769 2 71 71
NoteOn 0.071125 2 72 47
NoteOff 0.017603 2 71 0
NoteOn 0.099531 2 77 63
NoteOff 0.005133 2 72 0
NoteOn 0.002825 2 75 57
NoteOff 0.051047 2 77 0
NoteOn 0.062443 2 72 42
NoteOff 0.003421 2 75 0
NoteOn 0.004190 2 73 22
NoteOff 0.032476 2 73 0
NoteOff 0.003357 2 72 0
NoteOn 0.003412 2 71 51
NoteOff 0.082169 2 71 0
NoteOn 0.030527 2 70 64
NoteOff 0.068936 2 70 0
NoteOn 0.002836 2 68 63
NoteOff 0.069395 2 68 0
NoteOn 0.024967 2 65 52
NoteOff 0.083696 2 65 0
NoteOn 0.027784 2 63 69
NoteOff 0.102489 2 63 0
NoteOn 0.048174 2 60 61
NoteOff 0.094914 2 60 0
NoteOn 0.076034 2 58 62
NoteOff 0.080772 2 58 0
NoteOn 0.107826 2 56 73
NoteOff 0.114325 2 56 0
NoteOn 0.159665 2 53 71
NoteOff 0.094385 2 53 0
NoteOn 0.218823 2 56 82
NoteOff 0.396073 2 56 0
NoteOn 0.016601 2 53 79
NoteOff 0.590675 2 53 0
NoteOn 0.013945 2 41 61
NoteOn 0.003797 2 53 48
NoteOn 0.749734 2 57 69
NoteOn 0.006420 2 63 69
NoteOff 0.004025 2 53 0
NoteOn 0.001033 2 59 71
NoteOff 0.183718 2 59 0
ControlChange 0.981560 2 1 1
ControlChange 0.014051 2 1 2
ControlChange 0.018312 2 1 3
ControlChange 0.013991 2 1 4
ControlChange 0.014672 2 1 5
ControlChange 0.008917 2 1 6
ControlChange 0.009676 2 1 7
ControlChange 0.009401 2 1 8
ControlChange 0.014007 2 1 9
ControlChange 0.009716 2 1 10
ControlChange 0.009322 2 1 11
ControlChange 0.009533 2 1 12
ControlChange 0.009596 2 1 13
ControlChange 0.009475 2 1 14
ControlChange 0.014006 2 1 15
ControlChange 0.009540 2 1 16
ControlChange 0.010279 2 1 17
ControlChange 0.013663 2 1 18
ControlChange 0.009675 2 1 19
ControlChange 0.009790 2 1 20
ControlChange 0.014027 2 1 21
ControlChange 0.013973 2 1 22
ControlChange 0.009544 2 1 23
ControlChange 0.014007 2 1 24
ControlChange 0.010353 2 1 25
ControlChange 0.010221 2 1 26
ControlChange 0.017407 2 1 27
ControlChange 0.010088 2 1 28
ControlChange 0.009214 2 1 29
ControlChange 0.009312 2 1 31
ControlChange 0.014216 2 1 32
ControlChange 0.004844 2 1 33
ControlChange 0.009540 2 1 34
ControlChange 0.005039 2 1 35
ControlChange 0.009520 2 1 36
ControlChange 0.010018 2 1 37
ControlChange 0.004663 2 1 38
ControlChange 0.009539 2 1 39
ControlChange 0.009540 2 1 41
ControlChange 0.005017 2 1 42
ControlChange 0.009504 2 1 43
ControlChange 0.005097 2 1 44
ControlChange 0.009941 2 1 45
ControlChange 0.004610 2 1 46
ControlChange 0.005284 2 1 47
ControlChange 0.004821 2 1 48
ControlChange 0.005134 2 1 49
ControlChange 0.009580 2 1 51
ControlChange 0.009561 2 1 52
ControlChange 0.019091 2 1 54
ControlChange 0.001107 2 1 55
ControlChange 0.003756 2 1 56
ControlChange 0.009684 2 1 57
ControlChange 0.004888 2 1 58
ControlChange 0.014042 2 1 59
ControlChange 0.009508 2 1 60
ControlChange 0.009528 2 1 61
ControlChange 0.014029 2 1 62
ControlChange 0.009753 2 1 63
ControlChange 0.018303 2 1 64
ControlChange 0.014210 2 1 65
ControlChange 0.027270 2 1 66
ControlChange 0.027450 2 1 67
ControlChange 0.072463 2 1 68
ControlChange 0.040774 2 1 69
ControlChange 0.022966 2 1 70
ControlChange 0.018511 2 1 71
ControlChange 0.023463 2 1 72
ControlChange 0.013521 2 1 73
ControlChange 0.014483 2 1 74
ControlChange 0.013854 2 1 75
ControlChange 0.009555 2 1 76
ControlChange 0.018674 2 1 77
ControlChange 0.009540 2 1 78
ControlChange 0.009616 2 1 79
ControlChange 0.013994 2 1 80
ControlChange 0.014260 2 1 81
ControlChange 0.018448 2 1 82
ControlChange 0.032114 2 1 83
ControlChange 0.058711 2 1 84
ControlChange 0.049895 2 1 85
ControlChange 0.032104 2 1 86
ControlChange 0.036434 2 1 87
ControlChange 0.022873 2 1 88
ControlChange 0.068096 2 1 89
ControlChange 0.112544 2 1 90
ControlChange 0.018361 2 1 91
ControlChange 0.018528 2 1 92
ControlChange 0.018461 2 1 93
ControlChange 0.014041 2 1 94
ControlChange 0.037010 2 1 95
ControlChange 0.008956 2 1 96
ControlChange 0.099445 2 1 95
ControlChange 0.013834 2 1 94
ControlChange 0.009499 2 1 93
ControlChange 0.010104 2 1 92
ControlChange 0.005027 2 1 91
ControlChange 0.010180 2 1 90
ControlChange 0.008871 2 1 89
ControlChange 0.009510 2 1 88
ControlChange 0.005047 2 1 87
ControlChange 0.014061 2 1 86
ControlChange 0.009903 2 1 85
ControlChange 0.009119 2 1 84
ControlChange 0.009573 2 1 83
ControlChange 0.009491 2 1 82
ControlChange 0.005078 2 1 81
ControlChange 0.005002 2 1 80
ControlChange 0.009607 2 1 78
ControlChange 0.005082 2 1 77
ControlChange 0.009826 2 1 76
ControlChange 0.004771 2 1 75
ControlChange 0.005025 2 1 74
ControlChange 0.005486 2 1 72
ControlChange 0.004613 2 1 71
ControlChange 0.005046 2 1 70
ControlChange 0.005514 2 1 69
ControlChange 0.004571 2 1 67
ControlChange 0.005025 2 1 66
ControlChange 0.005039 2 1 65
ControlChange 0.005033 2 1 63
ControlChange 0.005073 2 1 62
ControlChange 0.005017 2 1 60
ControlChange 0.005073 2 1 59
ControlChange 0.005033 2 1 57
ControlChange 0.005061 2 1 56
ControlChange 0.005057 2 1 54
ControlChange 0.005024 2 1 52
ControlChange 0.005068 2 1 51
ControlChange 0.004988 2 1 49
ControlChange 0.005074 2 1 47
ControlChange 0.005035 2 1 45
ControlChange 0.005221 2 1 44
ControlChange 0.005234 2 1 42
ControlChange 0.005196 2 1 40
ControlChange 0.005115 2 1 38
ControlChange 0.005286 2 1 36
ControlChange 0.005148 2 1 34
ControlChange 0.005234 2 1 32
ControlChange 0.005301 2 1 30
ControlChange 0.005069 2 1 28
ControlChange 0.005155 2 1 26
ControlChange 0.008498 2 1 24
ControlChange 0.002918 2 1 21
ControlChange 0.004145 2 1 20
ControlChange 0.005652 2 1 17
ControlChange 0.004790 2 1 15
ControlChange 0.005180 2 1 13
ControlChange 0.005223 2 1 10
ControlChange 0.005177 2 1 8
ControlChange 0.005270 2 1 6
ControlChange 0.005135 2 1 4
ControlChange 0.005196 2 1 2
ControlChange 0.005197 2 1 0
NoteOff 0.354573 2 63 0
NoteOff 0.014193 2 57 0
NoteOff 0.008219 2 41 0
NoteOn 0.000327 1 68 64
NoteOn 0.011439 1 72 60
NoteOn 0.100661 1 69 58
NoteOff 0.022910 1 68 0
NoteOff 0.087179 1 69 0
NoteOff 0.002768 1 72 0
NoteOn 0.146276 1 74 60
NoteOn 0.007877 1 70 73
NoteOff 0.065823 1 74 0
NoteOff 0.034091 1 70 0
NoteOn 0.071562 1 65 42
NoteOff 0.095505 1 65 0
NoteOn 0.117222 1 72 36
NoteOn 0.003568 1 75 57
NoteOff 0.867934 1 72 0
NoteOff 0.016747 1 75 0
NoteOn 0.001292 1 70 66
NoteOn 0.016806 1 74 41
NoteOff 0.903721 1 70 0
NoteOn 0.002269 1 71 60
NoteOff 0.002452 1 74 0
NoteOff 0.024367 1 71 0
NoteOn 0.573769 1 71 71
NoteOn 0.071125 1 72 47
NoteOff 0.017603 1 71 0
NoteOn 0.099531 1 77 63
NoteOff 0.005133 1 72 0
NoteOn 0.002825 1 75 57
NoteOff 0.051047 1 77 0
NoteOn 0.062443 1 72 42
NoteOff 0.003421 1 75 0
NoteOn 0.004190 1 73 22
NoteOff 0.032476 1 73 0
NoteOff 0.003357 1 72 0
NoteOn 0.003412 1 71 51
NoteOff 0.082169 1 71 0
NoteOn 0.030527 1 70 64
NoteOff 0.068936 1 70 0
NoteOn 0.002836 1 68 63
NoteOff 0.069395 1 68 0
NoteOn 0.024967 1 65 52
NoteOff 0.083696 1 65 0
NoteOn 0.027784 1 63 69
NoteOff 0.102489 1 63 0
NoteOn 0.048174 1 60 61
NoteOff 0.094914 1 60 0
NoteOn 0.076034 1 58 62
NoteOff 0.080772 1 58 0
NoteOn 0.107826 1 56 73
NoteOff 0.114325 1 56 0
NoteOn 0.159665 1 53 71
NoteOff 0.094385 1 53 0
NoteOn 0.218823 1 56 82
NoteOff 0.396073 1 56 0
NoteOn 0.016601 1 53 79
NoteOff 0.590675 1 53 0
NoteOn 0.013945 1 41 61
NoteOn 0.003797 1 53 48
NoteOn 0.749734 1 57 69
NoteOn 0.006420 1 63 69
NoteOff 0.004025 1 53 0
NoteOn 0.001033 1 59 71
NoteOff 0.183718 1 59 0
ControlChange 0.981560 1 1 1
ControlChange 0.014051 1 1 2
ControlChange 0.018312 1 1 3
ControlChange 0.013991 1 1 4
ControlChange 0.014672 1 1 5
ControlChange 0.008917 1 1 6
ControlChange 0.009676 1 1 7
ControlChange 0.009401 1 1 8
ControlChange 0.014007 1 1 9
ControlChange 0.009716 1 1 10
ControlChange 0.009322 1 1 11
ControlChange 0.009533 1 1 12
ControlChange 0.009596 1 1 13
ControlChange 0.009475 1 1 14
ControlChange 0.014006 1 1 15
ControlChange 0.009540 1 1 16
ControlChange 0.010279 1 1 17
ControlChange 0.013663 1 1 18
ControlChange 0.009675 1 1 19
ControlChange 0.009790 1 1 20
ControlChange 0.014027 1 1 21
ControlChange 0.013973 1 1 22
ControlChange 0.009544 1 1 23
ControlChange 0.014007 1 1 24
ControlChange 0.010353 1 1 25
ControlChange 0.010221 1 1 26
ControlChange 0.017407 1 1 27
ControlChange 0.010088 1 1 28
ControlChange 0.009214 1 1 29
ControlChange 0.009312 1 1 31
ControlChange 0.014216 1 1 32
ControlChange 0.004844 1 1 33
ControlChange 0.009540 1 1 34
ControlChange 0.005039 1 1 35
ControlChange 0.009520 1 1 36
ControlChange 0.010018 1 1 37
ControlChange 0.004663 1 1 38
ControlChange 0.009539 1 1 39
ControlChange 0.009540 1 1 41
ControlChange 0.005017 1 1 42
ControlChange 0.009504 1 1 43
ControlChange 0.005097 1 1 44
ControlChange 0.009941 1 1 45
ControlChange 0.004610 1 1 46
ControlChange 0.005284 1 1 47
ControlChange 0.004821 1 1 48
ControlChange 0.005134 1 1 49
ControlChange 0.009580 1 1 51
ControlChange 0.009561 1 1 52
ControlChange 0.019091 1 1 54
ControlChange 0.001107 1 1 55
ControlChange 0.003756 1 1 56
ControlChange 0.009684 1 1 57
ControlChange 0.004888 1 1 58
ControlChange 0.014042 1 1 59
ControlChange 0.009508 1 1 60
ControlChange 0.009528 1 1 61
ControlChange 0.014029 1 1 62
ControlChange 0.009753 1 1 63
ControlChange 0.018303 1 1 64
ControlChange 0.014210 1 1 65
ControlChange 0.027270 1 1 66
ControlChange 0.027450 1 1 67
ControlChange 0.072463 1 1 68
ControlChange 0.040774 1 1 69
ControlChange 0.022966 1 1 70
ControlChange 0.018511 1 1 71
ControlChange 0.023463 1 1 72
ControlChange 0.013521 1 1 73
ControlChange 0.014483 1 1 74
ControlChange 0.013854 1 1 75
ControlChange 0.009555 1 1 76
ControlChange 0.018674 1 1 77
ControlChange 0.009540 1 1 78
ControlChange 0.009616 1 1 79
ControlChange 0.013994 1 1 80
ControlChange 0.014260 1 1 81
ControlChange 0.018448 1 1 82
ControlChange 0.032114 1 1 83
ControlChange 0.058711 1 1 84
ControlChange 0.049895 1 1 85
ControlChange 0.032104 1 1 86
ControlChange 0.036434 1 1 87
ControlChange 0.022873 1 1 88
ControlChange 0.068096 1 1 89
ControlChange 0.112544 1 1 90
ControlChange 0.018361 1 1 91
ControlChange 0.018528 1 1 92
ControlChange 0.018461 1 1 93
ControlChange 0.014041 1 1 94
ControlChange 0.037010 1 1 95
ControlChange 0.008956 1 1 96
ControlChange 0.099445 1 1 95
ControlChange 0.013834 1 1 94
ControlChange 0.009499 1 1 93
ControlChange 0.010104 1 1 92
ControlChange 0.005027 1 1 91
ControlChange 0.010180 1 1 90
ControlChange 0.008871 1 1 89
ControlChange 0.009510 1 1 88
ControlChange 0.005047 1 1 87
ControlChange 0.014061 1 1 86
ControlChange 0.009903 1 1 85
ControlChange 0.009119 1 1 84
ControlChange 0.009573 1 1 83
ControlChange 0.009491 1 1 82
ControlChange 0.005078 1 1 81
ControlChange 0.005002 1 1 80
ControlChange 0.009607 1 1 78
ControlChange 0.005082 1 1 77
ControlChange 0.009826 1 1 76
ControlChange 0.004771 1 1 75
ControlChange 0.005025 1 1 74
ControlChange 0.005486 1 1 72
ControlChange 0.004613 1 1 71
ControlChange 0.005046 1 1 70
ControlChange 0.005514 1 1 69
ControlChange 0.004571 1 1 67
ControlChange 0.005025 1 1 66
ControlChange 0.005039 1 1 65
ControlChange 0.005033 1 1 63
ControlChange 0.005073 1 1 62
ControlChange 0.005017 1 1 60
ControlChange 0.005073 1 1 59
ControlChange 0.005033 1 1 57
ControlChange 0.005061 1 1 56
ControlChange 0.005057 1 1 54
ControlChange 0.005024 1 1 52
ControlChange 0.005068 1 1 51
ControlChange 0.004988 1 1 49
ControlChange 0.005074 1 1 47
ControlChange 0.005035 1 1 45
ControlChange 0.005221 1 1 44
ControlChange 0.005234 1 1 42
ControlChange 0.005196 1 1 40
ControlChange 0.005115 1 1 38
ControlChange 0.005286 1 1 36
ControlChange 0.005148 1 1 34
ControlChange 0.005234 1 1 32
ControlChange 0.005301 1 1 30
ControlChange 0.005069 1 1 28
ControlChange 0.005155 1 1 26
ControlChange 0.008498 1 1 24
ControlChange 0.002918 1 1 21
ControlChange 0.004145 1 1 20
ControlChange 0.005652 1 1 17
ControlChange 0.004790 1 1 15
ControlChange 0.005180 1 1 13
ControlChange 0.005223 1 1 10
ControlChange 0.005177 1 1 8
ControlChange 0.005270 1 1 6
ControlChange 0.005135 1 1 4
ControlChange 0.005196 1 1 2
ControlChange 0.005197 1 1 0
NoteOff 0.354573 1 63 0
NoteOff 0.014193 1 57 0
NoteOff 0.008219 1 41 0