我能够在linux中使用以下命令从ip摄像机播放rtsp流:
gst-launch -v rtspsrc location="rtsp://admin:pw@192.168.3.106/live1.sdp" name=demux demux. ! queue max-size-buffers=2 ! rtph264depay ! ffdec_h264 ! ffmpegcolorspace ! autovideosink sync=false
在尝试播放之前如何检查RTSP流是否在网络上可用。我希望我的流播放检测rtsp流是否下降,这样我就不会尝试播放流,直到可用。
您需要编写客户端应用程序来完成此操作,我认为在命令行上是不可能的。有了这个应用程序,你可以尝试从rtsp源播放,如果超时,你可以再试一次,或者向用户提供一个合适的消息,说明流不可用或重试。
已经说过,有许多开源的github项目与这样一个播放器的各种平台Android, Windows, Linux QT等。一个简单的谷歌搜索'gstreamer rtsp viewer github'将列出很多。