876

Re: liquidsoap

А вот такое сработает:

# описываем очередь диджеев в понедельник
mon = switch (track_sensitive = true, [dj_noname, dj_noname2])

tr_sched = fallback(track_sensitive = false,
   [tr_life, switch(track_sensitive = false, [
      ({ 0w10h-0w12h }, mon),
и т.д.
      ({ true }, tr_nonstop2)
   ])])

Если мы засунем диджеев в переменную mon и потом используем ее в расписании??? Так прокатит? И будут ли диджеи воспроизводится в том порядке в котором указаны?

877

Re: liquidsoap

И если можно подскажите, что описано в этих строках

altSw=switch(track_sensitive=true,[(isTopOfHour,getTop())])
radio = fallback.skip(
                        strip_blank(threshold=-35.,length=0.2,altSw)
                        ,main)

взято от сюда http://savonet.sourceforge.net/doc-svn/kube.html

878

Re: liquidsoap

Доброе, спрошу тут ...
Скажите где можно взять файл или как решить вопрос.
Ставлю liquidsoap  с поддержкой аас+, и все нормально кроме последней строчки в конфигураторе:
checking whether pkg-config knows about aacplus >= 2.0.1... configure: error: aacplus.pc not found.. Do you need to set PKG_CONFIG_PATH?
При этом все библиотеки ffad2, faac, libfaad  и подобные ставил.. часть из них конфликтовали даже ...
подскажите .. что может быть, спасибо...

879

Re: liquidsoap

А libaacplus-dev ?

880

Re: liquidsoap

именно он не стоит .. стоят все другое с aac , как писал выше faad faac  и либы и девелы к ним...

а где у вас лежит лежит файл aacplus.pc?
у меня он лег в \usr\lib\pkgconfig, но все равно не видит...

Отредактировано firefedot (25-09-2013 22:49:02)

881

Re: liquidsoap

Послушал умных людей, накатил ubuntu (13.04). Установил все за пару минут и icecast  и liquidsoap. Накатал такой скрипт:

#!/usr/bin/liquidsoap

set("log.file.path", "/tmp/test.log")

#myplaylist = playlist("/home/music/list.m3u");
myplaylist = single("/home/music/ram.mp3");
output.icecast(%aac(channels=2, samplerate=44100, bitrate=64), host = "localhost
        password="1q2w3e4r", mount="dj", myplaylist)

запускаю скрипт:

./liq.conf

и в плеере начинает играть плей лист, все хорошо, кроме одного моента.
Когда запукаю скрипт, то он как бы переходит в режим выполнения и ничего другогоне могу делать, а нажав ctrl+c, он естественно останавливается и прерывает трансляцию.
Не пойму как правильно запускать скрипты, автозапуском по идее можно, но если нужно запустить другой скрипт. то возникнет такая же штука.
В общем, как правильно запускать скрипты по запуску liquidsoap  и плейлистов?
)

882

Re: liquidsoap

пишет tarasian666:

так и должно быть
чтоб запускать его как демон надо писать в начале #!/usr/local/bin/liquidsoap -d
или задать

set("init.daemon",true)
set("init.daemon.pidfile",false)

883

Re: liquidsoap

Спасибо огромное, добрый человек.)
Но когда дописываю -d  в конце строки #!/usr/bin/liquidsoap
выдается ошибка

FATAL ERROR: PID directory "/usr/local/var/run/liquidsoap" does not exist.
To change it, add the following to your script:
  set("init.daemon.pidfile.path", "<path>")

стоит убрать -d  и все нормально
Все, просто дописал

set("init.daemon",true)
set("init.daemon.pidfile",false)

и все завелось как демон. без -d

#!/usr/bin/liquidsoap

set("init.daemon",true)
set("init.daemon.pidfile",false)

Правильно ли понял. что бы вещать в аас+, нужно собрать из исходников, готовые сборки не дадут?
И не могу найти ни гдке такой пакет libaacplus-dev,  о ктором была речь выше, он вроде как нужен... он в составе чего то или отдельно?

А как остановить ваещание в liquidsoap? )  даже новый скрипт не перебивает старый...

Отредактировано firefedot (07-10-2013 22:39:59)

