201

Re: liquidsoap

заработало...
возник другой вопрос
как сделать в инпут.харбор нормализацию звука по громкости?

и замечен такой косяк, что когда в семе фейдом включаешь другую песню, то в ливкасупе на пару долей секунд включается нонстоп, потом снова поток из сема.. получается что как бы вклинивается нонстоп
что это такое? и как решить?

п.с. кажется будто бы соединение рвется инета и оно перескакивает обратно но потом соединение восстанавливается и снова харбор врубается
как выйти из положения? может можно буферезацию больше поставить или время ожидания увеличить как то?
вот мой конфиг:

#!/usr/local/bin/liquidsoap
set("init.daemon",true)
set("init.daemon.pidfile",false)
set("log.file.path","/tmp/liquidsoap.log")
jingles = playlist("/home/and/music")
music = playlist(reload=600, "/home/and/music")
music = mksafe(music)
music = crossfade( fade_out = 7.0, fade_in = 7.0, start_next = 7.0, music )
radio = smooth_add(normal=music,special=switch([({ 00m0s or 30m0s }, jingles)]))

##########################################################
set("server.telnet", true)
#localhost - ??????? - ???????? 192.168.0.1
set("harbor.bind_addr","xxx.xxx.xxx..xxx")
live = input.harbor("live.ogg",port=8000,password="xxx")
live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)
radio = fallback(track_sensitive=false,[live,music])
    output.icecast(%mp3,
        mount="/top",
        host="xxxx", port=8888,
        password="xxxx",
        genre="top",
        url="http://xxx",
        description="xxxx",
        name="xx NONSTOP",
        radio
    )

Отредактировано aPhone (25-06-2011 05:50:58)

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

202

Re: liquidsoap

пишет aPhone:

заработало...
возник другой вопрос
как сделать в инпут.харбор нормализацию звука по громкости?

и замечен такой косяк, что когда в семе фейдом включаешь другую песню, то в ливкасупе на пару долей секунд включается нонстоп, потом снова поток из сема.. получается что как бы вклинивается нонстоп
что это такое? и как решить?

дело либо в сэме, либо в айскасте. скорее всего - в сэме. спрашивай в соответствующей теме.

203

Re: liquidsoap

нет я понял в чем косяк: вот в этой строчке
live = input.harbor("live.ogg",port=8000,password="xxx")
live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)

а именно: live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)

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

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

204

Re: liquidsoap

пишет aPhone:

нет я понял в чем косяк: вот в этой строчке
live = input.harbor("live.ogg",port=8000,password="xxx")
live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)

а именно: live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)

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

попробуй не на live делать кроссфейд, а на radio:

live = input.harbor("live.ogg",port=8000,password="xxx")
radio = fallback(track_sensitive=false,[live,music])
radio = crossfade(start_next=1.,fade_out=7.,fade_in=5., radio)

205

Re: liquidsoap

пишет boogiebomzh:

пишет aPhone:

нет я понял в чем косяк: вот в этой строчке
live = input.harbor("live.ogg",port=8000,password="xxx")
live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)

а именно: live = crossfade(start_next=1.,fade_out=7.,fade_in=5., live)

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

попробуй не на live делать кроссфейд, а на radio:

live = input.harbor("live.ogg",port=8000,password="xxx")
radio = fallback(track_sensitive=false,[live,music])
radio = crossfade(start_next=1.,fade_out=7.,fade_in=5., radio)

при такой схеме кросфейда не наблюдается при отключении и подключении диджея

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

206

Re: liquidsoap

Скажите а как мне сделать перезапись при инпут харборе
Stream Title:    
Stream Description:
чтобы ликвасуп их менял на те что вещаются из сема
сейчас меняются только Current Song:

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

207

Re: liquidsoap

пишет aPhone:

Скажите а как мне сделать перезапись при инпут харборе
Stream Title:    
Stream Description:
чтобы ликвасуп их менял на те что вещаются из сема
сейчас меняются только Current Song:

или скажите возможно ли сделать страницу как в айскасте, с выводом информации о текущем треке, название станции, дескриптион и прочее
подобие status2.xls
может ли ливкасуп генерить такую страницу?

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

208

Re: liquidsoap

пишет aPhone:

может ли ливкасуп генерить такую страницу

может, но насчет Stream Title: и  Stream Description: неуверен

209

Re: liquidsoap

если может то помогите сгенерить эту страницу.
вот что я нашел:

http://savonet.sourceforge.net/doc-svn/harbor_http.html

Показать / Cкрыть текст

но он отказывается работать, я прописываю s = (radio)
и никакого эффекта, страница не доступна по адресу с  вывводом информации

подскажите рабочий код

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

210

Re: liquidsoap

Или подскажите любой другой вариант чтобы иденфицировать играющего ведущего, мне в голову пришла такая мысль, что если на каждого ведущего делать свой маунт, и если этот маунт активен то перезаписывать metadata
я сделал такой вот код

Показать / Cкрыть текст

но толку нету, данные всегда показываются от первого маунта, какой бы маунт не был подключен в данный момент, т.е. эти:
andy = rewrite_metadata([("artist","Radio"),
    ("title","В эфире andy"),
    ("comment","http://xx.x")],andy)

