参照:http://fancylife.blog.51cto.com/920524/197406
建立好工程配置好,运行了live555MediaServer ,然后添加参数调试(-p 554 -u test test -4 -t -v -f 17 -s 10 'rtsp://192.168.0.51:8554/test.264')
这样可以跟踪调试,但是在playCommon.cpp的503行: getOptions(continueAfterOPTIONS); 处出错,不能进入回调函数continueAfterOPTIONS。跟踪发现是在
RTSPClient::parseRTSPURL中出错(RTSPClient.cpp),在180行断言时出错,if (_strncasecmp(url, prefix, prefixLength) != 0), _strncasecmp中
return __ascii_strnicmp(dst, src, count);
//src: "rtsp://" const char *
//dst: "'rtsp://192.168.0.51:8554/test.264'" const char *
//count: 7
字很小,看不清楚,原来是 "'rtsp://192.168.0.51:8554/test.264'" 里面多了单引号' ', 参数命令是从linux中cope出来的,在这边应去掉这个 ' '
linux gdb用得很不熟练,目前还不能结合vim读代码配合调试。