884

Re: liquidsoap

Libaacplus-dev есть в репозитории multimedia или на tipok.org.ua

Остановить killall имя_скрипта

885

Re: liquidsoap

Понял... Спасибо.

886

Re: liquidsoap

Недавно ставил себе "мыло" версии 1.1.1 на FreeBSD, по-мучился...  Если интересно, как поставил, спрашивайте - по возможности отвечу smile

Так же хотел спросить, пользуется ли кто инфой из telnet'а? Вчера скрипт на PHP писал, который в "мыльный" telnet ходит и узнаёт какой файл играет и сколько осталось времени до конца. Может есть менее изврщённый способ доставать такую информацию?

887

Re: liquidsoap

телнетом пользуюсь чтоб:
переключить трек
перемотать трек
включить/отключить определенный энкодер
узнать id трека (id получает от внешнего "ротатора")
управление микшером (громкость микрофона/музыки)

и еще много чего, так как делал gui что-то на подобии sam broadcaster

888

Re: liquidsoap

и еще много чего, так как делал gui что-то на подобии sam broadcaster

На чём писал gui?

889

Re: liquidsoap

python + qt4

890

Re: liquidsoap

Подскажи, пожалуйста, с какими "пакетами" собирал "мыло"? Я с минимальным, пока под мои нужды хватает...

891

Re: liquidsoap

Да по сути тоже с минимальными, добавил aac+ и alsa и то пользуюсь ими не часто

892

Re: liquidsoap

Здравствуйте. Хочу узнать по поводу заказов.
в документации есть такое

myplaylist = request.dynamic({request.create("bar:foo", indicators=get_process_lines("playlist.pl"))}) 

Вопрос, в каком виде вывод playlist.pl? Он выбирает трек по очереди? И как сделать чтобы если стол заказов пуст то играл нонстоп или диджей, если он в эфире. Спасибо заранее

З.Ы. 2 tarasian666: как сделать то что реализовано у Вас на сайте? Очень нужно...а именно блок Now palying и оставшееся время ниже и вывод Картинки альбома

Отредактировано RadioHost (10-12-2013 18:25:26)

893

Re: liquidsoap

playlist.pl выводит адрес к треку, а к какому именно решает скрипт ротации

оставшееся время = время сейчас - время старта трека + время трека
время старта и время трека идет из базы, туда его вносит liquidsoap другим скриптом

картинка идет с ластфм, поиск по альбому и артисту. API ластфм есть у них на сайте

894

Re: liquidsoap

Спасибо огромное, а если стол заказов пуст то нон-стоп сам будет играть? Ничего на этот случай дописывать не надо?

895

Re: liquidsoap

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

896

Re: liquidsoap

Извините за наглость, а можете привести пример? roll
Я так понимаю что первым стоит стол заказов, а после него прописан плейлист с нон-стопом? Или их переключение осуществляется fallback-ом?

897

Re: liquidsoap

можно и так, но у меня все не так ) Что играть у меня решают скрипты, а liquidsoap только играет то что ему скрипт подсовывает.
Если делать через queue самого "мыла" то как-то так

myplaylist = playlist("playlist.m3u")                                                                                                   
queue = request.queue(id="queue", length=0.5)                                                                                                       
myplaylist = mksafe(fallback([queue, myplaylist]))   

898

Re: liquidsoap

Спасибо smile Буду пробывать

899

Re: liquidsoap

Здравствуйте еще раз. Возник новый вопрос, что делать когда возникает ситуация что Current Song: Unknown?
Как можно сделать чтобы если в тэгах аудиофайла нет описания - в Current Song писало имя трека?

900

Re: liquidsoap

Мучал мучал и вот до чего домучал.

req = request.dynamic({request.create("bar:foo", indicators=get_process_lines("get_rq.php"))}) 
radio = fallback(track_sensitive = false, [live, req, radio])

То есть, например пхп скрипт выдает ! трек из базы, который в очереди стоит. если треков нет идет фоллбэк на нонстоп.
Собственно вопрос - конструкция жизнеспособна? И не будет ли нонстоп играть с начала после того как закончатся заказы? Сейчас радио крутится без стола заказов, не хочется дергать лишний раз его...