summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Luka Šijanec <anton@sijanec.eu>2023-03-17 21:51:00 +0100
committerAnton Luka Šijanec <anton@sijanec.eu>2023-03-17 21:51:00 +0100
commit07a3bc3c224264fe012d4a24e177f597bf4b0f65 (patch)
treef15b23af7761bb71b843aa91fa2e55dccf89713a
parentradio (diff)
downloadtravnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.tar
travnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.tar.gz
travnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.tar.bz2
travnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.tar.lz
travnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.tar.xz
travnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.tar.zst
travnik-07a3bc3c224264fe012d4a24e177f597bf4b0f65.zip
-rw-r--r--radio/radio.php39
1 files changed, 34 insertions, 5 deletions
diff --git a/radio/radio.php b/radio/radio.php
index 4c8bf3f..28eecc0 100644
--- a/radio/radio.php
+++ b/radio/radio.php
@@ -1,4 +1,7 @@
<?php
+if ($_SERVER["REQUEST_SCHEME"] == "https") {
+ header("location: http://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
+}
$sock = stream_socket_client("unix:///tmp/ls", $errno, $errstr);
if (!empty($_REQUEST["s"])) {
fwrite($sock, "travnik.skip\r\n");
@@ -11,23 +14,49 @@ $uptime = trim(str_replace("END", "", fread($sock, 256)));
fwrite($sock, "travnik.remaining\r\n");
usleep(100000);
$remaining = trim(str_replace("END", "", fread($sock, 256)));
-fwrite($sock, "travnik.metadata\r\n");
-usleep(100000);
-$metadata = str_replace("\r", "", trim(str_replace("END", "", fread($sock, 65536))));
-fwrite($sock, "quit\r\n");
+fwrite($sock, "travnik.metadata\r\nquit\r\n");
+$buf = "";
+while (!feof($sock)) {
+ $buf .= fread($sock, 200000);
+}
+$metadata = str_replace("\r", "", trim(str_replace("Bye!", "", str_replace("END", "", $buf))));
?>
+<meta name=viewport content='width=device-width, initial-scale=1.0'>
+pretok v najvišji kvaliteti brez izgub (FLAC) -- prenaša veliko podatkov:
+<br>
+<audio controls>
+ <source src=http://tranzistor.sijanec.eu:8000/travnik type="audio/ogg">
+</audio>
+<br>
+pretok v kompresirani kvaliteti (OPUS) -- manj prenesenih podatkov:
+<br>
+<audio controls>
+ <source src=http://tranzistor.sijanec.eu:8000/travnik.opus type="audio/ogg">
+</audio>
+<br>
radijski pretok neprestano teče že <?= htmlspecialchars($uptime) ?>
<br>
do konca komada je še <?= gmdate("H:i:s", intval($remaining)) ?>.
<br>
<form method=post>
-<input type=submit name=s value="preskoči na naslednji komad" />
+<input type=submit name=s value="preskoči na naslednji komad (preberi pravila spodaj)" />
</form>
<?php
if (!empty($_REQUEST["p"])) {
?>
<b>poročilo: zahteva za preskok komada je bila uspešno poslana. počakaj nekaj sekund, da se zgodi crossfade. preveri, da si na koncu pretoka!</b>
<?php
+} else {
+?>
+pravila preskakovanja -- kdaj je dovoljeno preskočiti komad:
+<ul>
+<li> če se ne predvaja glasba, temveč govor
+<li> če je posnetek slabe kvalitete (slabi posnetki iz kaset, slabi live/nestudijski posnetki, ...)
+<li> če si edini poslušalec radia (preveri <a href=http://tranzistor.sijanec.eu:8000>tukaj</a>)
+<li> če je na števcu do konca komada več kot 5 minut (pred pritiskom gumba <a href=?>ozveži stran</a>, da se prikaže posodobljen števec)
+</ul>
+radio namreč lahko posluša več ljudi, preskok komada pa se seveda zgodi pri vseh, kar je lahko moteče. v primeru prevelikega subjektivnega ocenjevanja bom funkcijo odstranil.
+<?php
}
?>
<br>