我希望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/
但我不满足于结果,因为有些时候它不起作用并产生随机字符串作为结果。
如果您有任何其他解决方案使用FFMPEG或OTHER,那么非常欢迎您。
答案 0 :(得分:9)
您可以使用ffprobe
:
ffprobe -v quiet -print_format json -show_streams rtmp://example.com/stream
如果命令失败,您将获得返回码1
或0
以及成功时包含检测到的流的JSON字符串:
{
"index": 1,
"codec_name": "aac",
"codec_long_name": "AAC (Advanced Audio Coding)",
"profile": "LC",
"codec_type": "audio",
...
}
这是一项基本测试,如果你想要进一步下载,你可以下载几秒钟的流,用ffprobe
验证它,在其上运行silencedetect
等。