---
title: Making Adaptable Music Player
link: https://www.youtube.com/watch?v=S7FvdaMUTdc
source: youtube-com-tsodingdaily
published: 2026-07-10T12:34:38Z
updated: 2026-07-10T20:02:44Z
first_seen: 2026-09-08T10:17:10.166315Z
authors:
- Tsoding Daily
summary: |-
  Streamed Live on Twitch: https://twitch.tv/tsoding
  Enable Subtitles for Twitch Chat

  References:
  - https://github.com/tsoding/musializer
  - https://en.wikipedia.org/wiki/Gaussian_blur
  - Source Code: https://github.com/tsoding/hue_stretch

  Cool Musicians:
  - nu11 - https://nu11.bandcamp.com/
  - H-Mister - https://h-mister.bandcamp.com/
  - pilotredsun - https://pilotredsun.bandcamp.com/
  - sushi - https://www.youtube.com/@ThoughtExercise
  - ThronoCrigger - https://thronocrigger.bandcamp.com/
  - Karl Brueggemann - https://karlbmusic.bandcamp.com/
  - ko0x - https://ko0x.bandcamp.com/

  Chapters:
  - 00:00:00 - Day 1: Intro
  - 00:04:31 - Day 1: Start coding
  - 00:10:08 - Day 1: How colors are currently generated
  - 00:19:03 - Day 1: What is xx
  - 00:21:22 - Day 1: Hot-reloading
  - 00:37:02 - Day 1: Height of the Spectrogram
  - 00:42:28 - Day 1: Loading Thumbnail
  - 00:58:38 - Day 1: Preparing Data for Hue Frequency Analysis
  - 01:18:36 - Day 1: Hue Frequency Analysis
  - 01:30:23 - Day 1: Visualizing the Hue Frequencies
  - 01:38:18 - Day 1: Value and Saturation Thresholds
  - 01:51:47 - Day 1: Stretching Hues
  - 02:35:08 - Day 2: Improved Hue Streching Algorithm
  - 02:42:19 - Day 2: Actually coding the algorithm
  - 03:13:06 - Day 2: Factoring out the Algorithm Functions
  - 03:34:24 - Day 2: The problem with FFT size
  - 03:39:41 - Day 2: Thumbnail Images
  - 03:57:57 - Day 2: Integrating the Algorithm
  - 04:14:56 - Day 2: Invalid Song Thumbnail
  - 04:24:34 - Day 2: Checking out Songs
  - 04:26:28 - Day 2: Black and White Thumbnails
  - 04:28:54 - Day 2: Shuffling Colors
  - 04:34:08 - Day 2: Outro
  - 04:36:43 - Footnote: Gaussian Blur

  Topic: Implementing an algorithm that colors the Spectrogram of Sowon2 according to the colors of the thumbnail of the currently playing song.

  Twitch Chat in Subtitles generated by: https://github.com/kam1k4dze/subchat

  Support:
  - https://github.com/tsoding/donate#support-tsoding
content: extracted
html: 2026-07-10-making-adaptable-music-player.html
preview:
  file: 2026-07-10-making-adaptable-music-player.preview-4a9d84dda6c4.webp
  width: 256
  height: 192
  color: '#50304f'
images:
- source: https://i.ytimg.com/vi/S7FvdaMUTdc/maxresdefault.jpg
  original:
    file: 2026-07-10-making-adaptable-music-player.image-e1a0535c7852.jpg
    width: 1280
    height: 720
  variants:
  - file: 2026-07-10-making-adaptable-music-player.image-372a9d22faa1.webp
    width: 48
    height: 27
  color: '#46244a'
extra:
  thumbnail: https://i4.ytimg.com/vi/S7FvdaMUTdc/hqdefault.jpg
---

Streamed Live on Twitch: https://twitch.tv/tsoding\
Enable Subtitles for Twitch Chat

### References

- https://github.com/tsoding/musializer
- https://en.wikipedia.org/wiki/Gaussian\_blur
- Source Code: https://github.com/tsoding/hue\_stretch

### Cool Musicians

- nu11 - https://nu11.bandcamp.com/
- H-Mister - https://h-mister.bandcamp.com/
- pilotredsun - https://pilotredsun.bandcamp.com/
- sushi - https://www.youtube.com/@ThoughtExercise
- ThronoCrigger - https://thronocrigger.bandcamp.com/
- Karl Brueggemann - https://karlbmusic.bandcamp.com/
- ko0x - https://ko0x.bandcamp.com/

### Chapters

- [00:00:00](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=0) - Day 1: Intro
- [00:04:31](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=271) - Day 1: Start coding
- [00:10:08](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=608) - Day 1: How colors are currently generated
- [00:19:03](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=1143) - Day 1: What is xx
- [00:21:22](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=1282) - Day 1: Hot-reloading
- [00:37:02](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=2222) - Day 1: Height of the Spectrogram
- [00:42:28](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=2548) - Day 1: Loading Thumbnail
- [00:58:38](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=3518) - Day 1: Preparing Data for Hue Frequency Analysis
- [01:18:36](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=4716) - Day 1: Hue Frequency Analysis
- [01:30:23](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=5423) - Day 1: Visualizing the Hue Frequencies
- [01:38:18](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=5898) - Day 1: Value and Saturation Thresholds
- [01:51:47](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=6707) - Day 1: Stretching Hues
- [02:35:08](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=9308) - Day 2: Improved Hue Streching Algorithm
- [02:42:19](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=9739) - Day 2: Actually coding the algorithm
- [03:13:06](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=11586) - Day 2: Factoring out the Algorithm Functions
- [03:34:24](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=12864) - Day 2: The problem with FFT size
- [03:39:41](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=13181) - Day 2: Thumbnail Images
- [03:57:57](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=14277) - Day 2: Integrating the Algorithm
- [04:14:56](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=15296) - Day 2: Invalid Song Thumbnail
- [04:24:34](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=15874) - Day 2: Checking out Songs
- [04:26:28](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=15988) - Day 2: Black and White Thumbnails
- [04:28:54](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=16134) - Day 2: Shuffling Colors
- [04:34:08](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=16448) - Day 2: Outro
- [04:36:43](https://www.youtube.com/watch?v=S7FvdaMUTdc&t=16603) - Footnote: Gaussian Blur

Topic: Implementing an algorithm that colors the Spectrogram of Sowon2 according to the colors of the thumbnail of the currently playing song.

Twitch Chat in Subtitles generated by: https://github.com/kam1k4dze/subchat

### Support

- https://github.com/tsoding/donate#support-tsoding
