无法在 CURL_RTSPREQ_ANNOUNCE 中收到正文消息

Not able to receive body message in CURL_RTSPREQ_ANNOUNCE

我正在尝试使用 curl 创建一个 rtsp 客户端,但在 ANNOUNCE 响应中我无法使用 SPD 获取正文。

我正在做这个设置。

curl_easy_setopt(ch, CURLOPT_URL, fullURL);
curl_easy_setopt(ch, CURLOPT_RTSP_STREAM_URI, fullURL);
curl_easy_setopt(ch, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_ANNOUNCE);
curl_easy_setopt(ch,CURLOPT_POSTFIELDS,sdp);
curl_easy_setopt(ch, CURLOPT_WRITEDATA, &body);
curl_easy_setopt(ch, CURLOPT_WRITEFUNCTION, write_cb);

我在 write_cb 函数中有一个断点,它不会停止。如果我添加这个选项:curl_easy_setopt(ch, CURLOPT_HEADER, 1L);函数停止,但只获取头部信息。

提前致谢。

好的,这就是答案。

RTSP 在 ANNOUNCE 的答案中没有正文,但在我使用 EUROCAE 的情况下,在 ANNOUNCE 的答案中有正文。

为了处理这种情况,我在 lib/rtsp.c 中修改了 curl 库,并将 ANNOUNCE 定义为带正文的消息。之后我的问题就解决了。

谢谢。