Real Python Podcast Episode #210 Title Artwork

Episode 210: Creating a Guitar Synthesizer & Generating WAV Files With Python

The Real Python Podcast

Jun 28, 2024 55m

What techniques go into synthesizing a guitar sound in Python? What higher-level programming and Python concepts can you practice while building advanced projects? This week on the show, we talk with Real Python author and core team member Bartosz Zaczyński about his recent step-by-step project, Build a Guitar Synthesizer: Play Musical Tablature in Python.

Episode Sponsor:

Bartosz shares how he had built an early prototype of the guitar synth using a different language. He describes recreating the Karplus-Strong algorithm in Python to create the plucked guitar sounds. We discuss teaching advanced Python concepts while guiding readers through constructing a complete project.

We also dig into reading and writing WAV files in Python, using Spotify’s pedalboard library, implementing Poetry in a project, and designing a file format for guitar tablature.

This episode is sponsored by Mailtrap.

Topics:

  • 00:00:00 – Introduction
  • 00:02:04 – Reading and writing WAV files in Python
  • 00:04:48 – What did you want to learn about the topic?
  • 00:08:02 – Finding new ways to explain Python concepts
  • 00:09:52 – Turning audio into plots and visualizations
  • 00:12:11 – Using Python for synthesis and the guitar synth project
  • 00:13:19 – What is your music background?
  • 00:18:36 – Sponsor: Mailtrap
  • 00:19:11 – First prototype of the project
  • 00:22:23 – What does the project cover?
  • 00:25:08 – Audio examples of the output
  • 00:26:31 – Digging into the algorithm
  • 00:31:40 – Convolution reverb
  • 00:34:15 – Physical modeling and pedalboard
  • 00:38:08 – Video Course Spotlight
  • 00:39:31 – What Python concepts are you practicing?
  • 00:41:11 – Using Python poetry
  • 00:43:00 – Why use YAML for the TAB files?
  • 00:46:13 – What does it mean to be a polyglot programmer?
  • 00:48:37 – Potential upcoming Real Python resources
  • 00:52:10 – How can people follow your work online?
  • 00:52:30 – What do you want to learn next?
  • 00:54:56 – Thanks and goodbye

Show Links: