diff options
author | Anton Luka Šijanec <anton@sijanec.eu> | 2023-03-17 21:51:00 +0100 |
---|---|---|
committer | Anton Luka Šijanec <anton@sijanec.eu> | 2023-03-17 21:51:00 +0100 |
commit | 07a3bc3c224264fe012d4a24e177f597bf4b0f65 (patch) | |
tree | f15b23af7761bb71b843aa91fa2e55dccf89713a | |
parent | radio (diff) | |
download | travnik-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.php | 39 |
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> |