MainRadiotalkCustom
Технологии вещания, софт, скрипты
3   •   Посмотреть все темы

Вывод название трека на сайт. Скрипт. Проблема.

 

31
Никита @Антонович
ElectroNik пишет:

Хостинг у тебя платный?

ага!

6245
Тарас @tarasian666
echo file_get_contents('http://90.151.96.164:8000/status.xsl');

если это не покажет ничего значит у вас запрещена функция (или не включена)

15
Till @Till
Имею icecast для windows + SAM. Сайт на хостинге без PHP.

Реально осуществить вывод играющего трека на сайт? Как? Заранее благодарен.

6245
Тарас @tarasian666
да, через samHTMweb

15
Till @Till
tarasian666 пишет:

да, через samHTMweb

Спасибо, вроде разобрался: как заливать по FTP, как редактировать исходник в папке сэма.. но есть вопрос..
Можно ли изменить частоту обновления информации на странице playing.html ? Т.е. сейчас у меня в сэме начинает играть песня, файлы заливаются по FTP, но информация обновляется на странице только спустя секунд 30 (без обновления страницы)

313
Krueger @Krueger
Скорость обновления только с samPHPweb

Отредактировано Krueger - 07.11.2013
6245
Тарас @tarasian666
Till пишет:

tarasian666 пишет:

да, через samHTMweb

Спасибо, вроде разобрался: как заливать по FTP, как редактировать исходник в папке сэма.. но есть вопрос..
Можно ли изменить частоту обновления информации на странице playing.html ? Т.е. сейчас у меня в сэме начинает играть песня, файлы заливаются по FTP, но информация обновляется на странице только спустя секунд 30 (без обновления страницы)

Можно, посмотрите исходник _playing.html с которого формируеться playing.html

