Browse Source

Updated README with usage instructions

Douglas Heriot 11 years ago
parent
commit
44aabf6234

+ 101 - 0
DHSendMIDI.xcodeproj/xcshareddata/xcschemes/DHSendMIDI Release.xcscheme

@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "0450"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "A513A69216AF2F47000DF615"
+               BuildableName = "DHSendMIDI"
+               BlueprintName = "DHSendMIDI"
+               ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Release">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "A513A69216AF2F47000DF615"
+            BuildableName = "DHSendMIDI"
+            BlueprintName = "DHSendMIDI"
+            ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      allowLocationSimulation = "YES">
+      <BuildableProductRunnable>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "A513A69216AF2F47000DF615"
+            BuildableName = "DHSendMIDI"
+            BlueprintName = "DHSendMIDI"
+            ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+         <CommandLineArgument
+            argument = "--pc"
+            isEnabled = "YES">
+         </CommandLineArgument>
+         <CommandLineArgument
+            argument = "-v"
+            isEnabled = "YES">
+         </CommandLineArgument>
+         <CommandLineArgument
+            argument = "234"
+            isEnabled = "YES">
+         </CommandLineArgument>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "A513A69216AF2F47000DF615"
+            BuildableName = "DHSendMIDI"
+            BlueprintName = "DHSendMIDI"
+            ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Release">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      customArchiveName = "DHSendMIDI"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

+ 100 - 0
DHSendMIDI.xcodeproj/xcshareddata/xcschemes/DHSendMIDI.xcscheme

@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "0450"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "A513A69216AF2F47000DF615"
+               BuildableName = "DHSendMIDI"
+               BlueprintName = "DHSendMIDI"
+               ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Debug">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "A513A69216AF2F47000DF615"
+            BuildableName = "DHSendMIDI"
+            BlueprintName = "DHSendMIDI"
+            ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Debug"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      allowLocationSimulation = "YES">
+      <BuildableProductRunnable>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "A513A69216AF2F47000DF615"
+            BuildableName = "DHSendMIDI"
+            BlueprintName = "DHSendMIDI"
+            ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+         <CommandLineArgument
+            argument = "--pc"
+            isEnabled = "YES">
+         </CommandLineArgument>
+         <CommandLineArgument
+            argument = "-v"
+            isEnabled = "YES">
+         </CommandLineArgument>
+         <CommandLineArgument
+            argument = "234"
+            isEnabled = "YES">
+         </CommandLineArgument>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "A513A69216AF2F47000DF615"
+            BuildableName = "DHSendMIDI"
+            BlueprintName = "DHSendMIDI"
+            ReferencedContainer = "container:DHSendMIDI.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

+ 64 - 4
README.md

@@ -1,14 +1,73 @@
 # DHSendMIDI
 
-DHSendMIDI is a simple tool for sending MIDI messages from a command line
+DHSendMIDI is a simple tool for sending MIDI messages from an OS X command line.
 
-## Sounds awesome! Downloads?
+There’s no complicated config files to set up or anything – it just simple sends MIDI messages for you!
+
+Note that sometimes there could be a little delay as OS X wakes up its internal MIDI Server on each execution. It seems that if you’ve got other apps using MIDI also open, it can do this so quickly you probably won’t notice it.
+
+## Sounds awesome!
 
 There’s no prebuilt downloads just yet (I’ll get to that soon when it’s ready for general use)
 
+## Usage
+
+    DHSendMIDI [options] byte1 [byte2]
+
+### Voice Messages
+
+You can use one of the self-explanatory options to set the kind of message you’d like to send: `--note-on`, `--note-off`, `--aftertouch`, `--control-change`, `--program-change`, `--channel-pressure`, `--pitch-wheel`.
+
+Some examples:
+
+    DHSendMIDI --control-change 7 9
+
+    DHSendMIDI --note-on 54 127
+    
+    DHSendMIDI --note-off 54 0
+
+    DHSendMIDI --program-change 2
+
+Note that program change and channel pressure messages only have one data byte to send.
+
+    DHSendMIDI --pitch-wheel 0 64
+    
+Note pitch bend messages are 2 bytes, making a 14-bit value (yes, 14 bits – MIDI uses 7-bit values, and the 8th bit to represent control bytes). It’s *little endian*, so values `0 64` places the wheel in the centre.
+
+### Channel
+
+Set the channel (a number 1-16) with `--channel` or `-c`
+
+    DHSendMIDI --channel 8 --cc 0 127
+
+    
+(Sends control change message setting controller `0` to value `127`, on channel `8`)
+
+### Destination Device
+
+You can specify a specific device to send to. When this option isn’t specified, messages are sent to **all** devices.
+
+For example, to send to IAC Driver, Bus 1:
+
+    DHSendMIDI --destination "Bus 1" --note-on 52 113
+
+
+### Other Options
+
+* `--verbose`, `-v` – Prints message being sent
+* `--version`, `-V` – Displays version
+	
+
+### More Help
+
+For slightly more detailed options (and short versions), see
+
+    DHSendMIDI --help
+
+
 ## Getting the Code
 
-Note it uses SnoizeMIDI from a submodule, so clone recursively:
+Note it includes SnoizeMIDI as a submodule, so clone recursively:
 
     git clone --recursive git://github.com/DouglasHeriot/DHSendMIDI.git
 
@@ -16,7 +75,8 @@ Note it uses SnoizeMIDI from a submodule, so clone recursively:
 
 DHSendMIDI has a BSD-style license. See the file LICENSE.md
 
-Also includes SnoizeMIDI
+Also includes SnoizeMIDI:
+
 
 ### SnoizeMIDI