-3

我有一个 python 脚本,可以调用数据库来获取音乐曲目。该脚本返回该音乐文件的路径。如何让 Liquidsoap 调用 python 脚本并加载脚本返回的音乐文件?

我还需要知道 Liquidsoap 播放该文件并将其返回给 python 脚本的日期/时间。

在 Liquidsoap 中,我目前只是让它监视播放列表文件的更改:

myplaylist = playlist(mode="normal",reload=0,reload_mode="watch","/home/wruser/radio/test.m3u")

python 脚本进行数据库调用,然后写入 test.m3u 文件。

我在想,也许 Liquidsoap 中有一种方法可以调用脚本并让它返回文件的位置,这样 Liquidsoap 就可以加载它。我还想知道 Liquidsoap 执行此操作的日期/时间,以便我可以让 python 脚本将该信息保存回数据库。

我正在使用liquidsoap 将输出发送到Icecast 服务器。

问候, 安东尼

4

1 回答 1

1

好的,我找到了使用以下代码从 python 脚本中获取结果的答案:

def my_request_function() = 
  # Get the first line of my external process
  result = list.hd(default="", get_process_lines("python3 /home/wruser/radio/python/test.py"))
  print(result)
  # Create and return a request using this result
  [request.create(result)]
end

# Create the source
s = request.dynamic.list(my_request_function)
于 2020-07-28T14:18:38.020 回答