<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://revspace.nl/wiki/index.php?action=history&amp;feed=atom&amp;title=PixelflutWaveform</id>
	<title>PixelflutWaveform - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://revspace.nl/wiki/index.php?action=history&amp;feed=atom&amp;title=PixelflutWaveform"/>
	<link rel="alternate" type="text/html" href="https://revspace.nl/wiki/index.php?title=PixelflutWaveform&amp;action=history"/>
	<updated>2026-05-17T01:48:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://revspace.nl/wiki/index.php?title=PixelflutWaveform&amp;diff=22110&amp;oldid=prev</id>
		<title>Bertrik Sikken: Created page with &quot;== The plan == The plan is to sample audio using a microphone, build a waveform display visualisation, send it over pixelflut to a display  To sample audio, I plan to use an E...&quot;</title>
		<link rel="alternate" type="text/html" href="https://revspace.nl/wiki/index.php?title=PixelflutWaveform&amp;diff=22110&amp;oldid=prev"/>
		<updated>2019-06-10T12:29:39Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== The plan == The plan is to sample audio using a microphone, build a waveform display visualisation, send it over pixelflut to a display  To sample audio, I plan to use an E...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== The plan ==&lt;br /&gt;
The plan is to sample audio using a microphone, build a waveform display visualisation, send it over pixelflut to a display&lt;br /&gt;
&lt;br /&gt;
To sample audio, I plan to use an ESP32 and an I2S digital microphone.&lt;br /&gt;
I already have those available&lt;br /&gt;
&lt;br /&gt;
The visualisation shows the raw waveform.&lt;br /&gt;
In order to get a more-or-less stable picture, each new frame is chosen such that it resembles the previous frame.&lt;br /&gt;
This is done with a cross-correlation. An FFT can be used for this.&lt;br /&gt;
Suppose the display is 128 pixels wide, a piece of audio is sampled twice as wide (256 samples) and we find the 128-sample wide section that most resembles the existing waveform.&lt;br /&gt;
&lt;br /&gt;
Pixelflut is a protocol to send image data to a display, you can send one pixel per message in a kind of ASCII format.&lt;br /&gt;
&lt;br /&gt;
The display is a 128x16 RGB display, build out of LED panels.&lt;/div&gt;</summary>
		<author><name>Bertrik Sikken</name></author>
	</entry>
</feed>