Internet Radio To Podcast

Выкладываю скрипт для захвата потокового радио и магического превращения записанной передачи в подкаст.

Первоисточник и некоторе количество исходного кода позаимствовано вот тут.

Для работы потребуется:

  • Локальный или удаленный веб-сервер с шелл-доступом.
  • Утилита streamripper (есть в стандартных репозитариях Debian)
  • Perl и модули:
  • XML::RSS
  • XML::Simple
  • Audio::Cuefile::Parser

Помимо этого неплохо бы иметь работающий cron, чтобы автоматизировать задачу.
Скачиваем по этой ссылке архив.
Распаковываем.

В ay_podcast.pl нужно подправить начальные значения:

my $file_name = "aypodcast";
my $location = "/home/zno/aypodcast/";
my $url = "http://192.168.1.3/aypodcast/";
my $run_seconds="7200";
my $radio_url="http://radio.ayland.x.pl:8000/ayland128";
my $podcast_name = "DIY AY PodCast ";

А именно — базовое имя файла подкаста (оно же используется для генерации mp3) -в нашем случае aypodcast

Расположение, где в файловой системе на сервере расположен подкаст — в нашем случае /home/zno/aypodcast

URL, по которому будет доступен подкаст с вебсервера — фактически, это предыдущая директория, доступная через веб.

Также, задается длительность захвата, URL для радио (см. man для streamripper по вопросам совместимости) и описание подкаста.

В архиве также есть файл aypodcast.xml.def. Это шаблон для xml, его нужно переименовать следующим образом — вместо aypodcast выбрать базовое имя, указанное в скрипте и убрать .def. Сам файл нужно положить в директорию, где будет генериться подкаст.

Для тестирования скрипта можно указать время завхата — 60 секунд и запустить вручную. После минутной паузы в дириектории «народится» файл вида базовое_имяXXXYYYZZZ.mp3 и базовое_имя.xml будет изменен соответственно.

Feature! Теги, которые «вещает» радио автоматом попадают в поле «description» скрипта и их можно комфортно просматривать на iPod/PSP или другом подкаст-enabled устройстве.

Траблшутинг =)

При вызове из крона скрипт захватывает 500кб и все.

Верните на место параметр —quiet. Это баг стримриппера.

Создается файл со странными именем.

Не используйте пробелы и сомнительные символы в базовом имени.

MP3 файл появился, но не больше ничего не произошло.

Возможно, радиостанция не вещает метаинформацию о тегах, которая используется для генерации описания. Для этого удалите из скрипта код, парсящий cue-файл и вбейте заглушку для переменной description (просто присвойте ей константное значение).

Have fun.

Скрипт распространяется без каких-либо ограничений и авторы скрипта не несут никакой ответственности за последствия его применения.

Добавить комментарий

Please log in using one of these methods to post your comment:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: