m0j0hn / editor-on-fire

Automatically exported from code.google.com/p/editor-on-fire
Other
0 stars 0 forks source link

Add percussion note capability #107

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
I know this was on the to-do list, but one of the users has requested it,
so I figured I'd put it up here:

http://www.fretsonfire.net/forums/viewtopic.php?f=11&t=32725&p=526593#p526589

Original issue reported on code.google.com by raynebc on 27 May 2010 at 10:17

GoogleCodeExporter commented 9 years ago
I hadn't realized this yet, but note C6 (pitch 96) is used for a playable 
percussion note.  We should decide about whether to leave that key of the full 
and mini pianos accessible as it currently is, or if we want to require 
something different for placing percussion notes.

Original comment by raynebc on 26 Aug 2010 at 11:16

GoogleCodeExporter commented 9 years ago
This would be easiest to implement in Rex Mundi input mode, since a key other 
than 1 through 5 could be used to distinguish them.  The key 'P' would make 
sense, but that is currently used for sounding a moused-over tone.  Using '6' 
could work, but I'm not sure what the best way would be to enter percussion 
notes for other input methods, as only the right mouse button (or Insert) is 
used.  In this case, perhaps a "toggle percussion" setting can be used to cause 
all newly-placed lyric notes to be set as percussion.  This solution would work 
regardless of the input-method, and could maybe be activated/deactivated by 
clicking on the C6 full piano key (or through the menu).

Original comment by raynebc on 27 Aug 2010 at 7:38

GoogleCodeExporter commented 9 years ago
The percussion notes can be drawn in the editor window as empty circles with a 
white border color, as in this video:
http://www.youtube.com/watch?v=iRm_wD_f1Mc

Original comment by raynebc on 27 Aug 2010 at 11:18

GoogleCodeExporter commented 9 years ago
r343 begins work on this.  Some improvements would be to center the percussion 
note in the roll (since the middle fret lane is not the center of the vocal 
editor window due to the lyric lane), ensure that percussion notes have a fixed 
length (ie. 1) and ensure that when moused over, they don't render with a 
rectangle in the way that regular lyric notes do.

Original comment by raynebc on 2 Sep 2010 at 11:40

GoogleCodeExporter commented 9 years ago
It would be good to sample a few percussion noises that can be loaded into 
eof_sound_note[] when EOF starts up.  The user could choose which percussion 
sound to play (clap, tambourine, cowbell, wood block, etc) and that would 
replace eof_sound_note[84] so the callback can play that tone without any 
special logic.

Original comment by raynebc on 3 Sep 2010 at 1:17

GoogleCodeExporter commented 9 years ago
Percussion was corrected to be recognized on note 96.  We'll need to decide how 
the percussion notes are to be placed.

Original comment by raynebc on 3 Sep 2010 at 6:35

GoogleCodeExporter commented 9 years ago
r351 maps the backspace key as the key to use to enter a percussion note in any 
input method.  eof_new_lyric_dialog() has been modified to not prompt for a 
lyric string if a percussion note is being added.

Original comment by raynebc on 6 Sep 2010 at 4:48

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
This could be combined with a previous feature request of mine to allow 
specific cues to be assigned a different sound.  It would be neat to have a 
range of audio samples to complement the existing clap and tick sounds, and 
each of the note clap, beat tick and percussion cues could have their audio 
selected, such as by drop down list.

Original comment by raynebc on 14 Sep 2010 at 5:08

GoogleCodeExporter commented 9 years ago
r387 adds various percussion samples (clap, tambourine, cowbell and wood block) 
in a new data file (percussion.dat).  For the sake of testing, I just made them 
WAV audio.  They could easily be converted to OGG to lower the space, as in WAV 
format, this DAT file is almost 0.5MB.

Original comment by raynebc on 23 Sep 2010 at 2:15

GoogleCodeExporter commented 9 years ago
I uploaded the new samples in a regular zip file if you want to check them out 
without having to open grabber to extract them:
http://www.sendspace.com/file/ciwq3v

Original comment by raynebc on 23 Sep 2010 at 6:10

GoogleCodeExporter commented 9 years ago
The next step is to add another voice for vocal percussion, or add it to the 
vocal tone sample array.

If the former is performed, it will make it simpler to apply a unique volume to 
the vocal percussion sound.  The drawback is that more logic will have to be 
added to the mix callback to handle another voice.

If the latter is performed, the percussion area of the array can easily be 
changed to hold the user-selected percussion sound.  The drawback is that it 
will require conditional logic to handle the percussion sound this way.

Original comment by raynebc on 26 Sep 2010 at 3:31

GoogleCodeExporter commented 9 years ago
The next step is to add another voice for vocal percussion, or add it to the 
vocal tone sample array.

If the former is performed, it will make it simpler to apply a unique volume to 
the vocal percussion sound.  The drawback is that more logic will have to be 
added to the mix callback to handle another voice.

If the latter is performed, the percussion area of the array can easily be 
changed to hold the user-selected percussion sound.  The drawback is that it 
will require conditional logic to handle the percussion sound this way.

Original comment by raynebc on 26 Sep 2010 at 3:31

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Vocal percussion playback is implemented in r395.  Currently, the cowbell 
sample is played.  Ultimately, the audio cues dialog should offer a selection 
of samples to use for the vocal percussion cue.

Original comment by raynebc on 26 Sep 2010 at 5:32

GoogleCodeExporter commented 9 years ago
r397 improves the audio cues dialog by adding logic to make the vocal 
percussion cue sound user-selectable.  More sounds still need to be added.

Original comment by raynebc on 26 Sep 2010 at 6:23

GoogleCodeExporter commented 9 years ago
r398 finishes the sounds and user cue dialog window.

Original comment by raynebc on 26 Sep 2010 at 11:01

GoogleCodeExporter commented 9 years ago
Completed in r399.

Original comment by raynebc on 27 Sep 2010 at 12:20