一个解析RTSP 的URL函数

写了一个解析URL的函数,可以提取URL中的IP 和 port。

如:url = "rtsp://192.168.1.43:2554/realmp3.mp3";
url = "rtsp://192.168.10.177/bipbop-gear1-all.ts";

之前写过一篇关于一些常用的字符串操作函数,在这里解析都会用到:http://blog.csdn.net/longlong530/article/details/9109851

 

long PraseURL( const char *url, char *szip, int *iport )
{
	long lret = -1;
	if(url)
	{ 
		//1.先找到rtsp这个协议字段
		if(!_strnicmp(url, "rtsp://", 7))
		{
			//2.再找ip地址
			char *s, *ss;
			s = (char*)url + strlen("rtsp://");
			ss = strchr(s, '/');

			strncpy(szip, s,  ss- s);
			szip[ss -s] = '\0';

			//3.查找下是否是有端口设置
			s = strchr(szip, ':');
			//如果有端口设置,还需要修改IP地址
			if(s)
			{
				ss = s;
				s ++;
				*iport = atoi(s);

				//同时修正ip地址
				szip[ss - szip] = '/0';
			}
			else
				*iport = 554;//默认端口554

			lret = 0;
		}
	}


	return lret;
}


 

 

posted @ 2013-06-21 14:31  jlins  阅读(835)  评论(0编辑  收藏  举报