如何检查RTMP Live流是打开还是关闭

时间:2015-07-16 10:29:00

标签: php ffmpeg rtmp

我希望tocheck RTMP直播开启或关闭麦克风。

我使用过RTMP DUMP

exec("/usr/bin/rtmpdump -V -v -r rtmp://www.exapmle.com/etc./13/mic1 -o /tmp/rtmp-checker.log 2>&1", $pp);

我发现了这个伎俩 http://blog.svnlabs.com/how-to-check-rtmp-source-stream-is-live-or-not/

但我不满足于结果,因为有些时候它不起作用并产生随机字符串作为结果。

So some time i am facing this type of error. any perfect solution for this.? 如果您有任何其他解决方案使用FFMPEG或OTHER,那么非常欢迎您。

1 个答案:

答案 0 :(得分:9)

您可以使用ffprobe

ffprobe -v quiet -print_format json -show_streams rtmp://example.com/stream

如果命令失败,您将获得返回码10以及成功时包含检测到的流的JSON字符串:

{
    "index": 1,
    "codec_name": "aac",
    "codec_long_name": "AAC (Advanced Audio Coding)",
    "profile": "LC",
    "codec_type": "audio",
    ...
}

这是一项基本测试,如果你想要进一步下载,你可以下载几秒钟的流,用ffprobe验证它,在其上运行silencedetect等。