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

Метаданные нескольких предыдущих и предстоящих аудиофайлов

 

8
murkitsa @murkitsa
Установлены icecast2 и ices, playlist.txt содержит последовательность воспроизведения файлов. Каким образом можно получать данные не только о текущем файле, но и о близлежащих? Реально ли написать скрипт на perl, реализующий это? В какую сторону вообще рыть?

398
ubuntu-studio @ubuntu-studio
murkitsa пишет:

Установлены icecast2 и ices, playlist.txt содержит последовательность воспроизведения файлов. Каким образом можно получать данные не только о текущем файле, но и о близлежащих? Реально ли написать скрипт на perl, реализующий это? В какую сторону вообще рыть?


Последние отыгравшие парсятся из playlist.log
Извлечение тех, кто будет скоро звучать зависит от программы автоматизации эфира.
Уточните с чего играете и, может быть, вам помогут советом

Отредактировано ubuntu-studio - 12.02.2013
8
murkitsa @murkitsa
программы автоматизации эфира

т.е. от плеера?

используется uppod

398
ubuntu-studio @ubuntu-studio
murkitsa пишет:

программы автоматизации эфира

т.е. от плеера?
используется uppod



Программы автоматизации эфира (radio automation software):
- Sam Broadcaster
- Digispot II - Djin Lite
- Digispot II - Djin Full
- Jazler
- Jazler Radio Star One
- Sound Empire
- Digiton Synadyn
- Megamix 2010/2012
- RadioDJ
- RCS NexGen
- RadioBoss
- Radio Player Pro
- StationPlaylist Studio
- MixTime

Или, может, WinAmp?

Укажите что у вас

Отредактировано ubuntu-studio - 12.02.2013
8
murkitsa @murkitsa
Программу автоматизации эфира не ставили из соображений экономии оперативы. Это единственный выход, или существуют другие способы узнать предстоящие данные?

6245
Тарас @tarasian666
вполне реально, достаточно только придумать и осознать логику доставания близлежащих файлов, если рандум отключен - очень просто, если нет - подключать модуль perl как плейлист и он же будет делать рандум и знать о близлежащих файлах

8
murkitsa @murkitsa
если рандум отключен - очень просто


скрипт, который в playlist.txt находит текущую позицию, достает близлежащие, а далее что-то вроде
sub ices_get_metadata {
use MP3::Info;
$tag = get_mp3tag($file) or die "No TAG info";
return "$tag->{TITLE} ";
}


правильно понимаю?

8
murkitsa @murkitsa
Сразу такие вопросы:
1. Можно ли методами ices определить текущую позицию в playlist.txt, учитывая что файлы могут повторяться (каким образом)?
2. Где можно почитать о том, как дальше поступать с полученными данными, кто их получает, как вся эта система в целом работает?

6245
Тарас @tarasian666
если используется "perl плейлист" то тот что playlist.txt в конфиге - игнорируется, за каждой новой песней посылается на функцию в скрипе perl - get_next (точно не помню названия), а откуда и как будет брать песни уже ваша задача
ices_get_metadata только для изменения тегов текущей песни или их получения если сам ices не справился

8
murkitsa @murkitsa
значит так?
get_next будет работать с текстовым файлом, откуда будет брать следующий медиафайл и там же теги для близлежащих

Отредактировано murkitsa - 13.02.2013
6245
Тарас @tarasian666
теги можно уже самим скриптом доставать, а в текстовый плейлист (если именно такой вариант нужен) просто пути к файлам

8
murkitsa @murkitsa
если используется несколько маунтпоинтов, существуют ли методы определения с каким именно работает перл скрипт?

6245
Тарас @tarasian666
Ices может пускать только на 1 маунт, перл скрипт в данном случае работает не с маунтами, а глубже, как саб-процесс ices который определяет который трек будет играть. И вообще чего это я должен пересказывать документацию?

8
murkitsa @murkitsa
Этим действием вы упростили жизнь одному человеку, таким образом весь мир стал лучше. Спасибо большое за помощь.)

63
Feest @Feest
murkitsa пишет:

Этим действием вы упростили жизнь одному человеку, таким образом весь мир стал лучше. Спасибо большое за помощь.)

Можно использовать **********, здесь уже встроенный функционал работы со скриптом. Тем самым можно отказаться от аналогичного через perl.