у кого есть идеи по этому поводу?

П.С. данный вариант не желателен, так как нельзя идентифировать играющие песни при вещании из сема, потому что данные перезаписываются, может кто что получше знает?

Отредактировано aPhone (28-06-2011 09:18:19)

BelRadio - радио Белгорода online

Меняюсь ссылками, баннерами на главной и внутренних, пишите в ЛС

211

Re: liquidsoap

пишу не по вопросу а по теме
нашел типо radiocms но на основе liquidsoap http://en.flossmanuals.net/airtime/

212

Re: liquidsoap

пишет tarasian666:

пишу не по вопросу а по теме
нашел типо radiocms но на основе liquidsoap http://en.flossmanuals.net/airtime/

Вообще то сайт проекта вот, а здесь манульчик по установке и настройке на Ubuntu.
На сайте есть демка, можно пощелкать, на вид классная штука, приятный интерфейс.

Отредактировано devilben (02-07-2011 00:25:58)

213

Re: liquidsoap

http://savonet.sourceforge.net/doc-svn/ … adata.html

вот по поводу обновления stream title итд

214

Re: liquidsoap

по поводу обновление титла распиши поподробнее

215

Re: liquidsoap

я пока сам не разбирался, только что нашел..

а ни кто не подключил jack output ?

216

Re: liquidsoap

к слову говоря о извращениях.
кто пробовал совмещать два "потока"
т.е. есть плейлист, он постоянно крутиться, есть второй плейлист (ну или файл) он тоже постоянно крутиться. второй накладывается на первый с притущенным уровнем звука.
одним местом чувствую, что через fallback крутить надо, но пока не поймаю за хвост.

ну и второй вопрос, не возникало ли проблем, по декодированию "нестандартных" качеств, что то уопрно не хочет цеплять mp3, 96 kb/s, mono, 32Hz

-------------------------------
R244390603111<- пиво лить сюда

217

Re: liquidsoap

эм... не совсем через фолбэк, скорее через smooth_add

ну если не хочет то можно попробовать %external и lame

мистика: у меня бывало что от некоторых форматов падал shoutcast с ошибкой segmentation fault

218

Re: liquidsoap

smooth_add вызывает тот же самый fallback по сути своей

def smooth_add(~delay=0.5,~p=0.2,~normal,~special)
  d = delay
  fade.final = fade.final(duration=d*2.)
  fade.initial = fade.initial(duration=d*2.)
  q = 1. - p
  c = amplify
  fallback(track_sensitive=false,
           [special,normal],
           transitions=[
             fun(normal,special)->
               add(normalize=false,
                   [c(p,normal),
                    c(q,fade.final(type="sin",normal)),
                    sequence([blank(duration=d),c(q,special)])]),
             fun(special,normal)->
               add(normalize=false,
                   [c(p,normal),
                    c(q,fade.initial(type="sin",normal))])
           ])
end

через него пробовал, но если передать в виде
radio = smooth_add(normal=one,special=two)
без switch, то он постоянно воспроизводит второй поток, без первого.

-------------------------------
R244390603111<- пиво лить сюда

219

Re: liquidsoap

у меня он приглушал один поток и накладывал второй на него
а просто add ?

220

Re: liquidsoap

пишет tarasian666:

у меня он приглушал один поток и накладывал второй на него
а просто add ?

add попробую, можеш показать строку свою

-------------------------------
R244390603111<- пиво лить сюда

221

Re: liquidsoap

вроди оно radio = mksafe(smooth_add(delay=0.5,p=0.2, normal=list, special=live))
строка с add не сохранилась..

222

Re: liquidsoap

radio = mksafe(smooth_add(delay=0.5,p=0.2, normal=list, special=live))

хм, вообще не воркает как должно. идет тока "live"
tarasian666 у тя версия какая liquid?

-------------------------------
R244390603111<- пиво лить сюда

223

Re: liquidsoap

1.0.0-beta+svn (trunk/liquidsoap@rev8272).


# One for dynamic jingles, mixed on top of the stream with smooth starts/ends.
jingles_dyn = jingle_meta(playlist(reload=3600,root^"jingles.dynamic"))
jingles_dyn = fallback([request.queue(id="dynq"),jingles_dyn])
s = smooth_add(normal=s,special=switch([({ 0m0s or 30m0s }, jingles_dyn)]

224

Re: liquidsoap

версия та же.
Смотри как происходит, если передавать в special switch([({ 0m0s }, chtonibud) (т.е. с указанием точного времени когда наложить, то все отлично отрабатывает
но если не передавать switch (типа постоянно), либо switch([({ 10h-22h }, chtonibud) (типа наложить тока с 10 до 10 вечера) то уже шиш.
чешет радостно тока второй поток, первый вообще игнорирует

з.ы. пойду радостно пересоберу

Отредактировано Klef (06-07-2011 14:11:54)

-------------------------------
R244390603111<- пиво лить сюда

225

Re: liquidsoap

к слову говоря на днях вышла 1.0 beta 2

-------------------------------
R244390603111<- пиво лить сюда