<html>
<body>
<font size=3>Hi All,<br><br>
Sorry to be away from email for a while.  It's spring
break!<br><br>
The Walter MIDI device that Phil Gossett and I developed waited one
period before emitting a note-on, and then it did emit a stream of
pitch-bend events to follow bending and vibrato and such.<br><br>
If you use a physical modeling algorithm, then you don't have to wait one
period.  Just emit the first "pick pulse" and "close
the loop" when one period is identified.  When you think about
it, this is how real guitars work.  When the first pick-pulse comes
out of the pickup (or bridge), no string pulse has typically yet reached
the other end of the string, so it could be any length as far as the
physical disturbance "knows".  Physical modeling
algorithms need never add any latency relative to the real thing. 
Just do what happens.<br><br>
- Julius<br><br>
At 10:00 AM 3/24/2013, Robert Poor wrote:<br>
<blockquote type=cite class=cite cite="">Ask Julius!  He's on the
list...(yo Orion, homie, you there?)<br><br>
On Sun, Mar 24, 2013 at 8:43 AM, Stefan Blixt
<stefan.blixt@gmail.com> wrote:<br>
> Interesting! :) Do you know if they tried this out in some
implementation<br>
> that we could have a look at?<br>
><br>
><br>
> On Sun, Mar 24, 2013 at 3:09 PM, Robert Poor
<rdpoor@gmail.com> wrote:<br>
>><br>
>> Julius might want to chime in, but as I recall, he and Phil
Gosset<br>
>> came up with a really nifty technique for MIDI pitch tracking
suited<br>
>> for guitars:<br>
>><br>
>> As soon as you notice an attack, make a Wild Assed Guess as to
the<br>
>> pitch and emit a NoteOn event.  Then, as the transient
passes and you<br>
>> can actually start to detect the pitch, start emitting NoteBend
events<br>
>> to correct your original guess.<br>
>><br>
>> Your ear can't detect the pitch at the attack, but it is
very<br>
>> sensitive to onset times, so this technique works pretty
well.<br>
>><br>
>> On Sun, Mar 24, 2013 at 6:55 AM, Stefan Blixt
<stefan.blixt@gmail.com><br>
>> wrote:<br>
>> > Re: latency - that's very true. OTOH, someone pointed out
somewhere that<br>
>> > latency has been around as long as bands have needed to
perform on big<br>
>> > stages in front of huge speaker stacks, due to the fact
that the stacks<br>
>> > are<br>
>> > positioned some distance away from the musicians, and sound
needs to<br>
>> > travel<br>
>> > a while before hitting the musicians ears. I'm not saying
I'm used to<br>
>> > performing on big stages, just that latency doesn't have to
be a<br>
>> > show-stopper, just a condition you need to work with. The
problem then<br>
>> > becomes to make the latency consistent, which has been a
problem for me<br>
>> > -<br>
>> > some notes are detected later than others.<br>
>> ><br>
>> ><br>
>> > On Sun, Mar 24, 2013 at 2:23 PM, Kassen
<signal.automatique@gmail.com><br>
>> > wrote:<br>
>> >><br>
>> >> On Sun, Mar 24, 2013 at 01:16:41PM +0100, Stefan Blixt
wrote:<br>
>> >> >    Kassen, perhaps you're thinking
about the YouRock guitar? I've<br>
>> >> > been<br>
>> >> >    glancing at that one myself -
looks like a clever piece of gear.<br>
>> >><br>
>> >> Me too, but considering my collection I should really
only get game<br>
>> >> controllers I have actual plans for.<br>
>> >><br>
>> >> >    They're actually getting better
at polyphonic pitch detection -<br>
>> >> > there<br>
>> >> > are<br>
>> >> >    polyphonic tuners available (the
TC Electronic app for iPhone),<br>
>> >> > and<br>
>> >> > the<br>
>> >> >    RockSmith console game (great
fun!) detects chords - though how<br>
>> >> > well<br>
>> >> > it<br>
>> >> >    does isn't apparent, maybe
they're faking it ;) I do think there's<br>
>> >> > a<br>
>> >> > fair<br>
>> >> >    amount of latency involved in
both of those though.<br>
>> >><br>
>> >> Frankly I think that is unavoidable. Pitch detection
takes time and<br>
>> >> the onset of guitar notes is really quite noisy on top
of that. What<br>
>> >> I'd do if I wanted to get clever would be to first send
that a<br>
>> >> transient has been detected and only once I were sure
of the pitch<br>
>> >> send the pitch, then using some synth controlled by
this that would<br>
>> >> also start with noisy attacks. That might be ok.<br>
>> >><br>
>> >> I said it before but there really is no way around
latency in pitch<br>
>> >> detection as pitch is inherently a time-based
phenomenon. If the plan<br>
>> >> is to get new musical ideas that might not be a issue
as you could run<br>
>> >> analysis at your leisure. For rocking out live it's
either accepting<br>
>> >> the math or everyone's favourite strategy; cheat
;-)<br>
>> >><br>
>> >> Yours,<br>
>> >> Kas.<br>
>> >> _______________________________________________<br>
>> >> chuck-users mailing list<br>
>> >> chuck-users@lists.cs.princeton.edu<br>
>> >>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" eudora="autourl">
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > --<br>
>> > Release me, insect, or I will destroy the Cosmos!<br>
>> ><br>
>> > _______________________________________________<br>
>> > chuck-users mailing list<br>
>> > chuck-users@lists.cs.princeton.edu<br>
>> >
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" eudora="autourl">
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br>
>> ><br>
>> _______________________________________________<br>
>> chuck-users mailing list<br>
>> chuck-users@lists.cs.princeton.edu<br>
>>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" eudora="autourl">
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br>
><br>
><br>
><br>
><br>
> --<br>
> Release me, insect, or I will destroy the Cosmos!<br>
><br>
> _______________________________________________<br>
> chuck-users mailing list<br>
> chuck-users@lists.cs.princeton.edu<br>
>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" eudora="autourl">
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br>
><br>
_______________________________________________<br>
chuck-users mailing list<br>
chuck-users@lists.cs.princeton.edu<br>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" eudora="autourl">
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a>
</blockquote>
<x-sigsep><p></x-sigsep>
<br>
Julius O. Smith III <jos@ccrma.stanford.edu><br>
Prof. of Music and Assoc. Prof. (by courtesy) of Electrical
Engineering<br>
CCRMA, Stanford University<br>
<a href="http://ccrma.stanford.edu/~jos/" eudora="autourl">
http://ccrma.stanford.edu/~jos/</a> </font></body>
</html>