Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /storage/content/49/145849/famitracker.com/public_html/forum/classes/dbHandler.php on line 29
Hello there FamiTracker forums, I have a bit of an issue (possibly a bug) that I'd like to bring up. Just recently, I bought myself a MIDI keyboard and decided I'd try it out with FamiTracker, since I've used the program a long while ago and figured, hey, having this keyboard will make composing music in the program easier! After downloading the latest version (0.4.4 as of the time of this post), I set set my keyboard as the MIDI input device, created a basic instrument for the pulse channel, and decided to just play some little melodies.
Very quickly, I noticed that sometimes, even though I press a key, and the MIDI information on the bottom status bar showed a correct Note On event for the key being played, there wouldn't be sound played. After a little bit of testing, I've come to the conclusion that if a key is pressed at near the exact same time I lift off of another key, the pressed key will not cause a tone to be played, despite FamiTracker seeing the note. I verified this by alternating between two or more notes, and timing it so that I press one key at the same time as lifting off of another, and it would consistently not play a sound, even though the status bar shows the Note On and Note Off events correctly.
Recording the note inputs is no issue, all of them are recorded correctly, regardless of if a sound is played or not. Much to my surprise, I found that this wasn't [u]just[/u] a MIDI keyboard problem, but the same thing happens when playing on a computer keyboard! Lifting off of one key while pressing another at around the exact same time causes no sound on the newly pressed key. This was something I never noticed a long time ago when I first started trying FamiTracker, so either it's a newer issue or something I just never noticed due to not 'jamming' as much as just inputting notes. I can't tell what is causing this behavior, but it does slightly irk me while playing, since sometimes notes just don't happen when I expect they should.
Any help with this would be appreciated, and forgive me if I'm missing some setting that would fix the problem. It's been a while since I've been here, and used the program, so it could be likely I've missed some answer for it. Thank you for reading!
Oh, and I forgot to mention, only tangentially related...is there a way to get the MIDI keyboard to activate the release phase of an instrument when the Note Off occurs? Releasing the note on the MIDI keyboard cuts the note off, regardless of if there's a release portion in the instrument. Using a computer keyboard there's no issue, and release is triggered when I lift off, but not so with the MIDI keyboard. I didn't feel like making an entirely new thread just to ask about that, so I figured I'd ask here, even though the issue in my first post has to do with jamming on both computer and MIDI keyboard's, so it's not exactly related, sorry.
Huh, what a coincidence. I just recently bought a MIDI keyboard.
Anyway, I think I know what you're talking about. This is just a problem with 0.4.4, as this didn't occur in previous versions. I've noticed while quickly hitting random notes on the keyboard that there is often no sound output, but from trying out the 0.4.5 beta, this appears to have been fixed. Try the 0.4.5 beta and let us know if you're still having this problem.[quote=TheNoblePirate]Oh, and I forgot to mention, only tangentially related...is there a way to get the MIDI keyboard to activate the release phase of an instrument when the Note Off occurs? Releasing the note on the MIDI keyboard cuts the note off, regardless of if there's a release portion in the instrument. Using a computer keyboard there's no issue, and release is triggered when I lift off, but not so with the MIDI keyboard. I didn't feel like making an entirely new thread just to ask about that, so I figured I'd ask here, even though the issue in my first post has to do with jamming on both computer and MIDI keyboard's, so it's not exactly related, sorry.[/quote]Yeah, I was wondering about this too.
Thanks for the reply, VinylScratch! I've downloaded the 0.4.5 Beta 1, dated Dec 15, 2014 (I assume this is the latest?) and decided to test things out again. Unfortunately, it still has the same issue...lifting a note and hitting a note at the same exact time means the new note doesn't play. The same thing occurs on both keyboards.
Since I was playing around with the release phase of an instrument, I noticed something else, maybe it will help in this matter: Playing notes on the computer keyboard in the same fashion as I described above, doesn't cut out sound completely, it just activates the release phase of the instrument as normal, without there being any sort of retrigger on the channel for the simultaneous new note. Still, FamiTracker 'sees' every single note, and records is correctly, it just doesn't 'play' a note if another note was just recently let go.
It's pretty confusing at this point. I've not had the issue with any other software so far, so I'm hoping to figure out what's causing it on FamiTracker specifically. I'll try redownloading older versions of FamiTracker to see if they act the same way.
In case it's of any relevance, my OS is Windows 7 64-bit.
Okay, I started working backwards through FamiTracker versions...so far, 0.4.3 has the same odd behavior as 0.4.4, BUT, 0.4.2 works perfectly fine! Incidentally, I believe the last time I had used FamiTracker was well over a year ago, with this exact version, which might explain why I never noticed this issue while playing with a computer keyboard! I guess as long as I jam on version 0.4.2, I'll be set.
Still, I hope this is something that can be resolved with upcoming versions, although what exactly changed between 0.4.2 and 0.4.3 is still a mystery to me. I almost held on hope that by some miracle, this version would also allow the MIDI Note Off to use the release phase, but it doesn't. Ah well...
Thanks for looking into it, I appreciate all the work you've put into FamiTracker! For now I'll be using 0.4.2 for playing out melodies with my keyboard. If you have any trouble reproducing the issue, I can make a video demonstrating it, when I get the time to.
I found and fixed the issue, it was caused by released keys taking priority over new notes. It will work properly in the next release, which should happen soon.
--
Regarding the release phase of instruments, it depends on the type of MIDI messages that are sent by the keyboard. My own keyboard sends released keys as a Note On messages with velocity = 0, that will release the note just like when using the PC keyboard. However if it sends it as a Note off message then it will just cut the note without the release phase. I guess that's the case with your keyboard.
Do you know if you can reconfigure your keyboard? Otherwise I can add the same behavior to both type of messages.
It seems there is no way to reconfigure my keyboard so I'll make it behave the same for both type of messages, I see no reason to have different behaviors anyway.
On the matter of release phases, interestingly enough, my MIDI keyboard also sends just a Note On message with velocity 0, but I had data mapped that message to instead send a proper Note Off message. The reason I was doing this was because another program I have been using is -very- picky about what messages it receives, so I had to remap the MIDI messages. I didn't even think of trying Famitracker without the remapping. So, just to check, I turned off my configuration and just chose my keyboard as the MIDI input to Famitracker. Lo and behold, release phase now works on instruments! Thanks so much for that!
In case you want to know how I've been remapping my keyboard, I've been using MIDI-OX running in the background, used its Data Mapping functions to set any Note On messages of velocity = 0 to instead become a Note Off message, and then made MIDI-OX output to the LoopBe1 virtual MIDI cable. I've used that virtual cable as my MIDI device on programs ever since, so that I would be able to get exactly the messages I wanted. At least from now on, I know that if I want the release phase in Famitracker, I can just toggle MIDI-OX data mapping off.
EDIT: I forgot to mention, although it might go without saying, that anyone that has a keyboard that sends proper Note Offs by default could also use the same method of Data Mapping through MIDI-OX to turn the Note Offs into Note Ons with 0 velocity, for use with Famitracker. That should help others wondering about how to get that to work, such as Vinyl Scratch.
I see, that's interesting. Actually I'm not sure if there's supposed to be a difference between the both type of messages, but I've made it behave the same now so hopefully it should prevent some confusion in the future.