ОсновноеRadiotalkПользовательское
Технологии вещания, софт, скрипты
7   •   Посмотреть все темы

liquidsoap

 

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

0
468
Klef @Klef
  1. radio = mksafe(smooth_add(delay=0.5,p=0.2, normal=list, special=live))

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

0
6245
Тарас @tarasian666
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)]

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

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

Отредактировано Klef - 06.07.2011
0
468
Klef @Klef
к слову говоря на днях вышла 1.0 beta 2

0
468
Klef @Klef
вопрос закрыт
  1. mus = amplify(0.1,mksafe(playlist("/data/radio/music")))
  2. fon = amplify(0.1,mksafe(playlist("/data/radio/fon")))
  3. radio=add([mus,fon])

Отредактировано Klef - 06.07.2011
0
468
Klef @Klef
и продолжаем неделю глупых вопросов.
Умеет ли наше мыло писать в какой либо файл информацию о тегах, текущий "процент" трека и прочую тех информацию, на подобии как ices.cue

0
6245
Тарас @tarasian666
незнаю может ли писать, но всю эту информацию можно вытянуть через telnet
php запросом с fsockopen очень просто все эти переменные достать

0
468
Klef @Klef
tarasian666 пишет:

но всю эту информацию можно вытянуть через telnet

вот, о нем как то и не подумал

