How Computers Can Write Guitar Solos (EXPLAINED)

Поділитися
Вставка
  • Опубліковано 8 лис 2024

КОМЕНТАРІ • 130

  • @DennisMartenssonOfficial
    @DennisMartenssonOfficial  3 роки тому +142

    Do you want even more in-depth videos? \o/

    • @bigman9905
      @bigman9905 3 роки тому +12

      Of course

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +3

      Good to know! : D

    • @brianbaugusmusic
      @brianbaugusmusic 3 роки тому +6

      Would love for you to explain one of your riff methods, and then have it generate a few different variations so we can hear where it has freedom to make changes, etc.

    • @matthoy2844
      @matthoy2844 3 роки тому +3

      Yep

    • @Etholux
      @Etholux 3 роки тому +2

      Absolutely! :)

  • @notsure1969
    @notsure1969 3 роки тому +74

    "What's your favorite metal band?"
    "Dennis Martensson's computer"

  • @transdjentergf1925
    @transdjentergf1925 3 роки тому +35

    This is EXACTLY where I was hoping this channel was heading towards

  • @Etholux
    @Etholux 3 роки тому +34

    I think more structure can be added to these solos with a few considerations for tweaks in the future
    It seems like currently, your rhythmic variation is coming from different rhythmic "speeds". (ex- this section is 16th notes, now it moves to dotted 8th notes, now 8th note triplets, etc.) Additional rhythmic patterns that can be played WITHIN sections of one type of subdivision can sound more intentional. Such as patterns of notes and rests that takes 2, 3, 4, 5, 6, 7, etc. notes to repeat.
    Some patterns where "I" is a note and "O" is a rest.
    (Patterns of 4 "I-O-I-I-I-O-I-I-I-O-I-I-I" "I-O-O-I-I-O-O-I-I-O-O-I-I") (Patterns of 5 "I-O-I-I-O-I-O-I-I-O-I-O-I-I" "I-I-O-I-O-I-I-O-I-O-I-I-O-I-O-I") etc.
    Different rhythms also feel more stable or more intense not just based on their speed, but also where they land relative to the pulse of the song. For example, an 8th note pattern that heavily emphasizes the off-beats feels much more intense and driving than an 8th note pattern that falls only on the beats. Likewise, notes that fall on the 2 and the 4 feel more intense than notes that fall on 1 and 3, due to how these types of djent grooves (and a lot of western music in general) emphasize beats 2 and 4 with the intense accented sound of a snare drum, while beats 1 and 3 are typically cemented with the very stable sound of the kick drum.
    So, your "intensity" system should not just account for rhythmic speed, but also where the notes fall relative to each beat.
    When creating a solo, ideas that are repeated throughout the solo with small variations give the it a better sense of cohesion. So a chance for a solo to have a higher chance of repeating melodic/rhythmic ideas (with slight variations) that have already been played before in the solo could help make the solos feel more cohesive?

    • @keris3920
      @keris3920 3 роки тому +2

      Just to throw out ideas to achieve something like a theme, you could come up with some sort of melody and then convolve it with a random sequence to get a bunch of sequences that sound familiar but are not the same.

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +8

      Good suggestions! I'll keep them in mind as I continue to work on the project! (:

    • @Etholux
      @Etholux 3 роки тому

      @@DennisMartenssonOfficial Hah, what a cool coincidence that Adam Neely just made a video talking about this rhythmic concept a few weeks after I made this comment!
      ua-cam.com/video/DcrYaRJD_e8/v-deo.html&ab_channel=AdamNeely

  • @robbxander
    @robbxander 3 роки тому +13

    You should name this project the 'Per Nilsson Simulator' (Scar Symmetry and Meshuggah's live touring guitarist for the last four years). Dude is on another level.

  • @kyoobqa
    @kyoobqa 3 роки тому +27

    Next step, compress the hell out of these drums, let it change keys, and add pinch harmonics. I'm sure I've heard dissonant harmonies in the 10-hour djent video and I loved all 10 hours of it. Here before your channel blows up, lad. Keep it up!

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +9

      Glad you liked it! The new version I'm working on actually has support for variable tunings and scales! Already sounding so much better! And yeah, need to sample some pinch harmonics as well and implement that, that would be dope! : D

    • @kyoobqa
      @kyoobqa 3 роки тому +2

      @@DennisMartenssonOfficial And bends/vibratos! Imagine how _succulent_ that would be. Can't wait for the new 10-hour playlist already. :D

  • @cyrusf
    @cyrusf 3 роки тому +11

    Amazing! I know a viewer in a recent video suggested turning the samples you've recorded for this project into a commercial library, but to take that idea one step further...If you ever released accompanying software that incorporated these generative composition tools and put them in the hands of the layperson...well, that'd be industry-disrupting to say the least! I dream of of such a day. :D

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +6

      Glad you like it! Yeah, I've been toying around with different ways to "release" this program to the public, hopefully I'll get something out soonish! : D

    • @fonesrphunny7242
      @fonesrphunny7242 2 роки тому +1

      There is already Shreddage 2. It contains all the samples and a bunch of logic to make it sound more natural. Avoids note repeats, alternating between up/down strokes, hammer ons/pull offs, taking into account hand position, manual string/fret selection, certain extras like heavy palm mute chugs and slides, randomized timing ....
      It requires a bit of learning, but even if you just feed it some MIDI from GuitarPro and distort it a bunch it doesn't sound bad at all and it costs about the same as a cheap guitar starter set.
      There are probably other 'sample packs' like this available, but that's the one I happen to know.

    • @cyrusf
      @cyrusf 2 роки тому +2

      @@fonesrphunny7242 Ah yeah! I use Shreddage 3 and love it. Absolutely phenomenal samples! I was more referring to the underlying algorithms that could be used as generative composition tools rather than the sample set itself. Even combining a library like Shreddage with the available MIDI sequencers/plugins out there today, nothing comes close to the kind of procedural performance generation demonstrated here.

  • @VictorRyuichi
    @VictorRyuichi 3 роки тому +3

    Underrated channel. Keep up the awesome work!

  • @Stolid
    @Stolid 3 роки тому +4

    I don't have anything clever to say, just want to say that I have stayed in awe of all you do, to this day, and still do. Keep going Dennis, this is phenomenal stuff

  • @taras-ablamsky
    @taras-ablamsky 3 роки тому +2

    Oh man, I think you’ve just killed the whole djenre!
    Amazing work!
    Solos have some room for improvement, like recycling melodies and motifs, but the whole thing is just awesome!
    Also, your channel most likely to explode in the near future. Good luck! All the best!

  • @AUGamerTV
    @AUGamerTV 3 роки тому +4

    Honestly the coolest channel I have stumbled across recently. Love your videos to death
    This is a perfect intersection between my two favourite fields, didn't know I needed this.
    Please keep up the good work man. You've inspired me. I know what my next summer project is going to be :D

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +1

      Awesome to hear. Feels like the perfect intersection of two of my favourite fields as well. (:
      And yeah, definitely, if you wanna do something similiar, go for it! Looking forward to your 10 hour video! ;)

  • @Henry14arsenal2007
    @Henry14arsenal2007 3 роки тому +6

    Its amazing that you can program it to emulate the style of human playing that was in itself supposed to emulate mechanical/digital playing in the vein of Meshuggah and jazz fusion.

  • @lordvipul
    @lordvipul 3 роки тому +2

    Great video, learnt a lot. Nicely explained, keep 'em coming.

  • @Raichulula
    @Raichulula 2 роки тому

    damn that "Bloody Epiphany" solo was sick

  • @berzerkskwid
    @berzerkskwid 3 роки тому

    toward the end of the ruleset 1 showcase I was thinking how much better it'd sound with varying rhythms. That's about the time you switched to the ruleset 2 walkthrough...
    I love this project, keep up the great work!

  • @KaiMCGRPS
    @KaiMCGRPS 2 роки тому +1

    this is actually amazing

  • @tulpasconstructor2711
    @tulpasconstructor2711 3 роки тому +1

    And awesome! I get the process vids same day as I am shown the 10hr dj0nt! Thanks!

  • @heathazeshadow
    @heathazeshadow 3 роки тому

    Really enjoying the stuff you are making in your black box of goodness, please keep doing it!

  • @TheFalcoSparverius
    @TheFalcoSparverius 3 роки тому +3

    This is pretty awesome! Have you thought about trying to implement things like increasing the likelihood of playing triad notes based on the backing rhythm sections notes? Something like increasing the likelihood of playing triad notes based on note length or at the end of the more rapid rhythic figures (With Ruleset 2) would probably help to make it sound more natural. Or even including something that generates pentatonic licks to play into the trope. I have only an extremely rudimentary understanding of python code, but as a musician those are the kind of things I think would help it to make less "useless garbage" as I believe you said.

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +1

      Yeah, definitely. Great suggestions. I'll keep them in mind as I continue working on this!

  • @cikarda
    @cikarda 3 роки тому

    more please. This is some next level stuff

  • @chizuru6921
    @chizuru6921 3 роки тому

    I hope you keep expanding, and cover other metal genres too :) I bet you could make a hell of a Power Metal algorithm.

  • @AlterationProduction
    @AlterationProduction 3 роки тому +1

    I've watched each video like 15 times and I am still mind blown. Keep these videos coming! any plans to release a program or a version of this program for others to use as a writing tool? Maybe it could just output midi if that's easier than rendered audio. Please keep us updated! I volunteer to pre alpha test.

  • @flake8382
    @flake8382 3 роки тому

    Leads and solos for days!

  • @ryandavis3408
    @ryandavis3408 3 роки тому

    What you’re doing is amazing

  • @gabopenav
    @gabopenav 3 роки тому +2

    You are the future mate!! Or may I call present.

  • @dannyrivers2044
    @dannyrivers2044 3 роки тому +1

    So sick! Just subscribed to make sure I see all your in-depth videos. I'm curious on how you got DjinnBass and GGD to work with your engine. Did you use the same code as you did with your guitar for loading and playing samples?

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +3

      Thanks a lot! Yeah, it works the same as the guitar samples, I just exported (mixed) samples from both GGD and Djinnbass, so all the program sees are just a bunch of sound files. (:

  • @LukeYoungBass
    @LukeYoungBass Рік тому

    Would love to see your recording and editing process for making samples! Incredible project my friend.

  • @iorch82
    @iorch82 3 роки тому

    I used to write lots of solos - even songs - in a similar way by adding random sequences into the guitar pro editor. Some of them were recorded professionally at several dead projects. You can get awesome stuff that otherwise would be impossible to come with

  • @ESPSJ
    @ESPSJ 2 роки тому

    this is awesome, i never even though that was possible!

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  2 роки тому +1

      Glad you liked it! I think most things is possible, anything that you can teach a human you can teach a computer, it just needs to be explained in a very specific way. ;)

  • @capoman1
    @capoman1 5 місяців тому

    Your programming demonstrates that "ai" as we usually think of it can just be a way of translating real world concepts, like how guitar players physically play and how they choose notes, and programming them. So it's not always that software is "learning" or "thinking" at all, the programmer has chosen the rules. That is creative and an art of its own.
    Imagine the simple example of a programmed chess player. The programmer decides what the player will "think" to decide it's next move. The program needn't "learn" if it made good choices. If the player keeps losing, the programmer changes the code.

  • @IBZChicken
    @IBZChicken 3 роки тому

    Loving this! Whenever guitarists play a long note they can't help but play vibrato. It's almost impossible not to! 😄 So you could add a vibrato if note is a certain length. Would make those parts sound more natural. Love your work!

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  2 роки тому +1

      Possible, yeah, but tricky to implement! Would be cool though! It's on my endless to-do list, haha

  • @SergeyPupkoMusic
    @SergeyPupkoMusic 3 роки тому +1

    Epic stuff... May I ask, Did you code the visualizer as well?

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +3

      Thanks! And yep! It's all implemented in my game engine, so the visualization is essentially just some 3D objects and some lights along with some volumetric lighting! (:

  • @hurblegurble1512
    @hurblegurble1512 3 роки тому +2

    This is amazing ❤️❤️❤️😭😭😭❤️❤️❤️

  • @imacashew.
    @imacashew. 3 роки тому +2

    I think a chance for rests would be beneficial.
    Creat more space at times.
    1/16 rest
    1/8 rest
    1/4 rest
    And maximum 1/2 rest

  • @flake8382
    @flake8382 3 роки тому +1

    Hey regarding your algorithm...
    3:17 So you are picking scale degree hap-hazardly based on distance?
    Might I instead advise to pick notes that either favour the TONIC, DOMINANT or SUBDOMINANT also fit within the current chord.
    If you add a weighting function for the scale degree, ie: first degree is 20% chance to be played, second degree, 5%, so on so fourth, I think the leads will really be interesting!

  • @odun5668
    @odun5668 3 роки тому +5

    Writes better solos than me lol, I think a main thing that made the solos feel a little out of place was that it’s not generating its rhythm from the base track, if there was influence on the solo from the 0’s and the time in between it might sound cool, not sure though

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +4

      Me too, haha. x) Yeah, that's definitely an improvement to be done in the future. If it could dynamically follow the underlying rhythm from time to time, that would be awesome!

  • @fiedel
    @fiedel 3 роки тому

    Cool project. It somehow makes me think of playing Descent 2 and imagine this generating a dynamic soundtrack that gets more intense the lower I'm on health or something :)

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому

      Thanks! Never played Descent 2, but yeah a system like this in a game would be AWESOME!

    • @fiedel
      @fiedel 3 роки тому

      @@DennisMartenssonOfficial At least for me it was the first game featuring a pretty aggressive industrial/guitar oriented soundtrack back in the days (when you had to haul chunky PC's and CRT's to a place to enjoy a network game with some friends :).

  • @daydreamindaze
    @daydreamindaze 3 роки тому +1

    Your English is really good.

  • @cikame
    @cikame 3 роки тому +2

    I reckon some harmonics and bends on some of the held notes would go a long way, also a chance of a break in the solo letting some of the rhythm in before starting up again, maybe even lots of breaks in the solo, could have interesting results.
    It's already super impressive though.

    • @n484l3iehugtil
      @n484l3iehugtil 3 роки тому +1

      I can't begin to imagine how many bends Dennis would have to record for that, lol

    • @cikame
      @cikame 3 роки тому

      @@n484l3iehugtil I was thinking do it digitally if it's possible for the engine to do that, it would sound artificial but it already sounds a bit artificial so it might be worth trying.

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +2

      Yeah, definitely! This is mostly an "introductory" exploration of this concept, would be fun to explore more of it in the future, making it more intelligent! And yeah, I have thought about bends, different ways to do that. Would probably try to fake it with automated pitching rather than recording thousand of new samples! (:

  • @elementsofphysicalreality
    @elementsofphysicalreality 2 роки тому +1

    If you wanted to do this you would have to create a pallet of sample licks, and then create a series of variations that can be methodically applied to all of the original samples. Then organize a flow of how the licks should be arranged to develop emotions. Its impossible. You would have to tell the computer a few different ideas to get the notes in and out of landing on chord tones. Creating contrast. The lines that you have lack resolutions. They need to end on more familiar ideas outlining where home is.

  • @daydreamindaze
    @daydreamindaze 3 роки тому

    What scale are you using? Sounds epic!

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +1

      Using two different in this video! Honestly don't know the names of either one, just played around a bit and picked the notes that sounded good together. (:

    • @daydreamindaze
      @daydreamindaze 3 роки тому

      @@DennisMartenssonOfficial I don't suppose you remember which notes? 😅 Sorry, I'm bad at guitar and even worse at learning by ear. I've just been listening to the music you have on spotify on repeat for the last week, seriously I've probably gone through all of it 3 or 4 times. I'd love to be able to play around with the scale you used on those tracks. I haven't picked up my guitar in a long time but those songs have me feeling inspired again.

  • @glebs5751
    @glebs5751 2 роки тому

    thats epic!

  • @tusharjamwal
    @tusharjamwal 2 роки тому

    I'd love to see this performed live ;)

  • @VillaCarrington
    @VillaCarrington 3 роки тому

    As a 3d artist and guitarist, I'm jealous as fuck lmao! I was think about that kind of stuff but I've lost my coding skills decades ago. Good fucking work mate!

  • @ryer9646
    @ryer9646 3 роки тому +1

    Lol 5:50. "Broken Tesseract". Pretty much.

  • @B3Band
    @B3Band 2 роки тому +1

    0:20 it's funny that you use that riff as the example, because it shows up in like half of the "tracks" in that video.

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  2 роки тому +1

      Haha yeah, just happened to be so. Need to tone that riff down massively for the next iteration!

  • @thereGoMapo
    @thereGoMapo 3 роки тому +2

    plot twist: there is a human behind the computer playing the solos

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому +1

      Haha, if only I could play these solos x'D My computer is better than me unfortunately : D

  • @capoman1
    @capoman1 5 місяців тому

    What software do you use for the visuals.

  • @glebs5751
    @glebs5751 2 роки тому +1

    imagine this shit is used to djenerate dynamic soundtrack for some kind of Doom Ethernal game)

  • @MrTubularBalls
    @MrTubularBalls 3 роки тому +1

    So this is what the death of Periphery sounds like.

  • @devidwhite4768
    @devidwhite4768 3 роки тому

    I don't know if the "Miseries" title was intentional but it made me scream

  • @autoattackband
    @autoattackband 3 роки тому

    I wonder if you could add bends somehow? idk man. The robot uprising is gonna have a great OST

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому

      Yeah, that would add a ton of depth to it! Might be faked convincingly with some pitching. Need to look into that. : D

  • @СеменБердюгин
    @СеменБердюгин Рік тому

    When maths meets music lol)

  • @encompassthyeclipse7278
    @encompassthyeclipse7278 2 роки тому

    Why do I see Tosin in my mind playing all of this stuff?

  • @chris.bradshaw
    @chris.bradshaw 2 роки тому

    Note bends (boomer) and vibrato would be the next level

  • @ianvaldes3073
    @ianvaldes3073 3 роки тому

    great now even computers are better than me at guitar

    • @DennisMartenssonOfficial
      @DennisMartenssonOfficial  3 роки тому

      Haha, well that makes two of us at least.. x*D I can't play even half the stuff it's generating, haha

  • @roguebiscuitmusic442
    @roguebiscuitmusic442 2 роки тому +1

    So what your trying to tell me is the quit writing music? Make a generator instead. *Writes down notes

  • @eneada2618
    @eneada2618 3 роки тому +3

    You're delving too far