Ищите, включайте или перематывайте вперед в треке, используя LiquidSoap - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь начать трек (n) секунд с начала.

До сих пор я придумал два способа:

1. Функция поиска сервера

server.register(namespace = source.id(input_fs),
    description="seek to relative position in #{source.id(input_fs)}",
    usage = "seek <duration in seconds>",
    "seek",
    fun(t) -> begin
        log("Seeking #{t} sec")
        t = float_of_string(default=0.,t)
        ret = source.seek(input_fs, t)
        "Seeked #{ret} seconds."
    end
)

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

Сравните: http://u.delta9.pl/k/liquidsoap/seek.html

2. cue_in Аннотация

Вместо того, чтобы отправлять путь к файлу к коню, я украшаю его аннотацией cue_in:

"annotate:liq_cue_in=\"10.\":/path/to/file"

Кроме того, необходимо выполнить вырезку реплики. обязательно:

  input_fs = request.equeue(id="fs")
  input_fs = cue_cut(input_fs)

Это было бы мое идеальное решение, но оно просто не имеет никакого эффекта. Нет сообщения об ошибке, ничего.

Должно ли это на самом деле работать с equeue или оно предназначено только для playlist?

...