在流式传输时重新加载ffserver.conf

时间:2014-04-12 23:27:41

标签: linux configuration ffmpeg ffserver

我想动态更新ffserver.conf以向其添加新的流源。

无论如何在ffserver中重新加载ffserver.conf而不停止运行流?

2 个答案:

答案 0 :(得分:5)

重新加载" ffserver.conf" ffserver不支持配置文件。它看起来没有重启代码。

有ffserver的来源:ffmpeg/ffserver.c第4020行:

4020 static int parse_ffconfig(const char *filename)

配置解析器只调用一次 - 来自main():

4710 int main(int argc, char **argv)
4711 {
...
4735     if ((ret = parse_ffconfig(config_filename)) < 0) { ...

没有特殊的信号处理程序(如init中的HUP)用于重新启动服务器或重新读取配置(仅使用fork并使用套接字时需要SIGCHLDSIGPIPE。)< / p>

答案 1 :(得分:2)

似乎可以通过ffserver配置来解决这个问题。

记住Feed已进入并且流出来了,并且您可以使用ffmpeg向服务器提供订阅源 - 您可以配置大量通用订阅源和流(可能根据SD,HD,音频等一般需求进行分组只有等等)然后根据需要启动供稿,向相关客户提供网址,然后重新声明该供稿槽&#39;饲料完成后。

这意味着您可以有效地管理在ffserver外部动态添加/删除流的所有其他方面。请参阅ffserver附带的示例(我在/etc/ffserver.conf中找到它)。这里有一个基本演示:https://www.ffmpeg.org/ffserver-all.html#How-do-I-make-it-work_003f

唯一的缺点是你的流将被描述为非描述性的HDStream1 ......等等。