If the input range were not so great, say 10:1 or less then a PLL (phase locked loop) frequency multiplier could work. Digitally divide your input signal by 2 to get a true 50% input duty cycle to the PLL, then multiply it by 20. Take the 20x oscillator output from the PLL and generate one pulse in twenty with say a pair of 4017. I think that should give you a fixed 5% duty cycle?
PLLs are kind of neat but they take some time to lock which might be a problem for you, and would really only work in the 200Hz to 2KHz range. That said, you suggested that the input signal might be a guitar? If so why would it need to go over 2KHz? In fact, you'll likely need do do some pretty heavy filtering on it to get the "note" you're looking for. The output of an electric guitar has a lot of harmonics; check youtube for "guitar oscilloscope" to see what I mean. Otherwise it would sound like a tuning fork.
A micro is probably easier. I can't help but think compensating your triangle wave generator would be easier too.
(tautech - I think he's looking for something that will put out a fixed duty cycle but variable frequency with the input dependant on frequency)