[FFmpeg-devel] [PATCH] Send NAT punching packets when starting to read an RTP/UDP stream
Ronald S. Bultje
rsbultje
Tue Feb 16 23:22:01 CET 2010
Hi,
On Thu, Feb 11, 2010 at 3:31 PM, Martin Storsj? <martin at martin.st> wrote:
> On Thu, 11 Feb 2010, Luca Abeni wrote:
>> But maybe the comment before rtp_send_punch_packets() can be expanded
>> to clarify that this is not a standard thing (BTW, does anyone know
>> if there is any standard solution for RTSP/RTP through NATs?) and that
>> it works if the source port is not remapped.
>
> Updated patch attached, with the documentation additions that you and
> Ronald suggested.
>
> I documented that this is used for RDT too, as Ronald suggested, but I
> haven't gotten it tested. Is there any public RTSP/RDT stream that I could
> test it against?
Oh, I noticed this doesn't work with WMS because of the
braindead-retarded way in which WMS servers set up RTP (see
surrounding code in make_setup_request()), you need:
+ /* Try to initialize the connection state in a
+ * potential NAT router by sending dummy packets.
+ * RTP/RTCP dummy packets are used for RDT, too.
+ */
+ if (!(rt->server_type == RTSP_SERVER_WMS && i > 1))
+ rtp_send_punch_packets(rtsp_st->rtp_handle);
Ronald
More information about the ffmpeg-devel
mailing list