diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..80ef1d8 --- /dev/null +++ b/LICENSE @@ -0,0 +1,27 @@ +this program is released under the DWTW license + +This program is free software; you can redistribute it and/or modify it under the terms of the Do What Thou Wilt License. + +Boundless Public License +DO WHAT THOU WILT +TO PUBLIC LICENSE + +Version 2.55 + +Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it in full or in part is allowed without any restrictions. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. Do what thou wilt shall be the whole of the Law. + +DWTWL – a license with a single requirement: DO WHAT THOU WILT + +The license provides more freedom than any other one (such as GPL or BSD) and does not require saving the license text on copying. + +DWTWL – an accomplished and eligible license for free text, code and any other symbols (including the software, documentation and artwork). + +The license does not contain a "no warranty" clause. DWTWL can be used in countries that do not legally acknowledge the transition to public domain. + +Summary: + +An author-creator gives their source code to the world for free, without becoming distracted by worldly thinking regarding how and why the others will use it. diff --git a/README.md b/README.md index 42a5c19..4aba17c 100644 --- a/README.md +++ b/README.md @@ -2,4 +2,4 @@ dub techno shoutcast streams https://dub.tech.soundragon.su/ -under DWTWL 2.5 license: https://soundragon.su/license/license.html +under DWTWL 2.55 license: https://soundragon.su/license/license.html diff --git a/anthrstlsht.css b/anthrstlsht.css index fa90825..00b3af8 100644 --- a/anthrstlsht.css +++ b/anthrstlsht.css @@ -1,12 +1,8 @@ /** * anthrstlsht.css (another style sheet) v0.8 - * DWTWL 2.5 license: https://soundragon.su/license/license.html + * DWTWL 2.55 license: https://soundragon.su/license/license.html */ -html { - font-family: sans-serif; -} - body { margin: 0; font-family: Ubuntu, sans-serif; @@ -41,16 +37,12 @@ h4 { h5 { font-size: 0.7rem; - -moz-text-shadow:0 0 10px #fff; - -webkit-text-shadow:0 0 10px #fff; - text-shadow:0 0 10px #fff; + text-shadow:0 0 5px #fff; } h6 { font-size: 1.2rem; - -moz-text-shadow: 0 0 10px #fff; - -webkit-text-shadow: 0 0 10px #fff; - text-shadow: 0 0 10px #fff; + text-shadow: 0 0 5px #fff; } hr { diff --git a/id.php b/id.php index 43639d5..08d0b51 100644 --- a/id.php +++ b/id.php @@ -1,99 +1,68 @@ ') - { $text = 'streaming'; } else { $text = $exploded[6]; } - $id = str_replace("","",$text); + fputs($open,$postfix); + stream_set_timeout($open,'1'); + $read = fread($open,255); + $exploded = explode(",",$read); + if ($exploded[6] == '' || $exploded[6] == '') { + $text = 'streaming'; } else { $text = $exploded[6]; + } + $id = str_replace("","",$text); } else { return false; } fclose($open); return $id; - } - - $radioip = "93.100.61.75"; - $radioport = "8000"; - echo getID($radioip,$radioport); - echo ":;:"; - $radioip = "67.212.165.106"; - $radioport = "8144"; - echo getID($radioip,$radioport); - echo ":;:"; - $radioip = "93.100.61.75"; - $radioport = "8024"; - echo getID($radioip,$radioport); - echo ":;:"; -// // outdated: -// $radioip = "173.236.30.162"; -// $radioport = "8022"; -// echo getID($radioip,$radioport); -// // outdated: -// $radioip = "91.237.213.34"; -// $radioport = "8008"; -// echo getID($radioip,$radioport).":;:"; - $radioip = "79.120.39.202"; - $radioport = "9009"; - echo getID($radioip,$radioport); - echo ":;:"; - +} // Icecast // https://stackoverflow.com/a/17109654 -function getMp3StreamTitle($streamingUrl, $interval, $offset = 0, $headers = true) - { - $needle = 'StreamTitle='; - $ua = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36'; - - $opts = [ - 'http' => [ - 'method' => 'GET', - 'header' => 'Icy-MetaData: 1', - 'user_agent' => $ua - ] - ]; - - if (($headers = get_headers($streamingUrl))) - foreach ($headers as $h) - if (strpos(strtolower($h), 'icy-metaint') !== false && ($interval = explode(':', $h)[1])) - break; - - $context = stream_context_create($opts); - - if ($stream = fopen($streamingUrl, 'r', false, $context)) - { - $buffer = stream_get_contents($stream, $interval, $offset); - fclose($stream); - - if (strpos($buffer, $needle) !== false) - { - $title = explode($needle, $buffer)[1]; - return substr($title, 1, strpos($title, ';') - 2); - } - else - return getMp3StreamTitle($streamingUrl, $interval, $offset + $interval, false); - } - else - throw new Exception("Unable to open stream [{$streamingUrl}]"); - } - - echo getMp3StreamTitle('http://audio-online.net:8015/live', 19200); - echo ":;:"; - - $radioip = "sonus.fm"; - $radioport = "8000"; - $postfix = "GET /7.html?sid=3 HTTP/1.1\nUser-Agent:Mozilla\n\n"; - echo getID($radioip,$radioport,$postfix); - echo ":;:"; - - echo getMp3StreamTitle('http://pub2.diforfree.org:8000/di_dubtechno_hi', 19200); - echo ":;:"; - echo ":;:"; +function getIDice($streamingUrl, $interval, $offset = 0, $headers = true) { + $needle = 'StreamTitle='; + $ua = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36'; + $opts = [ + 'http' => [ + 'method' => 'GET', + 'header' => 'Icy-MetaData: 1', + 'user_agent' => $ua + ] + ]; + if (($headers = get_headers($streamingUrl))) + foreach ($headers as $h) + if (strpos(strtolower($h), 'icy-metaint') !== false && ($interval = explode(':', $h)[1])) + break; + $context = stream_context_create($opts); + if ($stream = fopen($streamingUrl, 'r', false, $context)) { + $buffer = stream_get_contents($stream, $interval, $offset); + fclose($stream); + if (strpos($buffer, $needle) !== false) { + $title = explode($needle, $buffer)[1]; + return substr($title, 1, strpos($title, ';') - 2); + } else + return getMp3StreamTitle($streamingUrl, $interval, $offset + $interval, false); + } else + throw new Exception("Unable to open stream [{$streamingUrl}]"); +} +echo "id:;:"; +echo stristr(getIDshout("93.100.61.75","8000")," * anima.sknt.ru",true); // Anima Amoris [Dub Techno] +echo ":;:"; +echo stristr(getIDshout("93.100.61.75","8024")," * anima.sknt.ru",true); // Anima Amoris [DubTech Mix] +echo ":;:"; +echo getIDshout("67.212.165.106","8144"); // arctic dub (sursumcorda) +// // outdated: +// echo getIDshout("91.237.213.34","8008"); // electronicmusic.fm - Dub +echo ":;:"; +echo getIDshout("79.120.39.202","9009"); // Radio Caprice - Dub Techno +echo ":;:"; +echo getIDice("http://audio-online.net:8015/live", 19200); // Loca FM Dub Techno +echo ":;:"; +echo getIDshout("sonus.fm","8000","GET /7.html?sid=3 HTTP/1.1\nUser-Agent:Mozilla\n\n"); // Chillkyway - outer space +echo ":;:"; +echo getIDice("http://pub2.diforfree.org:8000/di_dubtechno_hi", 19200); // Digitally Imported Dub Techno +echo ":;:"; +echo getIDshout("173.236.30.162","8022"); // Dub Techno Statio +echo ":;:"; +echo getIDice("http://94.130.113.214:8000/dubtechno", 19200); // Schizoid Dub Techno +echo ":;:"; ?> diff --git a/index.html b/index.html index 0613dc8..3813488 100644 --- a/index.html +++ b/index.html @@ -12,39 +12,40 @@ a8" `Y88 88 88 88P' "8a 88 a8P_____88 a8" "" 88P' "8a "8a, ,d88 "8a, ,a88 88b, ,a8" 88, "8b, ,aa "8a, ,aa 88 88 `"8bbdP"Y8 `"YbbdP'Y8 8Y"Ybbd8"' "Y888 `"Ybbd8"' `"Ybbd8"' 88 88 --> - - + + + dub tech - - @@ -59,45 +60,50 @@ a8" `Y88 88 88 88P' "8a 88 a8P_____88 a8" "" 88P' "8a
Anima Amoris [DubTech Mix]
http://93.100.61.75:8024
-
+
arctic dub (sursumcorda)
http://67.212.165.106:8144
-
- - - - +
Radio Caprice - Dub Techno
http://79.120.39.202:9009
-
- +
+
Loca FM Dub Techno
http://audio-online.net:8015/live
-
- +
+
Chillkyway - outer space
http://sonus.fm:8000
-
- +
+
Digitally Imported Dub Techno
http://prem2.di.fm/dubtechno_hi
+
+ +
Dub Techno Station
+
http://173.236.30.162:8022
+
- - -

+ +
Schizoid Dub Techno
+
http://schizoid.in:8000/dubtechno
+ +
+ + +