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

Ices и Perl - не конфигурирует

 

19
Евгений @Evgeniy_SHevtsov
Вот не пойму. Может модуль какой нужен... Perl установлен.

Но при конфигурировании выдает configure error: could not link to perl

6245
Тарас @tarasian666
libperl-dev установлен?

19
Евгений @Evgeniy_SHevtsov
tarasian666 пишет:

libperl-dev установлен?

Ну как понял - проблема была в нем...
Хз что там было не так - он был установлен - я снес perl полностью и переустановил.
Работает.

Может кому пригодится - рабочий ices.pm


# At least ices_get_next must be defined. And, like all perl modules, it
# must return 1 at the end.

# Function called to initialize your python environment.
# Should return 1 if ok, and 0 if something went wrong.

sub ices_init {
print "Perl subsystem Initializing:\n";
return 1;
}

# Function called to shutdown your python enviroment.
# Return 1 if ok, 0 if something went wrong.
sub ices_shutdown {
print "Perl subsystem shutting down:\n";
}

# Function called to get the next filename to stream.
# Should return a string.
sub ices_get_next {
print "Perl subsystem quering for new track:\n";
#chomp $music[2];
$num=`/bin/ls /home/music/*.mp3 | /usr/bin/wc -l`;
@music=`/bin/ls -1 /home/music/*.mp3`;
$play=int(rand($num));
chomp $music[$play];
return $music[$play];
}

# If defined, the return value is used for title streaming (metadata)
sub ices_get_metadata {
use MP3::Info;
$tag = get_mp3tag($music[$play]) or die "No TAG info";
return "$tag->{ARTIST} - $tag->{TITLE}";
}

# Function used to put the current line number of
# the playlist in the cue file. If you don't care
# about cue files, just return any integer.
sub ices_get_lineno {
return 1;
}

return 1;

19
Евгений @Evgeniy_SHevtsov
Чтобы не создовать отдельную тему.
Есть несколько проблем с выводом через perl.
1 - Кириллические названия треков выводятся "ГЂГèìà öèÿ - ×åðòà ". Кодировка в icecast конфигах cp1251, через SAM отобрадается нормально.
2 - Я так понимаю, что когда скрипт не может прочитать название трека он выдает "Сейчас в эфире: - ", как поправить это....

Отредактировано Evgeniy_SHevtsov - 28.08.2013