savonet / liquidsoap

Liquidsoap is a statically typed scripting general-purpose language with dedicated operators and backend for all thing media, streaming, file generation, automation, HTTP backend and more.
http://liquidsoap.info
GNU General Public License v2.0
1.42k stars 130 forks source link

Issue with autocue and request.dynamic in v2.3.0 #4051

Closed Russsgithub closed 1 month ago

Russsgithub commented 3 months ago

Description

The error throws up line 196 in autocue.liq

Using the below script I get ...

Queue generic queue #1 crashed with exception Clock_conflict: At position: at /root/.opam/default/share/liquidsoap-lang/libs/autocue.liq, line 196, char 12-47, a source cannot belong to two clocks (clock(id=ffmpeg.filter.2.input.child,sync=stopped,pending=passive), clock(id=generic.2,sync=auto))
Raised at Clock.unify.(fun) in file "src/core/clock.ml", line 268, characters 10-79
Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
Called from Builtins_ffmpeg_filters.(fun) in file "src/core/builtins/builtins_ffmpeg_filters.ml", line 893, characters 6-56
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Lang_core.apply in file "src/lang/lang_core.ml" (inlined), line 264, characters 21-40
Called from Liquidsoap_lang__Lang_core.to_fun in file "src/lang/lang_core.ml" (inlined), line 282, characters 15-22
Called from Liquidsoap_lang__Lang_error.(fun) in file "src/lang/lang_error.ml", line 164, characters 16-23
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Lang_core.apply in file "src/lang/lang_core.ml" (inlined), line 264, characters 21-40
Called from Builtins_resolvers.(fun) in file "src/core/builtins/builtins_resolvers.ml", line 199, characters 12-175
Called from Request.resolve.resolve in file "src/core/request.ml", line 581, characters 22-66
Called from Request.resolve in file "src/core/request.ml", line 607, characters 41-50
Called from Request_dynamic.dynamic#fetch in file "src/core/sources/request_dynamic.ml", line 385, characters 18-45
Called from Request_dynamic.dynamic#feed_queue in file "src/core/sources/request_dynamic.ml", line 367, characters 14-24
Called from Duppy.Async.add.task in file "src/duppy.ml", line 407, characters 20-24
Called from Duppy.Task.t_of_task.(fun) in file "src/duppy.ml", line 153, characters 50-66
Called from Duppy.exec in file "src/duppy.ml", line 281, characters 16-23
Re-raised at Tutils.scheduler.(fun) in file "src/core/tools/tutils.ml", line 253, characters 8-48
Called from Duppy.exec in file "src/duppy.ml", line 284, characters 16-33
Called from Duppy.queue.run in file "src/duppy.ml", line 320, characters 7-24
Called from Duppy.queue in file "src/duppy.ml", line 370, characters 7-11
Re-raised at Duppy.queue in file "src/duppy.ml", line 375, characters 8-44
Called from Tutils.create.(fun).process in file "src/core/tools/tutils.ml", line 174, characters 12-15
PANIC: Liquidsoap has crashed, exiting.,
Please report at: https://github.com/savonet/liquidsoapQueue generic queue #1 crashed with exception Clock_conflict: At position: at /root/.opam/default/share/liquidsoap-lang/libs/autocue.liq, line 196, char 12-47, a source cannot belong to two clocks (clock(id=ffmpeg.filter.2.input.child,sync=stopped,pending=passive), clock(id=generic.2,sync=auto))
Raised at Clock.unify.(fun) in file "src/core/clock.ml", line 268, characters 10-79
Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
Called from Builtins_ffmpeg_filters.(fun) in file "src/core/builtins/builtins_ffmpeg_filters.ml", line 893, characters 6-56
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Lang_core.apply in file "src/lang/lang_core.ml" (inlined), line 264, characters 21-40
Called from Liquidsoap_lang__Lang_core.to_fun in file "src/lang/lang_core.ml" (inlined), line 282, characters 15-22
Called from Liquidsoap_lang__Lang_error.(fun) in file "src/lang/lang_error.ml", line 164, characters 16-23
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.eval_base_term in file "src/lang/evaluation.ml", line 213, characters 16-38
Called from Liquidsoap_lang__Evaluation.eval_term in file "src/lang/evaluation.ml", line 302, characters 10-43
Called from Liquidsoap_lang__Evaluation.eval in file "src/lang/evaluation.ml", line 311, characters 10-38
Called from Liquidsoap_lang__Evaluation.apply.f in file "src/lang/evaluation.ml", line 113, characters 8-12
Called from Liquidsoap_lang__Lang_core.apply in file "src/lang/lang_core.ml" (inlined), line 264, characters 21-40
Called from Builtins_resolvers.(fun) in file "src/core/builtins/builtins_resolvers.ml", line 199, characters 12-175
Called from Request.resolve.resolve in file "src/core/request.ml", line 581, characters 22-66
Called from Request.resolve in file "src/core/request.ml", line 607, characters 41-50
Called from Request_dynamic.dynamic#fetch in file "src/core/sources/request_dynamic.ml", line 385, characters 18-45
Called from Request_dynamic.dynamic#feed_queue in file "src/core/sources/request_dynamic.ml", line 367, characters 14-24
Called from Duppy.Async.add.task in file "src/duppy.ml", line 407, characters 20-24
Called from Duppy.Task.t_of_task.(fun) in file "src/duppy.ml", line 153, characters 50-66
Called from Duppy.exec in file "src/duppy.ml", line 281, characters 16-23
Re-raised at Tutils.scheduler.(fun) in file "src/core/tools/tutils.ml", line 253, characters 8-48
Called from Duppy.exec in file "src/duppy.ml", line 284, characters 16-33
Called from Duppy.queue.run in file "src/duppy.ml", line 320, characters 7-24
Called from Duppy.queue in file "src/duppy.ml", line 370, characters 7-11
Re-raised at Duppy.queue in file "src/duppy.ml", line 375, characters 8-44
Called from Tutils.create.(fun).process in file "src/core/tools/tutils.ml", line 174, characters 12-15

Steps to reproduce

# Make sure autocue gets used 
settings.autocue.internal.metadata_override := []
settings.autocue.amplify_behavior := "keep"

def next_track(stream)
  result = call_to_api(uri) # returns annotate:file:url.mp3
  result = "autocue:"^result

  request.create(null.get(result))
end

s = request.dynamic(prefetch=2, retry_delay=10., {next_track("music")})

output.dummy(fallible=true, s)

Expected behavior

N/A

Liquidsoap version

Liquidsoap rolling-release-v2.3.x+git@0139993a8
Copyright (c) 2003-2024 Savonet team
Liquidsoap is open-source software, released under GNU General Public License.
See <http://liquidsoap.info> for more information.

Liquidsoap build config

* Liquidsoap version  : rolling-release-v2.3.x+git@0139993a8

 * Compilation options
   - Release build       : false
   - Git SHA             : 0139993a8
   - OCaml version       : 4.14.1
   - OS type             : Unix
   - Libs versions       : angstrom=0.16.0 asetmap=0.8.1 asn1-combinators=0.2.6 astring=0.8.5 base=v0.16.3 base.base_internalhash_types=v0.16.3 base.caml=v0.16.3 base.shadow_stdlib=v0.16.3 base64=3.5.1 bigarray=[distributed with Ocaml] bigarray-compat=1.1.0 bigstringaf=0.10.0 bos=0.2.1 bytes=[distributed with OCaml 4.02 or above] ca-certs=v0.2.3 camlp-streams camomile.lib=2.0 cohttp=5.3.1 cohttp-lwt=5.3.0 cohttp-lwt-unix=5.3.0 conduit=6.2.3 conduit-lwt=6.2.3 conduit-lwt-unix=6.2.3 cry=1.0.3 cstruct=6.2.0 ctypes=0.22.0 ctypes-foreign=0.22.0 curl=0.9.2 domain-name=0.4.0 domain_shims dtools=0.4.5 dune-build-info=3.16.0 dune-private-libs.dune-section=3.16.0 dune-site=3.16.0 dune-site.private=3.16.0 duppy=0.9.4 eqaf=0.9 eqaf.bigstring=0.9 eqaf.cstruct=0.9 ffmpeg-av=68e7757 ffmpeg-avcodec=68e7757 ffmpeg-avdevice=68e7757 ffmpeg-avfilter=68e7757 ffmpeg-avutil=68e7757 ffmpeg-swresample=68e7757 ffmpeg-swscale=68e7757 fileutils=0.6.4 fmt=0.9.0 fpath=0.7.3 gen=1.1 gmap=0.3.0 hkdf=1.0.4 integers ipaddr=5.6.0 ipaddr-sexp=5.6.0 ipaddr.unix=5.6.0 ladspa=0.2.2 liquidsoap-lang=rolling-release-v2.3.x liquidsoap-lang.console=rolling-release-v2.3.x liquidsoap_builtins=rolling-release-v2.3.x-dirty liquidsoap_core=rolling-release-v2.3.x-dirty liquidsoap_ffmpeg=rolling-release-v2.3.x-dirty liquidsoap_ladspa=rolling-release-v2.3.x-dirty liquidsoap_optionals=rolling-release-v2.3.x-dirty liquidsoap_oss=rolling-release-v2.3.x-dirty liquidsoap_prometheus=rolling-release-v2.3.x-dirty liquidsoap_runtime=rolling-release-v2.3.x-dirty liquidsoap_sdl=rolling-release-v2.3.x-dirty liquidsoap_sdl_log_level=rolling-release-v2.3.x-dirty liquidsoap_soundtouch=rolling-release-v2.3.x-dirty liquidsoap_stdlib=rolling-release-v2.3.x-dirty liquidsoap_stereotool=rolling-release-v2.3.x-dirty liquidsoap_tls=rolling-release-v2.3.x-dirty logs=0.7.0 logs.fmt=0.7.0 logs.lwt=0.7.0 lwt=5.7.0 lwt.unix=5.7.0 macaddr=5.6.0 magic-mime=1.3.1 mem_usage=0.1.1 menhirLib=20240715 metadata=0.3.0 mirage-crypto=0.11.3 mirage-crypto-ec=0.11.3 mirage-crypto-pk=0.11.3 mirage-crypto-rng=0.11.3 mirage-crypto-rng.unix=0.11.3 mm=0.8.5 mm.audio=0.8.5 mm.base=0.8.5 mm.image=0.8.5 mm.midi=0.8.5 mm.video=0.8.5 ocplib-endian ocplib-endian.bigstring parsexp=v0.16.0 pbkdf ppx_compare.runtime-lib=v0.16.0 ppx_hash.runtime-lib=v0.16.0 ppx_sexp_conv.runtime-lib=v0.16.0 prometheus=1.2 prometheus-app=1.2 ptime=1.1.0 ptime.clock.os=1.1.0 re=1.11.0 rresult=0.7.0 saturn_lockfree=0.4.1 sedlex=3.2 seq=[distributed with OCaml 4.07 or above] sexplib=v0.16.0 sexplib0=v0.16.0 soundtouch=0.1.9 stdlib-shims=0.3.0 stereotool=rolling-release-v2.3.x-dirty str=[distributed with Ocaml] stringext=1.6.0 threads=[distributed with Ocaml] threads.posix=[internal] tls=0.17.5 tsdl=v1.0.0 tsdl-image=0.5 tsdl-ttf=0.6 unix=[distributed with Ocaml] uri=4.4.0 uri-sexp=4.4.0 uri.services=4.4.0 x509=0.16.5 zarith=1.14
   - architecture        : amd64
   - host                : x86_64-pc-linux-gnu
   - target              : x86_64-pc-linux-gnu
   - system              : linux
   - ocamlopt_cflags     : -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -g -O2 -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
   - native_c_compiler   : x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -g -O2 -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_FILE_OFFSET_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2
   - native_c_libraries  : -lm

 * Configured paths
   - mode              : default
   - standard library  : (set by dune-site)
   - scripted binaries : (set by dune-site)
   - rundir            : (set by dune-site)
   - logdir            : (set by dune-site)
   - user cache        : $HOME/.cache/liquidsoap (override with $LIQ_CACHE_USER_DIR)
   - system cache      : (set by dune-site) (override with $LIQ_CACHE_SYSTEM_DIR)
   - camomile files    : (set by dune-site)

 * Supported input formats
   - MP3               : no (requires mad)
   - AAC               : no (requires faad)
   - Ffmpeg            : yes
   - Flac (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Opus              : no (requires opus)
   - Speex             : no (requires speex)
   - Theora            : no (requires theora)
   - Vorbis            : no (requires vorbis)

 * Supported output formats
   - FDK-AAC           : no (requires fdkaac)
   - Ffmpeg            : yes
   - MP3               : no (requires lame)
   - MP3 (fixed-point) : no (requires shine)
   - Flac (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Opus              : no (requires opus)
   - Speex             : no (requires speex)
   - Theora            : no (requires theora)
   - Vorbis            : no (requires vorbis)

 * Tags
   - Taglib (ID3 tags) : no (requires taglib)
   - Vorbis            : no (requires vorbis)

 * Input / output
   - ALSA              : no (requires alsa)
   - AO                : no (requires ao)
   - FFmpeg            : yes
   - JACK              : no (requires bjack)
   - OSS               : yes
   - Portaudio         : no (requires portaudio)
   - Pulseaudio        : no (requires pulseaudio)
   - SRT               : no (requires srt)

 * Audio manipulation
   - FFmpeg            : yes
   - LADSPA            : yes
   - Lilv              : no (requires lilv)
   - Samplerate        : no (requires samplerate)
   - SoundTouch        : yes
   - StereoTool        : yes

 * Video manipulation
   - camlimages        : no (requires camlimages)
   - FFmpeg            : yes
   - frei0r            : no (requires frei0r)
   - ImageLib          : no (requires imagelib)
   - SDL               : yes

 * MIDI manipulation
   - DSSI              : no (requires dssi)

 * Visualization
   - GD                : no (requires gd)
   - Graphics          : no (requires graphics)
   - SDL               : yes

 * Additional libraries
   - FFmpeg filters    : yes
   - FFmpeg devices    : yes
   - inotify           : no (requires inotify)
   - irc               : no (requires irc-client-unix)
   - jemalloc          : no (requires jemalloc)
   - lastfm            : no (requires lastfm)
   - lo                : no (requires lo)
   - memtrace          : no (requires memtrace)
   - osc               : no (requires osc-unix)
   - ssl               : no (requires ssl)
   - sqlite3           : no (requires sqlite3)
   - tls               : yes
   - posix-time2       : no (requires posix)
   - windows service   : no (requires winsvc)
   - YAML support      : no (requires yaml)
   - XML playlists     : no (requires xmlplaylist)

 * Monitoring
   - Prometheus        : yes

Installation method

From OPAM

Additional Info

This seems to occur after a couple? of requests get processed.

I've been trying to track it down further but this is the best i can do at the mo.

I'm happy to dig further if needed.

Thanks.

toots commented 3 months ago

Hi!

Thanks for reporting.

I'm not sure if I have enough yet to reproduce. This script seems to work:

log.level := 4

# Make sure autocue gets used
settings.autocue.internal.metadata_override := []
settings.autocue.amplify_behavior := "keep"

def next_track(stream)
  result = "autocue:/Users/toots/sources/test-stream/audio/test.mp3"

  request.create(result)
end

s = request.dynamic(prefetch=2, retry_delay=10., {next_track("music")})

output.dummy(fallible=true, s)
Russsgithub commented 3 months ago

@toots ,

settings.log.level := 4

settings.autocue.internal.metadata_override := []

count = ref(0)
def next_track()
  req = ref("")
  if count() == 0 then
    req := "autocue:file:test1.mp3"
  elsif count() == 1 then
    req := "autocue:file:test2.mp3"
  else
    req := "autocue:file:test3.mp3"
  end
  count := count() + 1
  request.create(req())
end

s = request.dynamic(id="music_alone", prefetch=2, retry_delay=10., next_track)

output.dummy(fallible=true, s)

This seems to trigger it. But only sometimes. If it succeeds try running it a few times and it should fail.

I'm sort of guessing that it may be occurring when autocue (or replaygain) calculations are occuring on different files at the same time ? Which may also deppend on the hardware being used and the speed the calculations are being done ?

The script you have with one static file passes every time for me also .

Thanks

Russsgithub commented 3 months ago

@toots , It seems if i use global enable enable_autocue_metadata() or enable_replaygain_metadata() I don't get the clock conflict. Using the protocol autocue: or replaygain: it pops up and crashes.

Russsgithub commented 1 month ago

Closing as seems to not longer happen.