[Libav-user] Enable RTCP Receiver Report

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[Libav-user] Enable RTCP Receiver Report

Guilherme Longoni

I have an application sending and receiving RTP streams (only RTP not RTSP), so I'm initializing my sender using something like this:


rtpOutFormatContext->flags |= AVFMT_FLAG_NONBLOCK;
rtpOutFormatContext->oformat = av_guess_format("rtp", NULL, NULL);
sprintf_s(rtpOutFormatContext->filename, sizeof(rtpOutFormatContext->filename),
 "rtp://%s:%d", ip, remotePort);

With my sender, everything works fine, including the RTCP flow that runs in remotePort+1.

In my receiver I'm using a SDP structure to start it:


rtpInFormatContext->iformat = av_find_input_format("sdp");
AVIOContext *ioContext = avio_alloc_context((unsigned char*)sdp, strlen(sdp), 0, NULL, NULL, NULL, NULL);
rtpInFormatContext->pb = ioContext;

avformat_open_input(&rtpInFormatContext, "", rtpInFormatContext->iformat, &options);
avformat_find_stream_info(rtpInFormatContext, NULL);
av_dump_format(rtpFormatContext, 0, rtpInFormatContext->filename, 0);


The receiver works fine as well, but there is no RTCP flow associated with it.

I tried to add:

av_dict_set(&options, "sdp_flags", "rtcp_to_source", 0);

but looks like it only works for RTSP streams.

Someone knows if there is a way to enable this RTCP flow? Or does libav API just implement RTCP RR using RTSP?


Guilherme Longoni

Libav-user mailing list
[hidden email]