beats 1.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.markdown +22 -42
  4. data/bin/beats +6 -7
  5. data/lib/beats.rb +2 -1
  6. data/lib/beats/audioengine.rb +13 -13
  7. data/lib/beats/beatsrunner.rb +7 -8
  8. data/lib/beats/kit.rb +12 -156
  9. data/lib/beats/kit_builder.rb +74 -0
  10. data/lib/beats/pattern.rb +2 -22
  11. data/lib/beats/song.rb +5 -55
  12. data/lib/beats/songoptimizer.rb +3 -3
  13. data/lib/beats/songparser.rb +25 -46
  14. data/lib/beats/track.rb +20 -31
  15. data/lib/beats/transforms/song_swinger.rb +2 -4
  16. data/lib/wavefile/cachingwriter.rb +2 -2
  17. data/test/audioengine_test.rb +22 -24
  18. data/test/audioutils_test.rb +1 -1
  19. data/test/cachingwriter_test.rb +13 -12
  20. data/test/fixtures/invalid/leading_bar_line.txt +15 -0
  21. data/test/fixtures/{valid → invalid}/with_structure.txt +2 -2
  22. data/test/fixtures/valid/multiple_tracks_same_sound.txt +2 -1
  23. data/test/fixtures/valid/optimize_pattern_collision.txt +4 -5
  24. data/test/fixtures/valid/track_with_spaces.txt +13 -0
  25. data/test/includes.rb +1 -4
  26. data/test/integration_test.rb +5 -5
  27. data/test/kit_builder_test.rb +52 -0
  28. data/test/kit_test.rb +18 -141
  29. data/test/pattern_test.rb +66 -1
  30. data/test/song_swinger_test.rb +2 -2
  31. data/test/song_test.rb +9 -33
  32. data/test/songoptimizer_test.rb +18 -18
  33. data/test/songparser_test.rb +20 -10
  34. data/test/track_test.rb +23 -9
  35. metadata +26 -31
  36. data/ext/mkrf_conf.rb +0 -28
  37. data/test/fixtures/invalid/template.txt +0 -31
  38. data/test/fixtures/valid/foo.txt +0 -18
  39. data/test/sounds/bass.wav +0 -0
  40. data/test/sounds/bass2.wav +0 -0
  41. data/test/sounds/sine-mono-8bit.wav +0 -0
  42. data/test/sounds/tone.wav +0 -0
@@ -1,28 +0,0 @@
1
- # Based on: http://www.programmersparadox.com/2012/05/21/gemspec-loading-dependent-gems-based-on-the-users-system/
2
-
3
- # This file needs to be named mkrf_conf.rb
4
- # so that rubygems will recognize it as a ruby extension
5
- # file and not think it is a C extension file
6
-
7
- require 'rubygems/dependency_installer.rb'
8
-
9
- # Load up the rubygem's dependency installer to
10
- # installer the gems we want based on the version
11
- # of Ruby the user has installed
12
- installer = Gem::DependencyInstaller.new
13
- begin
14
- if RUBY_VERSION >= "2"
15
- installer.install "syck"
16
- end
17
-
18
- rescue
19
- # Exit with a non-zero value to let rubygems something went wrong
20
- exit(1)
21
- end
22
-
23
- # If this was C, rubygems would attempt to run make
24
- # Since this is Ruby, rubygems will attempt to run rake
25
- # If it doesn't find and successfully run a rakefile, it errors out
26
- f = File.open(File.join(File.dirname(__FILE__), "Rakefile"), "w")
27
- f.write("task :default\n")
28
- f.close
@@ -1,31 +0,0 @@
1
- # An example song using mono 8-bit sounds
2
-
3
- Song:
4
- Tempo: 120
5
- Flow:
6
- - Verse: x2
7
- - Chorus: x4
8
- - Verse: x2
9
- - Chorus: x4
10
- Kit:
11
- - bass: ../../sounds/bass_mono_16.wav
12
- - snare: ../../sounds/snare_mono_16.wav
13
- - hh_closed: ../../sounds/hh_closed_mono_16.wav
14
- - agogo: ../../sounds/agogo_high_mono_16.wav
15
- - tom_high: ../../sounds/tom4_mono_16.wav
16
- - tom_low: ../../sounds/tom2_mono_16.wav
17
-
18
- Verse:
19
- - bass: X...X
20
- - snare: X.X.X
21
- - hh_closed: X.XXX
22
- - hh_closed: X....
23
- - agogo: ....X
24
-
25
- Chorus:
26
- - bass: X...X...XX..X...
27
- - snare: ....X.......X...
28
- - hh_closed: X......
29
- - hh_closed: X.XXX.XXX.XX..X.
30
- - tom_high: ...........X....
31
- - tom_low: X.............X.
@@ -1,18 +0,0 @@
1
- Song:
2
- Tempo: 120
3
- Flow:
4
- - Verse: x1
5
- - Chorus: x2
6
- Kit:
7
- - bass: test/sounds/agogo_high_stereo_16.wav
8
- - bass2: test/sounds/snare_stereo_16.wav
9
-
10
- Verse:
11
- - bass: X...X...X...X...
12
- - bass: ..X...X...X...X.
13
- - bass2: X.X.X.X.X.X.X.X.
14
-
15
-
16
- Chorus:
17
- - bass: X...X...
18
- - bass2: X.X.X.X.
Binary file
Binary file
Binary file