ОсновноеRadiotalkПользовательское
Общие вопросы по интернет радио вещанию
6   •   Посмотреть все темы

Название вместо черты

 

237
Rocketdock @Rocketdock
Суть такова, когда в эфире ничего не играет, на сайте показывает вот такой символ -
Его реально вообще заменить?

6245
Тарас @tarasian666
реально
и способов много

237
Rocketdock @Rocketdock
А можете привести один из способов (желательно легкий)

6245
Тарас @tarasian666
убрать этот символ в status2.xsl

237
Rocketdock @Rocketdock
Неее, это символ вылазит только когда метаданных нет, тоесть в эфире джингл, ну а когда музыка в эфире то он нормально показыват название трека

7
Серёга @damnpeople
Rocketdock пишет:

Неее, это символ вылазит только когда метаданных нет, тоесть в эфире джингл, ну а когда музыка в эфире то он нормально показыват название трека


Если у вас отображение метаданных происходит быстро, то по идее он должен выводить название станции, а не --

237
Rocketdock @Rocketdock
А может быть что скрипт вывода виноват?

6245
Тарас @tarasian666
вполне

5
Larick @Larick
Rocketdock пишет:

Неее, это символ вылазит только когда метаданных нет, тоесть в эфире джингл, ну а когда музыка в эфире то он нормально показыват название трека


а что мешает вписать метаданные в джингл?


237
Rocketdock @Rocketdock
У меня Джинн Лайт

237
Rocketdock @Rocketdock
Вот скрипт, посмотрите кто-нить, может в нем проблема

<?php
///////////////////////////////////////////////////
//icecast2 status refined v1.1 xsl refined
// Author: that dude over there at casterclub.com
// Bugs: post in the forums at casterclub
//////////////////////////////////////////////////
//start the madness already
//////////////////////////////////////////////////
//start the configurations
$ip = "localhost"; //your server address in the form of mydomain.com or 192.161.1.1
$port = "9000"; //the port of your server
$ice2_station = "Эфир "; // your station or stream name






////////////////start the parsin action\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//opening socket
$fp = fsockopen("$ip", $port, &$errno, &$errstr, 30); //open connection
if(!$fp) {
$success=2; //set if no connection



//edit html to fit your stations site, this display is for offline status
echo'
<tr>
<td width="100%" colspan="2">
<b><font face="Arial" size="2" color="#ffffff">'.$ice2_station.' временно отключен!</font></b></td>
</tr>';
}



if($success!=2){ //if connection
fputs($fp,"GET /status2.xsl HTTP/1.0\r\nUser-Agent: Icecast2 XSL Parser (Mozilla Compatible)\r\n\r\n"); //get status2.xsl
while(!feof($fp)) {
$page .= fgets($fp, 1000);
}
fclose($fp); //close connection
$page = ereg_replace(".*<pre>", "", $page); //extract data
$page = ereg_replace("</pre>.*", ",", $page); //extract data

$numbers = explode(",",$page); //bomb it and extract data
$mount = $numbers[6];
$connections = $numbers[2];
$stream_n = $numbers[2];
$listeners = $numbers[4];
$desc = $numbers[4];
$cur_song = $numbers[5];
$str_url = $numbers[6];
$client_info = $numbers[7];
$test1 = $numbers[8]; //set vars that where empty and still dont know what the heck those values are ;-)
$test2 = $numbers[9]; //set vars that where empty and still dont know what the heck those values are ;-)
$test3 = $numbers[20]; //set vars that where empty and still dont know what the heck those values are ;-)
$mount = $numbers[11];
$connections = $numbers[12];
$station =$numbers[13];
$listeners = $numbers[15];
$description = $numbers[15];
$cur_song = iconv("UTF-8","cp1251",$numbers [16]);
$www_url = $numbers[17];

if (strlen($mount)<2) echo
'
<tr>
<td align="center" width="100%"><b>
<font face="Arial" size="3" style="font-size: 9pt; ">
<span style="color: rgb(255, 255, 255);">
Статус эфира: Нет потока </b></td>
</tr>
</tr>
';
//edit html to fit your stations site, this display is for online status
else echo'

<tr>
<td width="100%"><font face="Arial" size="3" style="font-size: 9pt; ">
<span style="color: rgb(255, 255, 255);">
В эфире: <b>'.$cur_song.'</b></font></td>
</tr></span>
';
}
?>

6245
Тарас @tarasian666
скрипт невиноват
больше склоняюсь к status2.xsl
надо на него глянуть в то время когда скрипт выводит -

237
Rocketdock @Rocketdock
<xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0" >
<xsl:output omit-xml-declaration="no" method="xml" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="yes" encoding="UTF-8" />
<xsl:template match = "/icestats" >
<pre>
MountPoint,Connections,Stream Name,Current Listeners,Description,Currently Playing,Stream URL
Global,Client:<xsl:value-of select="connections" /> Source: <xsl:value-of select="source_connections" />,,<xsl:value-of select="listeners" />,,
<xsl:for-each select="source">
<xsl:value-of select="@mount" />,,<xsl:value-of select="name" />,<xsl:value-of select="listeners" />,<xsl:value-of select="description" />,<xsl:value-of select="artist" /><xsl:value-of select="title" />,<xsl:value-of select="url" />
</xsl:for-each>
</pre>
</xsl:template>
</xsl:stylesheet>

6245
Тарас @tarasian666
<xsl:value-of select="artist" /><xsl:value-of select="title" />

вот это интересно, у меня там былыло так <xsl:value-of select="artist" /> - <xsl:value-of select="title" />

в таком случае может вещатель так передает, может где настроено по шаблону [артист] - [трек] а если ничего из этого нет то остается только -

237
Rocketdock @Rocketdock
теперь скрипт выводит: - - (это когда в эфире джингл)
когда трек то: - артист - название

Отредактировано Rocketdock - 17.08.2012
6245
Тарас @tarasian666
так ненадо было ее добавлять )

говорю же может в вещателе такой шаблон тегов

237
Rocketdock @Rocketdock
ааа понятно, ну ладно спасибо за помощь

Отредактировано Rocketdock - 17.08.2012