diff --git a/avserver.c b/avserver.c
index 976c89583b5ef63c19a008d1cc97a8ae2b397f03..560eda1caa5038f0cfbb23310bba07fbc970060d 100644
--- a/avserver.c
+++ b/avserver.c
@@ -32,6 +32,7 @@
 #include "libavformat/network.h"
 #include "libavformat/os_support.h"
 #include "libavformat/rtpdec.h"
+#include "libavformat/rtpproto.h"
 #include "libavformat/rtsp.h"
 #include "libavformat/avio_internal.h"
 #include "libavformat/internal.h"
diff --git a/libavformat/rtpdec.h b/libavformat/rtpdec.h
index 6e923d9b1cb9ec9f403370dce91c3314dc7ca3f7..55399364ac77c595e063d77799686415877de4b5 100644
--- a/libavformat/rtpdec.h
+++ b/libavformat/rtpdec.h
@@ -51,10 +51,6 @@ int ff_rtp_parse_packet(RTPDemuxContext *s, AVPacket *pkt,
 void ff_rtp_parse_close(RTPDemuxContext *s);
 int64_t ff_rtp_queued_packet_time(RTPDemuxContext *s);
 void ff_rtp_reset_packet_queue(RTPDemuxContext *s);
-int ff_rtp_get_local_rtp_port(URLContext *h);
-int ff_rtp_get_local_rtcp_port(URLContext *h);
-
-int ff_rtp_set_remote_url(URLContext *h, const char *uri);
 
 /**
  * Send a dummy packet on both port pairs to set up the connection
diff --git a/libavformat/rtpproto.c b/libavformat/rtpproto.c
index c857318ca5db56210cf938fe1db6f2fdcd76e3d5..4e177b935d08a84d7facb30b6b0eb99853dcbd4e 100644
--- a/libavformat/rtpproto.c
+++ b/libavformat/rtpproto.c
@@ -28,7 +28,8 @@
 #include "libavutil/avstring.h"
 #include "avformat.h"
 #include "avio_internal.h"
-#include "rtpdec.h"
+#include "rtp.h"
+#include "rtpproto.h"
 #include "url.h"
 
 #include <stdarg.h>
diff --git a/libavformat/rtpproto.h b/libavformat/rtpproto.h
new file mode 100644
index 0000000000000000000000000000000000000000..7acc80ef8e402c39e83341f094f35bb8ec6a55ef
--- /dev/null
+++ b/libavformat/rtpproto.h
@@ -0,0 +1,31 @@
+/*
+ * RTP network protocol
+ *
+ * This file is part of Libav.
+ *
+ * Libav is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * Libav is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with Libav; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef AVFORMAT_RTPPROTO_H
+#define AVFORMAT_RTPPROTO_H
+
+#include "url.h"
+
+int ff_rtp_set_remote_url(URLContext *h, const char *uri);
+
+int ff_rtp_get_local_rtp_port(URLContext *h);
+int ff_rtp_get_local_rtcp_port(URLContext *h);
+
+#endif /* AVFORMAT_RTPPROTO_H */
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index f0d2514044d0f7feb26b83b76be4dec8d9c6db06..db96bc6dfbe93d88354550c0f0f43d8bcae857a6 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -41,6 +41,7 @@
 #include "rtsp.h"
 
 #include "rtpdec.h"
+#include "rtpproto.h"
 #include "rdt.h"
 #include "rtpdec_formats.h"
 #include "rtpenc_chain.h"
diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c
index 7e7fb2dcfdbdfd51df8f6315e91bc622b2222ddd..43dcb47ac18755696b2a3a033c95a608e27a7708 100644
--- a/libavformat/rtspdec.c
+++ b/libavformat/rtspdec.c
@@ -29,6 +29,7 @@
 #include "internal.h"
 #include "network.h"
 #include "os_support.h"
+#include "rtpproto.h"
 #include "rtsp.h"
 #include "rdt.h"
 #include "url.h"