stardance has been extended another month! the new deadline is october 31 :)

You are browsing as a guest. Sign up (or log in) to start making projects!

arth_mi

@arth_mi

Joined June 18th, 2026

  • 3Devlogs
  • 1Projects
  • 1Ships
  • 0Votes
Ship

Gleam is a FastAPI backend driving RGBW strips through a generic plugin API, so effects are built on exposed primitives (color, intensity, dim) rather than hardcoded. The tricky part was getting the architecture right first: syncing modules through a shared clock and separating color/intensity/white as distinct render layers. I’m especially proud of the Ambilight module, which captures HDMI output live and mirrors it onto the strip in real time, fully on-device with no cloud dependency.

  • 3 devlogs
  • 31h
Try project → See source code →
Open comments for this post

10h 51m 30s logged

Just finished a new module! The module is called audio_reactive and, as its name suggests, it reacts to the audio input provided (system default if parameter = None). It lights up the selected target as the sound gets louder.
It also features animations to make sudden transitions feel smoother.Here are the parameters for this module:

  • device: Audio input device name, or a portion of it (empty = system default)
  • color: Color of the light
  • min_intensity: Intensity when the input is silent [0.0 - 1.0]
  • max_intensity: Intensity at maximum volume [0.0 - 1.0]
  • sensitivity: Gain applied to the normalized level [0.1 - 5.0]
  • attack: Rise time in milliseconds (how quickly the light reacts to a louder sound)
  • release: Fall time in milliseconds (how slowly the light fades when the sound drops)
0
0
25
Open comments for this post

3h 17m 47s logged

Rewrite the entirety of the Ambilight module for better functionalities
and performances. I wrote an advanced algorithm to get a smoother result
in addition to more parameters :

  • device_index
  • edge
  • reversed
  • band_depth_percent
  • weight_exponent
  • sample_overlap_percent
  • saturation_boost
    -temporal_smoothing_tau

The main functionalities added are:

  • Advanced Color Averaging: Improved methods to calculate smarter average colors, such as sampling larger color bands or allowing LEDs to influence adjacent colors.
  • Temporal Smoothing: Introduction of “temporal_smoothing_tau” to ensure smoother, more natural color transitions over time.
  • Enhanced Immersion: Addition of “saturation_boost” and “weight_exponent” parameters to deliver a more vibrant and immersive visual experience.

For instance, the colors on the left terminal simulate the final result that would handle the left edge of the screen (using default parameters).

0
0
4
Open comments for this post

16h 30m 25s logged

Just finished the main functionalities of the ambilight module of my LED controller. It takes a stream from the edge of the screen (HDMI to USB, for example), then processes each frame to get the average color of the surrounding area.
I’m still working on a blur effect that would give a less detailed result for a better experience.
(Sorry for the bad recording quality, this was made on an old laptop.)

0
0
9

Followers

Loading…