首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >liquidsoap不会重新加载播放列表文件

liquidsoap不会重新加载播放列表文件
EN

Stack Overflow用户
提问于 2013-08-06 14:49:17
回答 2查看 3.4K关注 0票数 5

我对液皂有个很奇怪的问题。我有以下播放列表:

代码语言:javascript
复制
myplaylist = playlist(mode="normal",playlist_file,reload_mode="rounds",reload=1)

myplaylist = on_metadata(apply_metadata,myplaylist)

其中,apply_metadata调用一个python脚本,该脚本在调用时立即更新播放列表,但有时Liquidsoap在重新加载后继续播放旧的播放列表,即使调用了apply_metadata过程。

提前谢谢你的帮助。

液态code脚本的整个代码:

代码语言:javascript
复制
# This function is called when
# a new metadata block is passed in
# the stream.
def apply_metadata(m) =
  title = m["filename"]
  artist = m["artist"]
  print("Now playing: #{title} by #{artist}")

  filename = string.split(separator="/",title) # rozdelime cestu po lomitkach
  filename = list.nth(list.rev(filename),0) # vezmeme meno suboru
  filename = list.nth(string.split(separator="\.",filename),0) # odpojime koncovku .mp3

  command = "python3.3 feedback.py " ^ filename
  system(command)

end

#!/usr/bin/liquidsoap 
# Log dir 
set("log.file.path","/tmp/basic-radio.log")

#tidy up before playing playlist
playlist_file = "playlist.m3u"
system("python3.3 feedback.py -init")


# Music 
myplaylist = playlist(mode="normal",playlist_file,reload_mode="rounds",reload=1)

myplaylist = on_metadata(apply_metadata,myplaylist)

# Stream it out 
output.icecast(%mp3, host = "localhost", port = 8080, password = "baldur", mount = "stream", myplaylist, fallible=true)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-02 19:38:41

我终于找到了在Liquidsoap邮件列表中询问的解决方案

不过,我首先想到的是,您可能正在以一种不打算使用的方式使用播放列表()。 你想过使用request.dynamic吗?这个操作符让你完全控制下一首歌的播放,下一个音轨回调可以用你选择的任何语言编写,这也使你更方便。 祝好运! 罗曼

票数 5
EN

Stack Overflow用户

发布于 2015-03-02 23:43:24

你也可以用

代码语言:javascript
复制
myplaylist = playlist(mode="normal",playlist_file,reload_mode="watch")

一旦检测到任何更改,这将重新加载播放列表。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18083472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档