c - libcurl RTSP客户端实现c编程问题

标签 c libcurl rtsp rtcp

我正在使用 libcurl 在 c 编程中实现 RTSP 客户端。

为了正确配置 RTP/RTCP session ,我需要有 RTSP 服务器的传输端口(向它发送 RTCP RR)。

我一直在查看文档,但没有成功。

我想这是可能的。我对吗?我一直在尝试使用“curl_easy_getinfo”方法,但我没有看到所需的参数来处理我的要求。

也许我需要解析来自 RTSP 服务器的整个回复(以某种方式从 libcurl 收到后显示的服务器获取回复字符串)。但是,至少,我需要知道没有其他办法。而且,如果没有其他方法,哪种方法是获得此类回复字符串的最佳方法?

最佳答案

在 rtsp 示例中 rtsp.c ,RTSP 答案由 libcurl 用户解析。

要获取 RTP 和 RTCP 端口,您需要解析 SETUP 应答的 Transport header 。

这可以通过类似的方式实现:

int rtpport=0;
int rtcpport=0;

char *t=strstr(rtspheader, "server_port=");
if (t != NULL)
{
    if (sscanf(t, "server_port=%d-%d", &rtpport, &rtcpport) == 2)
    {
        printf("Server ports RTP:%d RTCP:%d\n",rtpport, rtcpport);
    }
}

关于c - libcurl RTSP客户端实现c编程问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23872551/

相关文章:

c - libcurl 详细输出到文件,不使用命令行

ffmpeg - 使用 RTSP Url 播放媒体文件时出现 DTS 不连续性错误

ffmpeg - 从 RTSP 流中抓取一系列帧

c - 在 C 中使用带有#define 值的数组

c++ - 使用 GTK 将 EGL 图像渲染到帧缓冲区

linux - 如何指定 libcurl SFTP hmac 选项

php - 显示 Curl POST 请求 header ?有没有办法做到这一点?

c - 当害怕构造时,c 中的错误输出

c - scanf.Warning 中的固定长度数组的格式

OpenCV - RTSP 流未打开