0
833
metra52 @metra52
фишка в том что у меня даже если ./configure проходит то make уже нет
  1. [23:04:31] kochegizov: вот сконфигурировалось
  2. [23:04:32] kochegizov: ---------------------------------------------------------------- Installation
  3. prefix : /usr/local
  4. exec_prefix : ${prefix}
  5. binary : ${exec_prefix}/bin
  6. configuration : ${prefix}/etc/liquidsoap
  7. logging : ${prefix}/var/log/liquidsoap
  8. PIDs : ${prefix}/var/run/liquidsoap
  9. logrotate conf : ${prefix}/etc/logrotate.d
  10. man page : ${datarootdir}/man/man1
  11. doc : ${datarootdir}/doc
  12. -------------------------------------------------------------------- Features
  13. * Supported input formats
  14. - Vorbis : no (requires vorbis)
  15. - Theora : no (requires theora)
  16. - Speex : no (requires speex)
  17. - Dirac : no (requires schroedinger)
  18. - Flac (native) : no (requires flac)
  19. - Flac (ogg) : no (requires flac.ogg)
  20. - MP3 : yes
  21. - AAC : no (requires faad)
  22. - text-to-speech : liquidtts will use "false" as a synthetizer,
  23. but you can edit it later.
  24. - XML playlists : no (requires xmlplaylist)
  25. - Lastfm : no (requires lastfm)
  26. * Supported output formats
  27. - Vorbis : no (requires vorbis)
  28. - MP3 : yes
  29. - AAC : no (requires voaacenc)
  30. - AAC+ : no (requires aacplus)
  31. - SPEEX : no (requires speex)
  32. - Theora : no (requires theora)
  33. - Dirac : no (requires schroedinger)
  34. * Tags
  35. - Taglib (ID3 tags) : yes
  36. - Vorbis : no (requires vorbis)
  37. - charset detection : no (requires camomile)
  38. * Input / output
  39. - Icecast/Shoutcast : yes
  40. - AO : yes
  41. - OSS : yes
  42. - ALSA : no (requires alsa)
  43. - Portaudio : no (requires portaudio)
  44. - Pulseaudio : yes
  45. - JACK : no (requires bjack)
  46. - Old JACK : no (requires jack)
  47. - opal : no
  48. - GStreamer : no (requires gstreamer)
  49. * Audio manipulation
  50. - Samplerate : yes
  51. - SoundTouch : no (requires soundtouch)
  52. - LADSPA : no (requires ladspa)
  53. * Video manipulation
  54. - Gavl : no (requires gavl)
  55. - camlimages :
  56. * MIDI manipulation
  57. - DSSI : no (requires dssi)
  58. * Visualization
  59. - Graphics : yes
  60. - SDL : no (requires sdl)
  61. * Additional libraries
  62. - magic : no (requires magic)
  63. - lo : no (requires lo)
  64. * Graphical interfaces
  65. - Python GUI : no
  66. -----------------------------------------------------------------------------
  67. The Savonet Team thanks you for using liquidsoap...
  68. Now, run
  69. make
  70. to compile, and as root
  71. make install
  72. to install, and...
  73. Have fun!
  74. -bash-3.2#
  75. [23:05:26] kochegizov: а дальше такое
  76. [23:05:26] kochegizov: -bash-3.2# make
  77. grep: PACKAGES.default: No such file or directory
  78. for i in ocaml-cry-0.2.0 ocaml-ao-0.2.0 ocaml-pulseaudio-0.1.1 ocaml-mad-0.4.2 ocaml-taglib-0.1.4 ocaml-lame-0.3.0 ocaml-samplerate-0.1.1 ocaml-dtools-0.2.2 ocaml-duppy-0.4.0 ocaml-mm-0.1.0 liquidsoap-1.0.0-beta2.1; do make -C $i || exit 1; done
  79. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0'
  80. make -C src all
  81. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0/src'
  82. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0/src'
  83. make[3]: `cry.cma' is up to date.
  84. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0/src'
  85. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0/src'
  86. make[3]: `cry.cmxa' is up to date.
  87. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0/src'
  88. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0/src'
  89. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-cry-0.2.0'
  90. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0'
  91. make -C src all
  92. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0/src'
  93. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0/src'
  94. make[3]: `libao_stubs.a' is up to date.
  95. make[3]: `ao.cma' is up to date.
  96. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0/src'
  97. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0/src'
  98. make[3]: `libao_stubs.a' is up to date.
  99. make[3]: `ao.cmxa' is up to date.
  100. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0/src'
  101. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0/src'
  102. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-ao-0.2.0'
  103. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1'
  104. make -C src all
  105. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1/src'
  106. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1/src'
  107. make[3]: `libpulseaudio_stubs.a' is up to date.
  108. make[3]: `pulseaudio.cma' is up to date.
  109. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1/src'
  110. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1/src'
  111. make[3]: `libpulseaudio_stubs.a' is up to date.
  112. make[3]: `pulseaudio.cmxa' is up to date.
  113. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1/src'
  114. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1/src'
  115. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-pulseaudio-0.1.1'
  116. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2'
  117. make -C src
  118. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2/src'
  119. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2/src'
  120. make[3]: `libmad_stubs.a' is up to date.
  121. make[3]: `mad.cma' is up to date.
  122. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2/src'
  123. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2/src'
  124. make[3]: `libmad_stubs.a' is up to date.
  125. make[3]: `mad.cmxa' is up to date.
  126. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2/src'
  127. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2/src'
  128. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-mad-0.4.2'
  129. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4'
  130. make -C src all
  131. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4/src'
  132. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4/src'
  133. make[3]: `libtaglib_stubs.a' is up to date.
  134. make[3]: `taglib.cma' is up to date.
  135. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4/src'
  136. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4/src'
  137. make[3]: `libtaglib_stubs.a' is up to date.
  138. make[3]: `taglib.cmxa' is up to date.
  139. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4/src'
  140. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4/src'
  141. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-taglib-0.1.4'
  142. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0'
  143. make -C src all
  144. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0/src'
  145. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0/src'
  146. make[3]: `liblame_stubs.a' is up to date.
  147. make[3]: `lame.cma' is up to date.
  148. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0/src'
  149. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0/src'
  150. make[3]: `liblame_stubs.a' is up to date.
  151. make[3]: `lame.cmxa' is up to date.
  152. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0/src'
  153. rm -f lame_dynlink.cmi
  154. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0/src'
  155. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-lame-0.3.0'
  156. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1'
  157. make -C src all
  158. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1/src'
  159. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1/src'
  160. make[3]: `libsamplerate_stubs.a' is up to date.
  161. make[3]: `samplerate.cma' is up to date.
  162. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1/src'
  163. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1/src'
  164. make[3]: `libsamplerate_stubs.a' is up to date.
  165. make[3]: `samplerate.cmxa' is up to date.
  166. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1/src'
  167. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1/src'
  168. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-samplerate-0.1.1'
  169. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2'
  170. make -C src
  171. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2/src'
  172. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2/src'
  173. make[3]: `dtools.cma' is up to date.
  174. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2/src'
  175. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2/src'
  176. make[3]: `dtools.cmxa' is up to date.
  177. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2/src'
  178. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2/src'
  179. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-dtools-0.2.2'
  180. make[1]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-duppy-0.4.0'
  181. make -C src all
  182. make[2]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-duppy-0.4.0/src'
  183. make[3]: Entering directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-duppy-0.4.0/src'
  184. ocamlc.opt -thread -c -cc "gcc" -ccopt "-fPIC -g -O2 -Wall -DCAML_NAME_SPACE \
  185. -DPIC \
  186. -I/usr/lib/ocaml/pcre -o duppy_stubs.o " duppy_stubs.c
  187. duppy_stubs.c:23:30: error: caml/unixsupport.h: No such file or directory
  188. duppy_stubs.c: In function 'ocaml_duppy_write_ba':
  189. duppy_stubs.c:50: warning: implicit declaration of function 'Caml_ba_data_val'
  190. duppy_stubs.c:50: warning: initialization makes pointer from integer without a cast
  191. duppy_stubs.c:56: warning: implicit declaration of function 'write'
  192. duppy_stubs.c:60: warning: implicit declaration of function 'uerror'
  193. duppy_stubs.c:60: error: 'Nothing' undeclared (first use in this function)
  194. duppy_stubs.c:60: error: (Each undeclared identifier is reported only once
  195. duppy_stubs.c:60: error: for each function it appears in.)
  196. make[3]: *** [duppy_stubs.o] Error 2
  197. make[3]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-duppy-0.4.0/src'
  198. make[2]: *** [byte-code-library] Error 2
  199. make[2]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-duppy-0.4.0/src'
  200. make[1]: *** [all] Error 2
  201. make[1]: Leaving directory `/root/liquidsoap-1.0.0-beta2.1-full/ocaml-duppy-0.4.0'
  202. make: *** [all] Error 1
  203. -bash-3.2#

У меня CentOS 5.4(Final)

Отредактировано metra52 - 11.07.2011
0
468
Klef @Klef
суля по логу, не хватает, или не видит duppy_stubs
тока что это, не подскажу =)

0
468
Klef @Klef
ага, вижу, собираете версию 1.0.0-beta2.1-full
она у мну тож на этом летит.

собирал 1.0.0-beta2
но там какой то косяк с ocaml-flaad и ocaml-mad, подсунул из svn версии

0
833
metra52 @metra52
я эти пакеты исключил, но ошибка с дуппи в любой версии хоть в свн хоть в какой то еще одно и тоже

0
6245
Тарас @tarasian666
у меня был трабл с faad то есть его отключал а оно все ровно материлось что его нет, собрал с ним и все пучком

Добавлено спустя 2 минуты 34 секунды:
PS НЕ СТАВЬТЕ CENTOS ЕСЛИ ХОТИТЕ ИНЕТ РАДИО ! )))

0
833
metra52 @metra52
ахахха точно Тарас +1)))) Дружно ставим Debian

0
833
metra52 @metra52
Можете пояснить?

for-all-host:~# ./liqu.liq
./liqu.liq: line 3: syntax error near unexpected token `"log.file.path","/tmp/nonstop.log"'
./liqu.liq: line 3: `set("log.file.path","/tmp/nonstop.log")'

Отредактировано metra52 - 09.07.2011
0
223
Игорь @devilben
metra52 пишет:

я эти пакеты исключил, но ошибка с дуппи в любой версии хоть в свн хоть в какой то еще одно и тоже

в самом низу PACKAGES:
  1. # ============================================================================
  2. # Finally, the mandatory lib dtools, duppy and liquidsoap...
  3. # ============================================================================
  4. ocaml-dtools
  5. ocaml-duppy
  6. ocaml-mm
  7. liquidsoap

типа даппи обязательный пакет

Отредактировано devilben - 09.07.2011
0
833
metra52 @metra52
Ну и....он не ставится. И вот по логу скажите что нибудь .... ставил из deb пакета версию 0.9.2 выдало при запуске такую вот шнягу
metra52 пишет:

Можете пояснить?

for-all-host:~# ./liqu.liq
./liqu.liq: line 3: syntax error near unexpected token `"log.file.path","/tmp/nonstop.log"'
./liqu.liq: line 3: `set("log.file.path","/tmp/nonstop.log")'

Файл такого содержания
  1. #!/usr/local/bin/liquidsoap
  2. set("log.file.path","/tmp/nonstop.log")
  3. set("init.daemon",true)
  4. set("init.daemon.pidfile",false)
  5. # telnet server для использования liGUIdsoap
  6. set("server.telnet", true)
  7. # функция кроссфейда, здесь желательно ни чего не менять
  8. def crossfade(~start_next,~fade_in,~fade_out,s)
  9. s = fade.in(duration=fade_in,s)
  10. s = fade.out(duration=fade_out,s)
  11. fader = fun (a,b) -> add(normalize=false,[b,a])
  12. cross(fader,s)
  13. end
  14. #дневной плейлист
  15. day = out(playlist("/var/www/metra52/data/www/onlydc.ru/music/day.txt"))
  16. #ночной
  17. night = out(playlist("/var/www/metra52/data/www/onlydc.ru/music/night.txt"))
  18. #Джинглы
  19. jingles = out(playlist("/var/www/metra52/data/www/onlydc.ru/music/jingls.txt"))
  20. myplay = switch([({ 3h-23h }, day),({ 23h-3h }, night)])
  21. def smooth_add(~delay=0.5,~p=0.2,~normal,~special)
  22. d = delay
  23. fade.final = fade.final(duration=d*2.)
  24. fade.initial = fade.initial(duration=d*2.)
  25. q = 1. - p
  26. c = amplify
  27. fallback(track_sensitive=false,
  28. [special,normal],
  29. transitions=[
  30. fun(normal,special)->
  31. add(normalize=false,
  32. [c(p,normal),
  33. c(q,fade.final(type="sin",normal)),
  34. sequence([blank(duration=d),c(q,special)])]),
  35. fun(special,normal)->
  36. add(normalize=false,
  37. [c(p,normal),
  38. c(q,fade.initial(type="sin",normal))])
  39. ])
  40. end
  41. #построение плейлиста с кроссфейдом
  42. #fade_out - затухание предыдущей песни в сек
  43. #fade_in - нарастание следующей песни в сек
  44. radioq = mksafe(crossfade(start_next=1.,fade_out=7.,fade_in=7.,myplay))
  45. radio = smooth_add(normal=radioq,special=switch([({ 20m0s or 50m0s }, jingles)]))
  46. #radio = random(weights = [1, 4],[jingles, myplay])
  47. #запускаем вещалку
  48. #output.icecast(%mp3,
  49. # host = "localhost", port = 9000,
  50. # password = "216937612", mount = "non-stop",name="OnLY DanCe Radio ~ RJ^NOED ~net", description="Club Music For LIVE", genre="Club House",url="http://onlydc.ru",radio)

0
223
Игорь @devilben
metra52 пишет:

Можете пояснить?

for-all-host:~# ./liqu.liq
./liqu.liq: line 3: syntax error near unexpected token `"log.file.path","/tmp/nonstop.log"'
./liqu.liq: line 3: `set("log.file.path","/tmp/nonstop.log")'

Попробуй поменять местами
  1. #!/usr/local/bin/liquidsoap
  2. set("init.daemon",true)
  3. set("init.daemon.pidfile",false)
  4. set("log.file.path","/tmp/liquidsoap.log")

0
833
metra52 @metra52
не помогло+ до этого как то 1 раз и так работало

0





Согласие на обработку данных на нашем сайте

Продолжая просматривать страницу, вы соглашаетесь с использованием файлов «Cookie» и с Политикой конфиденциальности «Privacy».
Наверху или внизу страницы вы можете изменить валюту и язык по умолчанию. Английская версия сайта ещё находится в доработке и доступна не полностью.