aboutsummaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorViatrix2026-06-21 13:43:40 -0700
committerViatrix2026-06-21 13:43:40 -0700
commit91f92f5dc5e27c1cac4c651708c8fbca9904988f (patch)
tree89538247afb15f50c922ce37132faa12bb338d2a /README
Initial commitHEADmain
Diffstat (limited to 'README')
-rw-r--r--README34
1 files changed, 34 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..0b4ee1f
--- /dev/null
+++ b/README
@@ -0,0 +1,34 @@
+KEYGEN BY VIATRIX.COMPUTER FOR LIVEUPDATE CRESCENDO STREAMSITES
+
+streamkeygen.py generates a LiveUpdate Crescendo stream key. When the
+appropriate key is placed on an internet site, Crescendo will stream the
+MIDIs from the site in question.
+
+Example:
+ python3 ./streamkeygen.py http://example.com/midis/
+will create the stream.key file for all MIDIs within the
+http://example.com/midis/ folder.
+
+HOW CRESCENDO CHECKS FOR STREAM KEYS
+
+Given the URL of a MIDI file, Crescendo will assemble a stream.key URL by:
+
+1. Removing the fragment (the hash-sign and everything after it)
+2. Removing everything after the last slash
+3. Appending "stream.key"
+
+Examples:
+http://example.com/midis/song.mid → http://example.com/midis/stream.key
+https://example.com/midis/song.mid → https://example.com/midis/stream.key
+http://example.com/?midi=song.mid → http://example.com/stream.key
+http://example.com/?midi=/song.mid → http://example.com/?midi=/stream.key
+
+The stream key must be byte-for-byte the correct one for the URL from
+step (2). This means, for example, that the same stream key would not work
+for http:// and https:// versions of the same website, or versions of the
+same URL with different capitalization or percent-encoding. To circumvent
+this, the easiest way is to make your <EMBED>s use an absolute URL:
+ <embed width=200 height=55 src=http://example.com/midis/song.mid>
+Because old browsers are finicky with text encoding, streamkeygen.py auto-
+matically converts your URL to an ASCII-representable form, and prints a
+notice if the URL used is different from the URL inputted.