metadata

Check-in [71c1004e97]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Prep for putting on sources.vsta.org
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256:71c1004e97dca661994c3a5b79f18e9a46d6e7cc76944cfe180e3347378d37c1
User & Date: vashon 2018-06-19 23:57:06
Context
2018-06-19
23:57
fs extras cleanup check-in: 09f1914815 user: vashon tags: trunk
23:57
Prep for putting on sources.vsta.org check-in: 71c1004e97 user: vashon tags: trunk
23:56
Get resumption after idle shut-off working. check-in: 61c081ac82 user: vashon tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Added README.md.



















































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
This is a chore-based server to provide long-polled metadata of
an internet streaming station which uses the Icecast encapsulation
to provide metadata (generally "artist - title" and album art URL).

Although web browser can *play* internet streams, I haven't found
any which accept, record, and make the Icecast metadata available.
I knocked on the doors at the W3C and didn't really pick up any
interest.  So if you want your radio streaming web app to know
about metadata, you have to do it off-browser.

Doing this in the browser would be much, much better.

Anyway.

This server accepts requests on /metadata/<who>.json[?gen=<int>]
and send back JSON of "key: value" of all the values received
from <who>'s metadata.  It fires up a stream to <who> and pulls
metadata from it, when possible sharing its information across
multiple clients.

If your "gen" is less than the current generation of information, your
request is completed immediately with the current values.  Otherwise
your request is held (i.e., long polling) until the stream changes.
Typically your web app is XHR'ing these, and updating the UI with the
current information as it changes.