rtsp 协议基础
为了实现基础得rtsp协议,首先判断以下命令,
OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE
这些头部描述在传输得最首位,和http协议得GET POST 基本类似 下面就使用vlc来发送命令来测试 在vlc中输入 rtsp://127.0.0.1/live/1001
实际上接收时会收到 OPTIONS rtsp://ip/live/1001 rtsp/1.0 这样得命令
code使用标准c++得 istringstream 来获得一行一行得数据分解字符串: std::istringstream s(lines); 再把一行一行得字符串进行分解,我们使用map 来存储成对得关系,代码如下所示:
//适应rtsp协议
static int fetch_head_info_rtsp(std::string &lines, c_header_map &hmap)
{
//we analyse the string like this:
//OPTIONS rtsp://ip/live/1001 rtsp/1.0
std::istringstream s(lines);
std::string request;
std::getline(s, request);
size_t len = request.size();
if (request[len - 1] != '\r')
{
//please use log instead of cout,of course ,now we just cout
std::cout
关注
打赏