多个流的RTSP服务器(gstreamer)

多个流的RTSP服务器(gstreamer),gstreamer,rtsp,Gstreamer,Rtsp,我正在尝试使用gstreamer设置RTSP服务器。我可以使用一些帮助来定义服务器 该项目的概念是: 我们有几个摄像头模块(比如“cam0”和“cam1”),每个模块都有一些视频通道(HD和SD)和一些音频通道(language0和language1)。用户(RTSP客户端)应该能够在不同的视频和音频通道之间切换。如果用户正在使用language0观看HD流,他不想接收其他流(减少所需带宽) 问题是,我应该如何实现RTSP服务器来处理这些需求 以下哪项建议是最好的?或者如果有更好的方法,请告诉我

我正在尝试使用gstreamer设置RTSP服务器。我可以使用一些帮助来定义服务器

该项目的概念是:
我们有几个摄像头模块(比如“cam0”和“cam1”),每个模块都有一些视频通道(HD和SD)和一些音频通道(language0和language1)。用户(RTSP客户端)应该能够在不同的视频和音频通道之间切换。如果用户正在使用language0观看HD流,他不想接收其他流(减少所需带宽)

问题是,我应该如何实现RTSP服务器来处理这些需求

以下哪项建议是最好的?或者如果有更好的方法,请告诉我

  • 每个摄像头模块使用一个RTSP服务器,此服务器具有多个URI,如:
    服务器0:rtsp://IP:port/HD
    服务器0:rtsp://IP:port/SD
    服务器0:rtsp://IP:port/lang0
    服务器0:rtsp://IP:port/lang1
  • 每个摄像头模块使用多个RTSP服务器,每个服务器都有一个URI,如:
    服务器0:rtsp://IP:port0/HD
    服务器1:rtsp://IP:port1/SD
    服务器2:rtsp://IP:port2/lang0
    服务器3:rtsp://IP:port3/lang1
  • 每个摄像头模块使用一个RTSP服务器,一个URI和几个子流,如:
    服务器0:rtsp://IP:port/stream (包含子流HD、SD、lang0、lang1)
  • 那么,这些建议之一是实现RTSP服务器的正确方法吗?而且只有被监视的流必须在网络上

    注:
    我使用gst rtsp服务器作为rtsp服务器。
    我正在使用rtspsrc来接收流

    更新: 我使用案例1和案例3的组合。我有两个视频流s1和s2。对于s1,我使用案例3有两个子流,hd和sd。我无法将它们分开,因为它们来自同一个视频SRC。因此,如果请求一个,两个都将被发送


    要获得案例1,您必须使用两个媒体工厂,并为它们提供不同的uri。我给了他们两个不同的多播地址和端口范围

    您能够使用案例1吗?你能给我建议/回答你自己的问题吗?