601

Re: liquidsoap

пишет tarasian666:

а насколько "далеко" liquidsoap от подключаемого клиента к harbor ?

у меня все локально (кроме сервера) и такого нет

С локалки то-же самое(((


harbor под основное расписание убрал и задал ещё один fallback и  mksafe - все стало ОК!

Отредактировано Amelion (12-05-2012 11:00:22)

602

Re: liquidsoap

Вот тоже вопрос возник: радио настроено, все работает, все хорошо. Треки берутся просто из директории.

На сайте есть блок, где показывается текущая песня. Инфа получается парсингом /status2.xsl айскаста - работает неплохо, но получается при каждом открытии страницы обращение к скрипту (через ajax) + обращение по хттп к статистике. Очень грустно и затратно. Поэтому собственно вопрос следующий: есть ли возможность при смене трека его метаданные передавать на внешний скрипт, который бы в базу данных их вставлял?

Может можно как-то давать liquidsoap трек? То есть после проигрывания текущего трека liquidsoap обращается к внешнему скрипту, скрипт из базы берет список треков, выбирает один случайный, ставит ему флажок "текущий" и скармливает его как следующий трек liquidsoap.

Специалисты, подскажите пожалуйста правильное решение?

UPD:  По первой задаче решение нашел. Может кому-то пригодится:

def nowpl(m)
  musica = '#{m["artist"]} - #{m["title"]}'
  system("/home/radio/scripts/nowplaying #{quote(musica)}")
end

radio = on_metadata(nowpl,radio)

Но интересно решить вторым методом - через скармливание текущего трека из внешнего скрипта. Тогда автоматически решается проблема стола заказов. Просто скриптом из очереди стола заказов выбираешь нужный трек и отдаешь. Или я снова перемудрил? Я уже почти уверен, что задача решается через request.dynamic() - но как, понять пока не могу. Может у кого-то пример есть подходящий?

Отредактировано Maestro (14-05-2012 16:53:38)

603

Re: liquidsoap

def my_request_function() =
  # Get the first line of my external process
  log = log(label="rotator")
  log("Getting song")
  result =
    list.hd(
      get_process_lines("/home/taras/ls/rotator.pl"))
      log("Got answer: #{result}")
  # Create and return a request using this result
  request.create(result)
end

myplaylist = request.dynamic(my_request_function)

604

Re: liquidsoap

можно и так

myplaylist = request.dynamic({request.create("bar:foo", indicators=get_process_lines("/home/taras/ls/rotator.pl"))})

но я спецом расписал чтоб вставить логирование

605

Re: liquidsoap

пишет tarasian666:

можно и так  но я спецом расписал чтоб вставить логирование

Спасибо! То, что нужно! Вроде бы решение вырисовывается. Если все удастся, то выложу сюда решение стола заказов и блока текущей композиции для Drupal 7.

606

Re: liquidsoap

Soap настроен на перекодировку потока, не могу сообразить, как заставить его принять метадату со входящего потока и отправлять её на сервер айскаст?

http://radioheart.ru/banners/radioheart_400x40_banner.jpg
RadioHeart.ru: Функциональный радио хостинг с автодиджеем и нонстопом, а так же быстрый виртуальный хостинг. Возможность создать радио за 5 минут, подключить автодиджей и нонстоп.
Отзывы о хостинге

607

Re: liquidsoap

у меня оно всегда по дефолту принимало и передавало, так что не его надо заставлять, а искать что не нравится ему

Отредактировано tarasian666 (17-05-2012 19:41:07)

608

Re: liquidsoap

В *.liq файле у меня:
#!/usr/bin/liquidsoap
set("log.file.path","/home/falcon/user8001/liq.log")
set("init.daemon.pidfile.path","/home/falcon/user8001/liq.pid")
output.icecast(%aacplus(channels=2, samplerate=44100, bitrate=64), host = "localhost", port = 8001, password = "hackme", mount = "localaac", mksafe(input.http("http://localhost:8001/local")))

В итоге на странице айскаста совпадает только текущий трек. Stream name, Stream description, Stream URL - разные. Соап подставляет свои данные. Можно ли как-то заставить отправлять его данные со входного потока?

http://radioheart.ru/banners/radioheart_400x40_banner.jpg
RadioHeart.ru: Функциональный радио хостинг с автодиджеем и нонстопом, а так же быстрый виртуальный хостинг. Возможность создать радио за 5 минут, подключить автодиджей и нонстоп.
Отзывы о хостинге

609

Re: liquidsoap

а эту метадату..
с этим надо повозиться

610

Re: liquidsoap

Здравствуйте.

А как подключить к windows сборке - wget?

611

Re: liquidsoap

никак, но и зачем?

612

Re: liquidsoap

Здравствуйте.
А как подключить к windows сборке - wget?

Я так понимаю, кто-то хочет установить ПО linux на windows big_smile

613

Re: liquidsoap

пишет Leff27:

Здравствуйте.
А как подключить к windows сборке - wget?

Я так понимаю, кто-то хочет установить ПО linux на windows big_smile

А в чем собственно проблема?

пишет tarasian666:

никак, но и зачем?

я так понимаю есть необходимость брать треки по http/ftp, но это же порт под винду, в случае как и с апачем например, функционал не полон в отличии от "родной" версии под линукс

Отредактировано devilben (18-05-2012 14:40:51)

614

Re: liquidsoap

пишет devilben:

пишет Leff27:

Здравствуйте.
А как подключить к windows сборке - wget?

Я так понимаю, кто-то хочет установить ПО linux на windows big_smile

А в чем собственно проблема?

wget я установил, и он работает правильно...

Но liquidsoap не находит его: [protocols.external:3] Didn't find "wget".

Как сделать, что бы он нашел его?

615

Re: liquidsoap

пишет alexgard:

Как сделать, что бы он нашел его?

Дополнил предыдущее сообщение

616

Re: liquidsoap

alexgard, возможно надо добавить wget этот в PATH

617

Re: liquidsoap

пишет nivs:

alexgard, возможно надо добавить wget этот в PATH

Это я сделал в первую очередь...... Не помогло....

618

Re: liquidsoap

пишет devilben:

пишет Leff27:

Здравствуйте.
А как подключить к windows сборке - wget?

Я так понимаю, кто-то хочет установить ПО linux на windows big_smile

А в чем собственно проблема?

пишет tarasian666:

никак, но и зачем?

я так понимаю есть необходимость брать треки по http/ftp, но это же порт под винду, в случае как и с апачем например, функционал не полон в отличии от "родной" версии под линукс

Да, проблема именно в этом! Можете подсказать, как воспроизводить треки не скачивая их?

619

Re: liquidsoap

пишет alexgard:

как воспроизводить треки не скачивая их?

Если машина с которой планируется брать треки доступна по http то проще установить туда Liquidsoap и передавать на сервер с Icecast2

Отредактировано devilben (18-05-2012 17:21:58)

620

Re: liquidsoap

пишет devilben:

пишет alexgard:

как воспроизводить треки не скачивая их?

Если машина с которой планируется брать треки доступна по http то проще установить туда Liquidsoap и передавать на сервер с Icast2

У меня ситуация вообще веселая!

Есть три сервера...

1 сервер - на нем стоит IceCast и  liquidsoap.
2 сервер - на нем лежат треки
3 сервер - лежит плейлист (php код который создает плейлист)

Суть - транслировать треки с сервера №2 не скачивая их на сервера №1 и №3.

На крайний случай, можно установить liquidsoap на сервер №3

621

Re: liquidsoap

Разве что монтировать на сервер1, каталог с треками из сервера2, через nfs или smb, и указать абсолютные пути в Liquidsoap.

622

Re: liquidsoap

пишет devilben:

Разве что монтировать на сервер1, каталог с треками из сервера2, через nfs или smb, и указать абсолютные пути в Liquidsoap.

А для этого, нужны какие-то доступы к серверу №2?

623

Re: liquidsoap

Нужны, иначе http онли

624

Re: liquidsoap

alexgard, openVPN. Внутри него делай, что хочешь

Отредактировано nivs (18-05-2012 20:48:44)

625

Re: liquidsoap

Всем спасибо, эту проблему решил!)

Не подскажете, как установить liquidsoap на freebsd не через порты?

Отредактировано alexgard (23-05-2012 17:41:05)