<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Subsystems and Components on EdS</title><link>https://cdeever.github.io/eds/docs/architecture/subsystems/</link><description>Recent content in Subsystems and Components on EdS</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://cdeever.github.io/eds/docs/architecture/subsystems/index.xml" rel="self" type="application/rss+xml"/><item><title>Now Playing</title><link>https://cdeever.github.io/eds/docs/architecture/subsystems/now-playing/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cdeever.github.io/eds/docs/architecture/subsystems/now-playing/</guid><description>&lt;h1 id="now-playing"&gt;Now Playing&lt;a class="anchor" href="#now-playing"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;Knowing what is playing is the one thing every other subsystem needs, so it&#10;is a subsystem of its own and the others are built on it. It hears or asks&#10;each source of music, decides which one is current, completes what it was&#10;told, and publishes one answer for everyone else.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://cdeever.github.io/eds/docs/architecture/subsystems/now-playing/now-playing.svg"&gt;&lt;img src="https://cdeever.github.io/eds/docs/architecture/subsystems/now-playing/now-playing.svg" alt="Now Playing: the turntable, iTunes and Spotify reported by drivers on the agent Pi, the power beacon, and nowplayd on the workload asking Discogs and the catalogs." /&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>LP Light Show</title><link>https://cdeever.github.io/eds/docs/architecture/subsystems/lp-light-show/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cdeever.github.io/eds/docs/architecture/subsystems/lp-light-show/</guid><description>&lt;h1 id="lp-light-show"&gt;LP Light Show&lt;a class="anchor" href="#lp-light-show"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;The first subsystem, and EdS&amp;rsquo;s first idea of many: a record&amp;rsquo;s cover becomes&#10;the light on its stand. Prop the jacket on the LP stand and it is illuminated in&#10;its own colors, set slowly moving, for as long as the record plays. It is&#10;the first of what may be several light shows, which is why it is named for&#10;the LP.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://cdeever.github.io/eds/docs/architecture/subsystems/lp-light-show/lp-light-show.svg"&gt;&lt;img src="https://cdeever.github.io/eds/docs/architecture/subsystems/lp-light-show/lp-light-show.svg" alt="LP Light Show: the cover and its look from Now Playing, lightd and palette on the workload, and the LP stand in the vinyl listening room." /&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Remote Display</title><link>https://cdeever.github.io/eds/docs/architecture/subsystems/remote-display/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cdeever.github.io/eds/docs/architecture/subsystems/remote-display/</guid><description>&lt;h1 id="remote-display"&gt;Remote Display&lt;a class="anchor" href="#remote-display"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;A small touch screen that shows the cover of whatever is playing, and can&#10;change it&#10;(&lt;a href="https://cdeever.github.io/eds/docs/architecture/decisions/0020-a-touch-screen-that-can-change-what-plays/"&gt;ADR-0020&lt;/a&gt;).&#10;It is a stand-alone display and remote: for simple things, play or pause,&#10;back and next, it is handier than the phone app, and it is a way to enjoy&#10;the cover art in another room.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://cdeever.github.io/eds/docs/architecture/subsystems/remote-display/remote-display.svg"&gt;&lt;img src="https://cdeever.github.io/eds/docs/architecture/subsystems/remote-display/remote-display.svg" alt="Remote Display: the cover screen reads the current track and its small cover from the broker, and sends a press to nowplayd, which passes it to the current source&amp;rsquo;s driver and its player." /&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Voice Request</title><link>https://cdeever.github.io/eds/docs/architecture/subsystems/voice-request/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cdeever.github.io/eds/docs/architecture/subsystems/voice-request/</guid><description>&lt;h1 id="voice-request"&gt;Voice Request&lt;a class="anchor" href="#voice-request"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;An album played because someone asked for it out loud: &amp;ldquo;play Aerosmith&amp;rsquo;s&#10;first album&amp;rdquo;, and it plays&#10;(&lt;a href="https://cdeever.github.io/eds/docs/architecture/decisions/0042-a-request-is-heard-on-the-workload/"&gt;ADR-0042&lt;/a&gt;).&#10;It is in development: one device listens so far, and it sits wherever it is&#10;being worked on. Ears are meant to be on several devices throughout the&#10;house, or on one carried from room to room.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://cdeever.github.io/eds/docs/architecture/subsystems/voice-request/voice-request.svg"&gt;&lt;img src="https://cdeever.github.io/eds/docs/architecture/subsystems/voice-request/voice-request.svg" alt="Voice Request: the ears send a request as a WAV to the broker; voiced on the workload has scribe write it down, counts albums in MusicBrainz, chooses from the library index, and sends play_album to Now Playing." /&gt;&lt;/a&gt;&lt;/p&gt;</description></item></channel></rss>