midicat 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +12 -4
- data/README.md +13 -13
- data/bin/midicat +24 -9
- data/demo.gif +0 -0
- data/lib/midicat/version.rb +1 -1
- data/midicat.gemspec +1 -0
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a588663d682ab9715cacaef536a84be93fbbb62
|
4
|
+
data.tar.gz: c8eadbf1a476f0620211dee44178ddcc53ed28d4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: adec8660a07a63697853c21be22a5b7016d63c6e0e0c92aca2e4a28b6d76b0c817831d22daaa92eb30256edc39d2a0477a41eec89f30c67f3963a89f33d842ca
|
7
|
+
data.tar.gz: 23a2698750b6d79a3b13cc2549092390db4d7a7d3b20936e92c13c878a38cb10c7577577a5f73935dec715ff09f0eb5e31ebfe9131f9d59cb7cc151926be4c08
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
midicat (0.0.
|
4
|
+
midicat (0.0.2)
|
5
5
|
midi-nibbler
|
6
6
|
unimidi
|
7
7
|
|
@@ -10,16 +10,23 @@ GEM
|
|
10
10
|
specs:
|
11
11
|
alsa-rawmidi (0.3.1)
|
12
12
|
ffi (~> 1.0)
|
13
|
+
coderay (1.1.0)
|
13
14
|
ffi (1.9.6)
|
14
15
|
ffi-coremidi (0.3.7)
|
15
16
|
ffi (~> 1.9, >= 1.9.6)
|
16
|
-
|
17
|
+
method_source (0.8.2)
|
18
|
+
midi-jruby (0.1.5)
|
17
19
|
midi-message (0.4.5)
|
18
|
-
midi-nibbler (0.2.
|
19
|
-
midi-message (~> 0)
|
20
|
+
midi-nibbler (0.2.3)
|
21
|
+
midi-message (~> 0.4, >= 0.4.4)
|
20
22
|
midi-winmm (0.1.10)
|
21
23
|
ffi (>= 1.0)
|
24
|
+
pry (0.10.1)
|
25
|
+
coderay (~> 1.1.0)
|
26
|
+
method_source (~> 0.8.1)
|
27
|
+
slop (~> 3.4)
|
22
28
|
rake (10.4.2)
|
29
|
+
slop (3.6.0)
|
23
30
|
unimidi (0.4.6)
|
24
31
|
alsa-rawmidi (~> 0.3, >= 0.3.1)
|
25
32
|
ffi-coremidi (~> 0.3, >= 0.3.5)
|
@@ -32,4 +39,5 @@ PLATFORMS
|
|
32
39
|
DEPENDENCIES
|
33
40
|
bundler (~> 1.7)
|
34
41
|
midicat!
|
42
|
+
pry
|
35
43
|
rake (~> 10.0)
|
data/README.md
CHANGED
@@ -1,30 +1,30 @@
|
|
1
1
|
# Midicat
|
2
2
|
|
3
|
-
|
3
|
+
cat/tailf for MIDI input events
|
4
4
|
|
5
|
-
|
5
|
+
![demo screen](./demo.gif)
|
6
6
|
|
7
|
-
|
7
|
+
## Installation
|
8
8
|
|
9
|
-
|
10
|
-
gem 'midicat'
|
11
|
-
```
|
9
|
+
Install it yourself as:
|
12
10
|
|
13
|
-
|
11
|
+
$ gem install midicat
|
14
12
|
|
15
|
-
|
13
|
+
## Usage
|
16
14
|
|
17
|
-
|
15
|
+
Just execute
|
18
16
|
|
19
|
-
|
17
|
+
```
|
18
|
+
$ midicat
|
19
|
+
```
|
20
20
|
|
21
|
-
|
21
|
+
after installing it
|
22
22
|
|
23
|
-
|
23
|
+
note: you should have gem executables directory in `$PATH` (`gem env gempath` shows the path to append your `$PATH`)
|
24
24
|
|
25
25
|
## Contributing
|
26
26
|
|
27
|
-
1. Fork it ( https://github.com/
|
27
|
+
1. Fork it ( https://github.com/polamjag/midicat/fork )
|
28
28
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
29
29
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
30
30
|
4. Push to the branch (`git push origin my-new-feature`)
|
data/bin/midicat
CHANGED
@@ -3,6 +3,8 @@
|
|
3
3
|
require 'unimidi'
|
4
4
|
require 'nibbler'
|
5
5
|
|
6
|
+
require 'midicat'
|
7
|
+
|
6
8
|
devices = []
|
7
9
|
threads = []
|
8
10
|
data = []
|
@@ -16,35 +18,48 @@ def format_mes(message)
|
|
16
18
|
"Ch.#{message.channel}.#{message.name} ON @ #{message.velocity}"
|
17
19
|
elsif message.is_a? MIDIMessage::NoteOff
|
18
20
|
"Ch.#{message.channel}.#{message.name} OFF @ #{message.velocity}"
|
21
|
+
elsif message.is_a? MIDIMessage::SystemExclusive::Message
|
22
|
+
"SysEx. #{message.data.to_s}"
|
19
23
|
else
|
20
24
|
message
|
21
|
-
p message
|
22
25
|
end
|
23
26
|
end
|
24
27
|
|
28
|
+
puts <<_EOM_
|
29
|
+
/\\
|
30
|
+
) ( ') midicat #{Midicat::VERSION}
|
31
|
+
( / ) Ctrl-C to exit
|
32
|
+
\(__)|
|
33
|
+
|
34
|
+
_EOM_
|
35
|
+
|
25
36
|
UniMIDI::Input.all.each_with_index do |d, i|
|
26
|
-
|
37
|
+
puts d.pretty_name
|
27
38
|
devices[i] = d.open
|
28
39
|
ii = 0
|
29
40
|
threads << Thread.new do
|
30
41
|
loop do
|
31
42
|
data[i] = d.gets
|
32
43
|
data[i].each do |dd|
|
33
|
-
timestamps[i] = sprintf "%
|
34
|
-
ms = ni.parse
|
44
|
+
timestamps[i] = sprintf "%12.4f", dd[:timestamp]
|
45
|
+
ms = ni.parse(*dd[:data])
|
35
46
|
if ms.is_a? Array
|
36
47
|
ms.each do |mss|
|
37
|
-
|
48
|
+
puts "#{timestamps[i]} #{d.name} #{format_mes mss}"
|
38
49
|
end
|
39
50
|
else
|
40
|
-
|
51
|
+
puts "#{timestamps[i]} #{d.name} #{format_mes ms}"
|
41
52
|
end
|
42
53
|
end
|
43
54
|
end
|
44
55
|
end
|
45
56
|
end
|
46
57
|
|
47
|
-
threads.
|
48
|
-
t
|
58
|
+
if threads.size != 0
|
59
|
+
threads.each do |t|
|
60
|
+
t.join
|
61
|
+
end
|
62
|
+
else
|
63
|
+
puts "no MIDI devices found."
|
64
|
+
puts "aborting"
|
49
65
|
end
|
50
|
-
|
data/demo.gif
ADDED
Binary file
|
data/lib/midicat/version.rb
CHANGED
data/midicat.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: midicat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- polamjag
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-02-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: pry
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: unimidi
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -81,6 +95,7 @@ files:
|
|
81
95
|
- README.md
|
82
96
|
- Rakefile
|
83
97
|
- bin/midicat
|
98
|
+
- demo.gif
|
84
99
|
- lib/midicat.rb
|
85
100
|
- lib/midicat/version.rb
|
86
101
|
- midicat.gemspec
|