VLC录屏并干RTSP服务器,让RTP以TCP协议通信

VLC录屏并做RTSP服务器,让RTP以TCP协议通信
现在是要做VLC录屏,VLC作为RTSP服务器,让RTP以TCP协议通信。
现在成功开启了RTSP服务器,但是在设置RTP的通信协议的时候失败。

在官网上有这么一个参数,但是在设置了以后,跟没有设置时是一模一样,都是UDP的包。
    --sout-rtp-proto={dccp,sctp,tcp,udp,udplite}
    Transport protocol
    This selects which transport protocol to use for RTP.

我是以代码形式写这个程序,关键代码如下:
首先是使用VLC库的初始化的
    const char * const vlc_args[] =
    {
        "-I", "dummy",              /// Don't use any interface
//        "-I", "rc",
        "--ignore-config",          /// Don't use VLC's config
        "--no-drop-late-frames",     /// arrive to the video output after their intended display date
        "--no-video-title-show",
//        "--rtsp-host", "0.0.0.0",
//        "--rtsp-port", "8554",
        "--rtsp-tcp",
    };
    m_pInst = libvlc_new(sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args);

然后是屏幕参数的:

strTransCode:
#transcode{vcodec=h264,fps=8, venc=x264{keyint=8,min-keyint=6,preset=faster,profile=baseline,tune=zerolatency}}:rtp{proto=tcp,  sdp=rtsp://:8554/screen_grab }

strScreenParam:
:live-caching=20 :no-sout-audio :no-sout-standard-sap :rtsp-caching=20 :screen-fps=8 :screen-height=768 :screen-mouse-image=mouse/mouse_arrow_16.png :screen-width=1360 :sout-keep :sout-rtp-caching=20 :udp-caching=20  


最后是屏幕录制的:

libvlc_vlm_add_broadcast(m_pInst,
                                        m_pBroadcastName,
                                        "screen://",
                                        strTransCode.c_str(),
                                        1,
                                        strScreenParam.c_str(),
                                        1,
                                        0);

其实我想关键起作用的就是 rtp{proto=tcp...},为什么它就是一直只是UDP呢?
上网找资料从google的第一页每个链接打开到最后一页。。。 仍然未找到问题所在。

VLC版本:2.1
开发环境:Win7 64bit + Qt 4.8

------解决方案--------------------
vlc没有实现rtp的tcp协议传输,我用vlc2.0.7,在图形界面中设置只有rtp over udp输出,源码中,modules/stream_out/rtp.c的open函数中有如下一段:
if ((psz == NULL) 
------解决方案--------------------
 !strcasecmp (psz, "udp"))
        (void)0; /* default */
    else
    if (!strcasecmp (psz, "dccp"))
    {
        p_sys->proto = IPPROTO_DCCP;
        p_sys->rtcp_mux = true; /* Force RTP/RTCP mux */
    }
#if 0
    else
    if (!strcasecmp (psz, "sctp"))
    {
        p_sys->proto = IPPROTO_TCP;
        p_sys->rtcp_mux = true; /* Force RTP/RTCP mux */
    }
#endif
#if 0
    else
    if (!strcasecmp (psz, "tcp"))
    {
        p_sys->proto = IPPROTO_TCP;
        p_sys->rtcp_mux = true; /* Force RTP/RTCP mux */
    }
#endif
    else