High Score - The Making of an 80s Video Game Sound Generator || David Molnar

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
okay take it away teamer hello everyone and welcome to the audio programmer uh virtual meetup um the december edition today is the last meetup of 2021 it's again me and josh we are your hosts uh tonight and we also have two wonderful guests uh david and jatin who are going to talk to us later today about lots of interesting things um before we get to that josh how are you doing today i'm doing great i am uh for once not in england i'm actually down in sunny florida and you can't tell it's sunny because all of the curtains are closed at the moment but uh but it is very warm out and uh we have actually a really exciting theme uh because we have two americans living in england that are going to be presenting today so there's american american and england um audio programming themed today that's pretty cool i normally also live in england although i'm not american but right now i'm actually also not in england like yourself i'm in athens and greece um so the weather is also pretty good here so as someone who's in london right now i would say stay where you are yeah right yeah um so yeah josh uh that's that's cool um florida yeah yeah yeah it's really nice out here and um yeah i guess we should take a moment to give thanks to our sponsors focusrite juice and sonics thank you for sponsoring the audio programmer meetup and this is this is really cool we have two great presenters for us today uh very experienced and uh they have some very exciting topics to talk to you about so uh we have david molnar and jatin childhood and uh they're gonna be talking to you about some really exciting things and i think that we should just jump right in and go to the first presentation what do you think teamer be totally sure before we do that let me just make one more comment everyone who's watching on the youtube stream please ask questions you're going to ask them to the speakers and you're hopefully going to get answers for those questions but if and when you ask those questions on the youtube chat please prefix them with the word question in capitals so it's easier for us to spot the questions in the chat because there's sometimes more chit chat going on there so it just makes it a little bit easier for us to spot the actual questions to the speakers so we can ask them with that being said uh let me introduce your first speaker for tonight i'm very excited to introduce david molnar who is the founder of renegade sunplay and he's here uh to talk about high score which is the sound generator that he has created um take it away david thank you timor uh well i'm david molnar founder of renegade sound play and i created a product called high score which is a sound generator for 1980s video games and one of the main goals i had for this product was i really wanted you to get that feeling you were immersed in 1980s video games so everything from the sounds to the graphics uh and i did it all in contact and i have to say i really push contact to the limits and i'm going to get to talking about that so um let me show you high score and bring up content i'm going to share my screen okay so do you see contact right now yes okay and this is high score right here in contact and so high score like i said it's a 1980s video game sound generator um so i actually um created some sounds for it i sampled some sounds i'm going to talk about that uh the idea was to be able to play sounds that you could play on something like a nintendo nes a nintendo game boy uh commodore 64 an atari 2600 uh an old texas instruments ti i even actually sampled sounds off an old texas instrument's ti-994a uh that that particular product has a very interesting speech synthesizer built in so i took advantage of that so um so just talking about high score it works like a regular subtractive synth so there is uh i've got three oscillators i call wave generators weight wave one wave two and wave three i've got a noise generator there's an envelope generator for the uh volume envelope generator for the pitch i've got a pitch lfo a volume lfo i've got a separate envelope generator for the noise generator uh and then the pitch and volume lfos are actually assignable and the pitch envelope generator you can assign them to different places uh in addition to the so the sound generator i i actually put it on a separate page because i ran out of space i've got a filter and it's a two polar four pole filter that does low pass high pass band pass and notch and you can assign it to any one of the three wave generators or the noise uh the pitch lfo and the volume lfo are assignable to the filter but then you also have the filter has its own envelope generator um in high score i also included what i call the step arpeggiator because one of the the interesting things about old video games is they were so limited on the number of voices so that if you wanted to play say a a chord like a piano accompaniment and then have a lead line and then have a bass and then have some drums well you didn't have that many enough voices to do all that you may have maybe you had three voices or four voices or something like that so one of the things that you would get uh you would instead of playing that piano chord you would have arpeggiated chord and um let's just give you an example of that find a good one here so let's see here so instead of playing just the chord it was arpeggiated um so i have the step arpeggiator and you know you don't have to play fast arpeggios you play slow things on there too um and it's syncable to your host which you'll need if you're using in the daw i also added some effects let me just turn off that so i have a note delay because in old video games you didn't have a real delay effect you didn't have uh you know there wasn't enough memory in there to do it you know so instead a lot of programmers just repeated notes at different volumes so i created this note delay that just takes the note you play and repeats it so let's let me just do something simple here so let's see if we come here and i turn on the no delay that's just repeating the notes and you can have up to eight repeats uh another thing i put in high score was the speaker simulator and you can come over here it's turned off but when i click on one of these three devices it now sounds like it's coming out of this device so this is a an actual sony uh studio monitor that i did an impulse response scan of uh also a zx spectrum the speaker in the zx spectrum and uh game boy and that's the speaker simulator so the nice thing about contact is it's hugely customizable so you're not only creating a skin but you're actually writing code and native instruments created something they call the uh ksp the contact signal processor a scripting processor excuse me and let me see i think i have that up here somewhere let's see if i can find that so many windows open right now well either way they have a there's a there's a nice manual for that which i i seem to have lost um ah here we go so you can just go onto the native instruments website and download this and it's pretty much it's a very structured language but it is not object oriented so it does have its limitations but it's very usable and so what kind of things you can do in in the uh with their ksp language is um basically assign all the graphics to you know all the graphics elements assign them to um various objects inside contact so if i click on this little wrench icon we go under the hood see here's the first oscillator uh square wave right there and i come down here and you can see in contact you have all of these different effects this is what's under the hood in contact so you can assign uh in using the contact script processor you can assign all of your uh controls that you have created your graphics user interface to any of these items inside contact right there so yeah so here i've created this is my script right here which is how many lines of code does this now 24 477 lines of code um they don't let you use multiple files which is very unfortunate so it makes for a big file so yes so high score um works with because it's in contact it works with samples and i recorded samples from the commodore 64. i recorded samples from an atari 2600 uh some sounds i created myself so the like a simple square wave and some of the pulse waves i actually just created those myself um other sounds like the commodore 64 sounds were just like this real gritty tonality to them i sampled those right off of the the actual product spent a couple weeks sampling combo 64. um let's see then then um one of the things i sampled which i've mentioned before was the texas instruments ti 99 4a and the thing about that was i wanted to sample some of the vowel sounds from the speech synthesizer so if i just use the first oscillator here and i scroll down and it comes to the speech sounds let's find that so like here let me turn off that no delay [Music] so that's just an odd and then i did [Music] and i did the o [Music] you know i have to say that i did have quite a bit of feature creep as i was just doing this for myself at first so i um i decided to go ahead and create a sound bank of words [Music] so i have two sound bands of words and i just so i just sampled a bunch of words off the speech synthesizer on the ti home computer destroyer moon i talked about the speaker simulator and um one one question is what did you use to sample your recordings oh okay um so i actually of all the things i used audacity i sampled i recorded all my sounds into audacity and i know cheap freebie app but it worked well and um did the job yeah um can you share anything more about the setup like did you just mic the like on so like the commodore 64 i um took the audio out and ran that direct into my sound card um things that i did mic so when i did the speaker simulator and i recorded sweeps of things like the um in fact i'm gonna stop the share for a second i'll show you so see here so i actually did a sweep through here and i used logic's um uh sweep generator and so i actually sweeped this and it was sitting on my bench right in front of me uh right behind where the computer screen is right now that i'm looking at this is amazing and i sweeped it and first so first i played high score through it and i hadn't i just had the idea for the speaker simulator and i used this i it's all boxed up i had a little instrumentation microphone i bought for this and i just set up some blankets around it to dead in the room a little bit and i ran a sweep through it and then uh in logic it will it'll turn that sweep into an impulse response and then i just use the convolution reverb in contact to create the speaker simulator this you know very short uh decay time but it's uh it worked i was actually amazed how well it worked and how like i would play i played it through i played contact through the actual speaker in that monitor in that sony monitor and had no idea what it sounded like and then i played it through the speaker simulator and my speakers were positioned somewhat similar to where i had the monitor on my desk and i was just amazed how it just sounded just like it and it blew my mind then i did the the uh the zx spectrum which i have right here so i did the little speaker in the back you can see that and i did the the game boy right there now the sony monitor has an audio input so i just ran the output into the input and recorded that but to do these it was a bit more complicated i actually took them apart and i ran uh wires from the speaker to my mixing console and that's how i did the sweep of these and i just you know had the microphone on the boom stand out in front hit go and swept it and then uh when i was finished i unsoldered the wires and put this thing back together and same here with the zx spectrum here is the very commodore 64 that i sampled for all the comical sounds and there's another question from jas asking have you ever thought about down sampling the 8-bit down sampling to 8-bit using simple 8-bit encode and d-code i'm not sure if i understand that question right have you have you thought about down sampling to to 8-bit using simple 8-bit encode and d-code i'm not sure jess if you want to rephrase that i don't quite understand either yeah um yeah how do you one question that i that i was wondering is because you come from a hardware engineering background how did that how did knowledge of that contribute to your approach to making the product itself you know i've done um i've done a lot of hardware over the years for various music industry and audio companies and i've also done a bit of embedded firmware so i already knew c and c plus plus so i had that that background but i also had the music production background so i wanted to start developing apps but for me i didn't know juice and it's still on my list of things to learn um so for me the path of least resistance was to try and do it in contact because the basic the basic framework was already there it was already set up to go now little did i know that i was going to need to do a lot of the scripting code um but for anybody who's interested in doing something for contact if you can program and see you can learn the ksp coding i mean it's very simple like that so i mean does my hardware background give me any extra experience i mean maybe maybe because i knew how to like hack into the speakers inside these things and wire them up or that kind of thing um i'm comfortable working on old vintage gear um i don't know if that quite answers your question um but i'm yeah yeah i think that i think that helps yeah that definitely helps answer it um so i'm going to share my screen again i want to show you um something and there's a little bit of trivia which is that uh that a lot of people don't know which is that teamer used to work on the contact team yeah yeah that's that's true that's true yes i worked on the contact uh the actual contact app itself yeah oh very creative instruments yeah that was quite a while ago it was around 2014 2015. sure you know yeah no that's great yeah well like 5.5 was like the big release that i kind of did a lot of work on but that was quite a long time ago when i originally developed this started developing it i was doing it for contact five and i wanted to license the contact player because not everybody has contact so i wanted to license the free contact player from native instruments so they said well you've got to do the contact six so that's when i hooked up to contact six um let's see here so um one of the things that i did in inside here also is the custom wave generator so just to knit this so we're in a consistent space here and so these converse 64 waves and this is the custom wave generator if you hit this edit button it pops open this little see look at that i just want to move it it doesn't move it's it's a graphic but it looks like a window and the custom wave generator allows you to create your own very low-fi waves um one of the things like for instance in the nintendo nes and in the game boy there are there's a like in the nes there's a triangle wave but it's actually made out of four bit steps so each step is one of 16 positions so vertically in here you can basically move one of 16 positions now i only did 16 steps horizontal because it's very resource hungry especially on my older macbook pro that i used when i developed this now on my newer macbook pro i don't seem to have a problem with that but not everybody has the fastest latest machines um so basically you can hear all these all these artifacts in the sound because it's it's very low fine nature now [Music] i wish i had a scope hooked up that i could show you this um so how did i do this let me tell you how i did this i basically created the narrow pulse wave that is 1 16 of the cycle and when you hit a note it is actually playing four slam excuse me 16 simultaneous notes or voices one for each step in the wave [Music] and they're offset in time to account for each of the 16 steps so that really is just a bunch of pulse waves being played uh in sequence to create the um the custom wave and it does get to be a little cpu heavy like here this one no presses taking seven percent of my cpu right now uh so originally i was going to do 32 steps but it just was too much so i did um just 16. [Music] on the gameboy you can actually do a 32 a 60 a 4 bit by 32 step uh custom sound that you can create on there [Music] but because of contact i limited it down to 16. [Music] but i had a lot of fun making this you know i'm into old vintage video games from the 80s and 90s and so i kind of went with that whole theme i did all the graphics i actually made all the graphics in of all apps the open source graphics editor nice so i mean i i don't have photoshop but i have an app called pixelmator but actually didn't do it all this kind of crazy anti-aliasing that it couldn't turn off in my other app so that's that was a nice thing about using again so wow timor did you want to did you understand jas's question about yes yeah yeah so i think uh their point was that um they were actually not talking about down sampling to 8-bit but use like 8-bit um bit depth like using like an 8-bit encoding for the actual audio and whether like that's something you considered i think that's for oh sorry not down sample but decreased bit death using 8-bit encoding and decoding right so that was the question that was what the question was about yeah i see you're saying so if i was you know there's kind of two different things going on um you know a lot of these old systems were just pulse waves and so there's really no reason to do that uh you could play that in whatever bit tip you want um then you you know the commodore 64 has sawtooths and things like that but that's done on a custom chip called the sid chip that most of you are familiar with um so i did i did not do any uh bit reduction on that no i guess that would be like a bit crusher right that's quite a different effect from like that is you know what you're going for in here yeah yeah i didn't talk you know if you know if it was like an amiga where you're playing back sounds through the chip on the amiga that is a true 8-bit kind of sample playback system um but here no i'm not doing uh anything like that the custom waves actually turn out to be 4bit i was wondering if you could talk a little bit just about the so so a lot of people want to start up their own plug-in companies want to sell their own products and i was wondering if you could just tell them a little bit about your marketing marketing ploy and your website and just a little bit about the brand and that side sure sure so i mean i've done it all so i mean i'm in addition to like doing all the coding and sound design and sampling create a little presets all the graphics for the product i i mean i handled the website and so for the website i created a shopify website but if you wanted to market your own products if you want to sell them yourself i created a business entity here in the uk so i created a private limited company in the uk that is renegade sound play and um so i did that and so then i opened up you know business banking i mean i did the whole it's it's a whole business that i'm running basically for this um and i've got more products in the works uh which hopefully will be coming up uh in the new year actually yeah um but oh yeah i mean it's as far as marketing goes i i did an interesting marketing exercise in the beginning so um when i started the business i created um i did a kickstarter and i created a kickstarter uh to mostly get the the word out about high score because nobody's heard of the product let alone uh my little company so i actually ran a kickstarter for a month and uh had various rewards and that kind of spread the word about high score and uh paid for the um pay for the licensing fee for native instruments which was nice oh yeah so i worked with native instruments and uh licensed the uh the contact player um they're very nice people very easy to work with um what else um josh any more questions in that vein anything specific that you want me to talk about as far as marketing i did a lot of facebook ads both during the kickstarter campaign and afterwards i ran kickstarter ads for a while um i've actually been facebook guys for a while um i you know i have i've done social media stuff you know it all comes down to like i'm just one person and there's only so many hours in the day these days so if you have other people you can work with to help with some of this i highly recommend it yeah what what a passcode sorry yeah go ahead go ahead timor please can i ask you a question is this something that you like live off now or is it just like a little side project and you have like doing something else it's it's provided a good chunk of income for a while i got to get some more products out but eventually i'd like to just live off of this uh eventually yeah i was i was going to ask oh there's a question actually from sono lumi how did you generate the consonants in speech synthesis is there a standard method yeah so um so like i sampled all those sounds i sampled them off of this this 1981 ti-99 4a computer i don't know if you can see this this section on the side is the speech synthesizer i don't know if you can see that right there yes you can see it so all the sounds were actually sampled off here so i um and like i said before originally i was just going for uh the vowel sounds because you know they're very musical and i was just going for that and as i was going along and i was just typing in words and having them having the ti uh computer say them back to me i said well wouldn't it be fun just to put a bank of speech sounds in there and people can just include them in their productions and if they want like some some classic phrases from all video games they can just get different keys to come up with some phrases so i just put individual words and that's how i did it so so there wasn't any kind of i didn't generate those sounds per se other than just uh the ti home computer did it i just kind of went into the basic programming language on the ti home computer typed in a few few lines of code and just uh played it played back the text for me yeah and then i just sampled that into audacity and sliced and diced it yeah i know i know japan is uh really happy about this because he loves analog modeling and analog gear so this is this is right up history for sure oh you may want to look up i'm sure there's plenty of articles on how they made the old speech synthesis like texas instruments did it i know it uses linear predictive coding um beyond that i can't speak much to it um there's a whole um there's a special cartridge for the computer you have all things the terminal emulator cartridge so you can turn your computer into a terminal but you when you added that cartridge in you then got you could jack into the speed synthesizer in the regular basic uh the built-in basic weird comp weird this computer also in hindsight you know i didn't know it as a kid when i was using this computer but it has a really weird system architecture um it has a 16-bit cpu that is bust eight bits out to all the peripherals so it's not really being taken advantage of um and when all the registers are residing ram actually so that they're not very fast but um but it was it was cool for the time but you look up texas instruments speech and you can learn all about it yeah i think it's the same chip they used in the in the texas instruments speaking spell actually amazing do we have any other questions or comments from the audience before we finish up i'll give a couple seconds for the delay of the video to catch up before i i see one that's maybe interesting uh cgo435 asks is there any legal stuff involved in sampling sounds from hardware and selling them the sounds that i sampled i would say no they're not actual you really run into legal problems if you're sampling from products that use samples because those samples are covered uh legally like a recording that you've done whereas i'm just sampling sounds made by raw sound generators even the speech is actually generated yeah so is it basically like you buy a guitar in a shop and then you sample that guitar that you bought is it basically like that yeah like that or you have a piano or you have a violin samples off of that yeah plus i think another key element of that not being a lawyer or anything is that you're not looking to market it as that product in software form as well so if i i seem to recall i don't know how many years ago now somebody went to the trouble of sampling a bunch of sounds from a roland d50 and marketed it as a kind of sample product that you know a vst that plays sounds of the d50 and roland went after them for that yeah because the d50 uses sample the tags so for for instance you could get away with sampling in 808 but you can't get away with sampling a 909 i believe it's a 909 i think it's samples really a lot of lawsuits out there [Laughter] a lot of lawsuits yeah so you wouldn't want to sample a core again one because that's all samples so the samples are covered by copyright law for recordings but you can simple a vintage synth where you just have an oscillating analog oscillator for instance generating a tone okay um looks like we're out of questions anything else from any anybody before we wrap it up i think we can wrap up um yeah but that was amazing thank you so much yes so much fun yeah that was a lot of fun you
Info
Channel: The Audio Programmer
Views: 200
Rating: undefined out of 5
Keywords:
Id: 941Wwagk6d0
Channel Id: undefined
Length: 32min 48sec (1968 seconds)
Published: Thu Dec 16 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.