237
Rocketdock @Rocketdock
Использую скрипт
<?php
$fl = file_get_contents('http://***.***.***.***:9000/status-index.xsl?mount=/****);
function antara($string, $start, $end){
$string = " ".$string;
$ini = strpos($string,$start);
if ($ini == 0) return "";
$ini += strlen($start);
$len = strpos($string,$end,$ini) - $ini;
return substr($string,$ini,$len);
}
$song = antara($fl, "<td>Current Song:</td>\n<td class=\"streamdata\">", "</td>");
echo "В эфире",$song;
?>

Хостинг платный но разный т.е. Icecast стоит на впс а веб в другой компании
Сначала долго грузит а потом выдает просто надпись в эфире и всё.
Не подскажите в чем проблема?

Отредактировано Rocketdock - 16.04.2014
6245
Тарас @tarasian666
проверить параметр allow_url_fopen в php.ini

410
Евгений @Drakkar
НЕ знаю, поможет ТЕБЕ или нет, но у меня вывод трека на сайт реализован вот так:
В корне сайта создаём файл info.php , заполняем его следующим содержимым:
<?php
error_reporting(0);
function get_title ($mount){
$r=fopen($mount,'r');
if ($r==FALSE) {
$ret="";
} else {
$text=fread($r,2000);
fclose($r);
$mass=explode(",", $text);
$ret= $mass [17];
}
return $ret;
}
$mount1 = "http://xx.xx.xx.x:8000/status2.xsl?mount=/твой_маунт";
$mount2 = "--//-- второго --//--";
$mount3 = "--//-- третьего --//--";


$timeout = 1;
$oldt = ini_set('default_socket_timeout', $timeout);

if(get_title($mount1) !='')
{
echo get_title($mount1);
}
elseif(get_title($mount2) !='')
{
echo get_title($mount2);
}
else
{
echo get_title($mount3);
}
include "max.php";
$file_name='http://xx.xx.xx.xx:8000/status2.xsl';
$r=fopen($file_name,'r');
if ($r==FALSE) {
$svoy=0;
} else {
$text=fread($r,300);
fclose($r);
$mass=explode(",", $text);
$svoy=$mass [4];
}

if ($r==FALSE) {
$retr=0;

} else {

$text=fread($r,300);
fclose($r);
$mass=explode(",", $text);
$retr=$mass [15];
}
$cur=$svoy;
if ($cur>$max)
{
$txtout='<?php'."\r\n";
$txtout=$txtout. '$max=' .$cur. ";\r\n";
$txtout=$txtout."\r\n".'?>';
$fp = fopen ("max.php", "w");
fwrite($fp,$txtout);
fclose($fp);
$max=$cur;
}
?>

Он я так понял парсит данные с Айскаста каждые 20 секунд. Далее нам нужно вывести это на сайт. Создаём блок, куда вставляем следующее:
</script>
<div id="now-on-air">
<script type="text/javascript">
var auto_refresh = setInterval(function(){air_load()}, 10000);
function air_load(){$('#now-on-air').load('/info.php?' + Math.random()).fadeIn('slow');}
$(function(){air_load()});
</script>
<div id="now-on-air">
</div>

И всё должно заработать

5
v-globale @v-globale
Господа, доброго времени.
Вопрос по теме вывода названий треков на сайт. Сам-то я не очень, но вывод осуществил.
Проблема только в том, что русские теги кроказябрами показывают. Не понимаю я этого.
И в самом ********** та же проблема. А, как я понимаю, именно с айскаста берет скрипт значение выводимое.
Не подскажете, в какую сторону смотреть?
Заранее спасибо.
(вот если надо ссылка на реализацию radio. v-globale. ru/)
Вещание идет с домашнего компа.

888
Falcon @Falcon
v-globale пишет:

Господа, доброго времени.
Вопрос по теме вывода названий треков на сайт. Сам-то я не очень, но вывод осуществил.
Проблема только в том, что русские теги кроказябрами показывают. Не понимаю я этого.
И в самом ********** та же проблема. А, как я понимаю, именно с айскаста берет скрипт значение выводимое.
Не подскажете, в какую сторону смотреть?
Заранее спасибо.
(вот если надо ссылка на реализацию radio. v-globale. ru/)
Вещание идет с домашнего компа.

Кодировку на мауте через конфиг Icecast надо поменять.

5
v-globale @v-globale
Falcon пишет:


Кодировку на мауте через конфиг Icecast надо поменять.


Прошу прощения, а на что? UTF8 в конфиге прописано.
Причем во всех XSL

888
Falcon @Falcon
v-globale пишет:

Falcon пишет:


Кодировку на мауте через конфиг Icecast надо поменять.


Прошу прощения, а на что? UTF8 в конфиге прописано.
Причем во всех XSL

Так:
<mount>
<charset>UTF8</charset>
</mount>
или вот так:
<mount>
<charset>CP1251</charset>
</mount>

5
v-globale @v-globale
Falcon пишет:


Так:
<mount>
<charset>UTF8</charset>
</mount>
или вот так:
<mount>
<charset>CP1251</charset>
</mount>


К сожалению, не помогло.((

727
Leff27 @Leff27
Правильно UTF-8, а не UTF8

237
Rocketdock @Rocketdock
tarasian666 пишет:

проверить параметр allow_url_fopen в php.ini


Не помогает, также долго грузит страницу и в итоге ничего не показывает. Может ли проблема с сервером icecast?

410
Евгений @Drakkar
v-globale, ты объясни толком, что у тебя за источник звука Сэм, РБ? Что за вещатель? Какая версия Icecast ? Я тоже долго мучился с проблемой корректного отображения русскоязычных треков в айскасте, но сейчас у меня всё работает великолепно. Могу подсказать, что делать и где копать.

5
v-globale @v-globale
Drakkar пишет:

v-globale, ты объясни толком, что у тебя за источник звука Сэм, РБ? Что за вещатель? Какая версия Icecast ? Я тоже долго мучился с проблемой корректного отображения русскоязычных треков в айскасте, но сейчас у меня всё работает великолепно. Могу подсказать, что делать и где копать.

Прошу прощения, не указал. Вещание идет с СЭМ-а. Айскаст 2.3.2. Статичный АйПи создаю с помощью No-IP.
Еще одна проблема нарисовалась - если перегружать комп, айскаст перестает "ловить" поток. Приходится его переустанавливать, и тогда все ровненько (с потоком). Не могу понять причину. XML просто тупо сохранил, и на свежую установку айскаста заливаю сохраненный конфиг. Если комп опять перегружается - опять переустановка айскаста. Может, версия кривая?

410
Евгений @Drakkar
Значит для начала тебе надо обновить айскаст до 2.3.3 kh10. Далее в базе Сэма меняй кодировку на UTF-8. Я например меняю её при помощи сторонней программы HeidiSQL. Русскоязычные песни в деке будут отображаться криво, зато на странице айскаста всё будет ок. С твоей проблемой справиться легко. Тебе нужен отложенный запуск Сэма, чтоб сначала запускалась винда с Icecast, а через 35 секунд сэм. Самотри тут **********

Отредактировано Drakkar - 09.05.2014