So I am Todd Fisher. I love the guitar. That's one of my passions in life. Today I want to talk about this project I've been working on for a while here, effectively making my guitar speak. But of course I want to start out framing it under this awesome premise. We've all been to live performances where your mind was just blown. It was awesome. The first one I remember, way back, I was in high school. I went to a Slipknot concert, so a little bit heavier music here in the Bay Area. And I remember at some point the drummer was drumming a cool drum solo and his drum set started raising up. And I was like, whoa,
that's cool. And everyone got excited, right? And then halfway through the solo, his drum set started to go like this and tip. And his whole drum set was on the wall while he was upside down playing his drum solo. And everyone was just cheering, like, whoa, this is so crazy, mind-blowing, whoa. It was so impactful, right? I still remember it today. Fast forward, probably about a year ago, I went to New York to see Stranger Things on Broadway, The First Shadow. And it was really cool because the whole time I was there, I was watching it and it felt like it was actually a Netflix episode, but in real life. And the effects that they did there were so,
so amazing. I remember even one time near the end, there was a scene where somebody was falling backwards. And it was a slow-motion scene. And it's probably about a minute long, the whole scene. But the fact that they were able to produce that in real life, and it looked like it was a post-production slow-motion scene, was just mind-blowing. So it's like, whoa, that's cool. Given everyone here has probably had some experiences with live performances in the past, I think it's really awesome to see the creativity that people can do with leveraging technology in some creative way. And so I'm thinking
about all the projects that we have as engineers over the years where it's like, hey, that's a cool idea. I'm going to write this down. I have a big giant list. Anyone have a list of projects that maybe they'll get to? Yeah, it all happens, right? And it's really awesome because the last six months or so, with AI being able to push us forward with some of these projects, it's just really cool to see where we can take all these projects. So part of my goal today is to inspire you guys to find whatever project you're passionate about and go start building it because it's super easy now with AI. It's easier
with AI. I know sometimes there's caveats. But in general, I want to have you guys leave this session inspired to go build whatever that cool thing is for you personally that's going to help you learn stuff or maybe make a difference in the things that you're trying to figure out. So I want to start off with framing this in the realm of the guitar. So the guitar has been around for several years, several thousands of years or hundreds of years, right? And at some point, somebody said, hey, I'm going to put a pickup on a guitar, I'm going to plug it into a speaker, and now we have rock and roll. We're going to make it super loud.
That was pretty awesome. And then of course, we have a lot of people getting these stomp boxes, these effects pedals. We put them all together, and we have really awesome sounds. Really famous people have a lot of these. And then at some point, Peter Frampton came along and said, hey, what if we get the sound of the guitar, put it through an actual hose, a physical hose, put it in my mouth, and then play the guitar sound in my mouth and form some sort of words. So that's pretty awesome. That's known as the talk box. And then in the last couple decades, we have had a lot of progress made with software emulation. You think of Pro Tools, Logic, Fruity Loops. There's
a lot of software, even to the point where all the effects are in software now. There is the argument, hot take, that maybe you don't need all those physical effects pedals anymore. So there's that question, right? And then of course, looking forward, what is that next evolution of the guitar with AI in the picture? So with that said, I want to take you back several years ago. Around Halloween time, I was passing out candy to a bunch of trick-or-treaters. It got boring. So I was like, hey, what if I go and actually bring my guitar out with my amp and just play? So for the past 10-plus years or so, I've actually been playing guitar on Halloween while passing out candy,
and it's kind of fun. And then fast forward probably three years ago, I decided to dress up as Eddie Munson. Anyone know Eddie Munson? Stranger Things guitar player guy. So, pretty awesome guy. So I dressed up as him. I was like, yeah, this is going to be so fun. I could play the music with him, whatever.
And you kind of go to—oh, hold on. Hold on, wait a minute. Technical difficulties. All right, there it goes. So, a bunch of little Stranger Things awesomeness, right? But I figured, hey, what if there was more stuff I could put in this whole experience? And so I decided to go and build a little app that would actually paint the Stranger Things alphabet on my garage door, just because it's fun, right? And so let me just show you a quick example of how this worked. So effectively, make sure I have the mic permission. Whenever I play a note, it would go and communicate whatever lights. And I
have it to where I could actually set custom messages such as Happy Halloween, all that fun stuff. It was overall pretty fun just to mess with that, right? So once again, whatever I type in there, I could actually spell whatever, and it was very much a cool nod to Stranger Things. But it got me thinking, what is the next evolution of this project? And I settled on this idea of, hey, how hard would it be to make my guitar speak? It sounds easy, maybe, maybe not. So today, I want to share my journey in this process and where I'm at today. So, looking around at the different tools, there's a framework out there called JUCE, really awesome
for anyone building audio software. Look into JUCE, it's pretty good. And then of course, there's a number of plugin formats out there for your digital audio workstation. And for those that are not aware, your DAW is effectively your IDE, but for musicians and music producers. And then I started with some text-to-speech stuff with Piper and some built-in Apple stuff, and then some other really fun digital signal processing. So with that said, my first step here was I wanted to get raw text, so I could just type in whatever text I want, push it through the text-to-speech, get the audio clip, and then
whenever I play a note on the guitar, I want to go and play that back. So let's go see how that works. So switching over to my Logic Pro here. And this is the plugin I made. So it's just like any other plugin in Logic, where you just pop it in there. It's just chaining all the effects together. And so this is what I came up with. Developers. So it's playing it. Developers. Pretty awesome, right? Developers. Kind of reminds me of something, right? Developers. Start clapping, everyone. Start clapping. Developers. Developers. Developers. Developers. Developers. Developers. Developers. Awesome. Thank you. That's pretty awesome. You guys are great.
So I got it to where it's playing an actual audio file. That's pretty awesome. But it turns out, in English, or in any language for that matter, there's more than one word. So the next evolution—oh, that's a little chatty. The next evolution there is, let's actually go and slice it per word now. So I got to the point where it's playing. Now it's going to slice per word. Look at me. I can speak. Look at me. I can speak. So now it's speaking words, and that's pretty awesome, right? But it turns out that as we speak, there are a number of challenges in how we automatically slice words. So I looked into this
thing called energy gap segmentation. The general idea here is, if you look at any waveform over here, we see that here's a bunch of words that we're speaking, right? The idea there is that there's typically silence in between words. So let's just cut it whenever the decibels are very much close to zero, right? But the issue with that is there are actually times when, as I'm speaking right now, for example, there's no silence in between some of my words. So it gets a little challenging to where it's not 100% foolproof, right? So beyond that, I looked into this thing called
Sonority Peak Syllabifier. That's a hard word to say. Effectively identifying the syllables of the audio signal and identifying that there are vowels in here. Vowels typically lead to syllables. That's kind of the idea. So I said, okay, let's take the sonority peak, add it to the energy gap, and figure out if we could just make that work automatically. So with that said, I made it kind of work. So let's play this one. Thank you for letting me be here. It feels so good to get out of my target case once in a while. So there you go. It's working pretty well. Not quite as good as I want it to. So
long story short, I settled on just the ability to go and actually drag this and manually edit some of these segments in here. It worked okay, right? But moving on, in the spirit of evolving the thought, evolving the project, right, it's like, okay, we're having the AI say stuff. That's great. But what if we could actually make it sing? Let's take it to the next step, because this is music. Why not, right? So I looked into pitch detection. And for those that are not aware, as you hear any noise out there, there are typically multiple frequencies going on at any given time. You think of when you play the C key on the piano. There is definitely a fundamental frequency,
or the one that we identify as the note, but there's a bunch of other frequencies. So we needed a way to go and figure out, how do we detect that fundamental frequency? So when I press something on the guitar, how do I translate that into an actual note? And then I found this YIN pitch algorithm. Basically, what it does is it detects the pitch. I won't get into all the details, but look it up. It's a really cool way of detecting the pitch. But effectively, what I do is I play the guitar, I detect the pitch, I make what's effectively a pitch sawtooth, or a synthesized note. So for those that are not familiar with how audio works on the computer, you think of all the
electronic music, all that stuff. That is basically a synthesized note. We have ADSR, which effectively are the levers to figure out how to actually make the note sound in different ways. And then basically, we get the pitch note, or the synthesized note. We then push it through the voice clip effectively. So think of the talk box. We're kind of filling up the cavity of the voice, that is. And we push it through a vocoder and it should sing. So that's kind of the idea, right? So with that said, let's go ahead and jam out a little bit because I have a guitar and it's fun. So I'm getting back to Logic here.
So I'm going to play some chords. I originally was going to play a song that is very much related to the title of my talk, While My Guitar Gently Speaks. But because it's going to be posted online, I don't want to muddy up the waters with any copyright things. So I will play some chords that may or may not sound similar to a famous song. So.
So that's the backing track. So let's go ahead and have some AI speaking on top of it. I'm here. I got this.
No. Technical difficulties. Let's try that again. Live demos, always the best. I'm here.
I got this. All right. Technical difficulties again. So sorry for that. But let's just run through it and see what happens. I'm here. I'm here. I'm here. Friends that speak. I'm a guitar that can speak. Awesome. So there you go.
Some bugs to work out. But overall, we are able to say words on top of this. And for what it's worth, I'm trying to mix the synthesized note with this clarity lever right here, so balancing or mixing the synthesized note with the actual voice that the AI is giving. So that worked pretty well. But there's also this other question. Given that when you speak, it's typically conversational, what if I could take this to the next level? And what if we actually had this microphone right here where I could speak into the mic, it would then respond on the guitar? So the way that I accomplished this is, speaking into the mic, use speech to text, so Whisper, put that into raw text,
run a local model on my computer. It doesn't really matter what LLM, just any local model, have a conversation coming, and then from that output, go and plop it on the guitar. So let's see how this works.
So let's see what it says. Anyone have a question you want to ask my guitar? Anybody? What is reality? Let's think, going through the LLM things, and let's see what it says. That's quite a question to start with. How does your music help you understand that elusive concept of reality right now? So yeah, very existential. I like that. So thank you for that suggestion there. So there you go. We have a choppy version, but it is working. So that's a win, right? Awesome. Thanks for the claps there. But really, it's not quite singing yet, right? So moving on in this project, it's like, how do I
actually make it sing, right? I found a lot of open-source options out there as far as recordings or samples, if you will. There's a thing called VocalSet out there. They basically recorded a bunch of singers, and I could use those audio files to go and do some fun stuff with them. And effectively, I took those samples. I used a project called WORLD, which helps with things like pitch shifting and some other things. And I'm able to then shift the pitches of everyone singing on those audio clips and map it to the guitar. This is a very heavy process,
and so I can't really do that live. I had to effectively pre-bake that. And then once it's already pre-baked, I could then go and jam out with it. So with that said, let me go ahead and show that example here. So because it takes so long, I actually just started with the vowel sounds. So there's somebody singing each of the five vowels. And so we'll see how that sounds, right? Kind of fun, kind of weird, but overall it's working. It's closer to singing, right? So let's go ahead and throw that on top of all the chords over here. And let's see if we can make it sound decently well. So we'll just play these chords again.
So not quite your opera singer, but getting closer. And so I think there's something awesome there. So effectively, once again, that is going through the whole synthesized process, putting a sample, shifting the pitch of the sample, and then effectively mapping each fret or each note on the guitar to one of those samples that are pre-baked effectively, right? So with that said, where do I want to take this next? I very much want to get into more of the AI-heavier options. If anyone has any other ideas of how to make the guitar sing, feel free to come up to me after. I think it's pretty awesome. But more importantly, everyone here, going back to the charge to go and build
some awesome side projects, some passion projects of yours, what is that for you? Go and build awesome things. Because nowadays with AI, we could build so many really cool things. And time is typically not the big time suck that it once was, right? So with that said, be awesome, be good to each other, and thank you very much. Thank you very much.
I ain't ain't ain't ain't ain't ain't Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye. Bye.