New submission from PeterKim <[email protected]>:
RTSP of ffserver doesn't make RTP-info.
It made android doesn't work with ffserver.
So please update ffserver code.
static void rtsp_cmd_play(HTTPContext *c, const char *url,
RTSPMessageHeader *h)
{
HTTPContext *rtp_c;
// RTSP RTP-info
AVFormatContext *ctx;
int i;
RTPMuxContext *rptmuxctx;
/////////////////////////////////////////
rtp_c = find_rtp_session_with_url(url, h->session_id);
if (!rtp_c) {
rtsp_reply_error(c, RTSP_STATUS_SESSION);
return;
}
if (rtp_c->state != HTTPSTATE_SEND_DATA &&
rtp_c->state != HTTPSTATE_WAIT_FEED &&
rtp_c->state != HTTPSTATE_READY) {
rtsp_reply_error(c, RTSP_STATUS_STATE);
return;
}
rtp_c->state = HTTPSTATE_SEND_DATA;
/* now everything is OK, so we can send the connection parameters */
rtsp_reply_header(c, RTSP_STATUS_OK);
// RTSP RTP-info append.
url_fprintf(c->pb, "RTP-Info: " );
for(i=0;i< rtp_c->stream->nb_streams;i++) {
ctx = rtp_c->rtp_ctx[i];
rptmuxctx = ctx->priv_data;
url_fprintf(c->pb, "url=%sstreamid=%d;seq=%u;rtptime=%u,
", url, i, rptmuxctx->seq, rptmuxctx->timestamp );
}
url_fprintf(c->pb, "\r\n");
////////////////////////////////////////////////////////////
/* session ID */
url_fprintf(c->pb, "Session: %s\r\n", rtp_c->session_id);
url_fprintf(c->pb, "\r\n");
}
----------
messages: 11458
priority: normal
status: new
substatus: new
title: ffserver SDP support RTP-INFO
type: patch
________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2134>
________________________________________________