我使用nginx RTMP模块来播放视频流。数据是从通过3G连接连接的远程设备上推送到nginx/RTMP服务器的,在这里,我们支付每MB传输的费用,所以只有在有侦听器/播放器时才将视频流到服务器中是我感兴趣的。
(不幸的是,对于那些不熟悉RTMP的人来说,即使没有侦听器观看实时流,服务器也总是在“吞食”数据)。
我找到了一种开始流到nginx/RTMP服务器的方法,这样我就可以保存跨3G (简单地将web链接重定向到rtmp链接,没有问题)的数据,但是我无法找到任何可靠的方法来检测RTMP客户机(player)何时关闭连接,从而阻止设备流到nginx。
因此,我的问题是:是否有一种方法可以指示nginx (或它的RTMP模块)触发事件、信号、创建/删除文件时连接到特定的RTMP URL?我可以通过观察文件的创建/删除,通过incron,所以这是相当好的生活。
或者我需要进入API级别,还是深入到源代码中?
发布于 2017-06-19 03:01:28
希望你已经得到了答案。无论哪种方式,我都建议在exec_publish、exec_record_done、on_play和on_publish事件的指令中查找标题。
on_publish可能有助于检查状态并允许或拒绝流。
https://stackoverflow.com/questions/38482814
复制相似问题