diff --git a/libavformat/avio.h b/libavformat/avio.h
index 6da0cfa1bbc956b76d0dfafd4369fc47c9b22379..09777a3615b57647d44f4e604f7d6c6ef58bab53 100644
--- a/libavformat/avio.h
+++ b/libavformat/avio.h
@@ -633,15 +633,12 @@ int avio_open(AVIOContext **s, const char *url, int flags);
 int avio_close(AVIOContext *s);
 URLContext *url_fileno(AVIOContext *s);
 
+#if FF_API_OLD_AVIO
 /**
- * Return the maximum packet size associated to packetized buffered file
- * handle. If the file is not packetized (stream like http or file on
- * disk), then 0 is returned.
- *
- * @param s buffered file handle
- * @return maximum packet size in bytes
+ * @deprecated use AVIOContext.max_packet_size directly.
  */
-int url_fget_max_packet_size(AVIOContext *s);
+attribute_deprecated int url_fget_max_packet_size(AVIOContext *s);
+#endif
 
 int url_open_buf(AVIOContext **s, uint8_t *buf, int buf_size, int flags);
 
diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index aebdd7211a0230ce5ef26d7659949f190cffda0f..6592e9acd65880e50f60176a8ed1b4e9d1c0e9d2 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -942,12 +942,12 @@ char *url_fgets(AVIOContext *s, char *buf, int buf_size)
         *q = '\0';
     return buf;
 }
-#endif
 
 int url_fget_max_packet_size(AVIOContext *s)
 {
     return s->max_packet_size;
 }
+#endif
 
 int av_url_read_fpause(AVIOContext *s, int pause)
 {
diff --git a/libavformat/rtpenc.c b/libavformat/rtpenc.c
index b32a9a4041e71e5b05b60d0093dca98d85323aaa..6c49d34c31f04537f711c97ed2c2609704cae0af 100644
--- a/libavformat/rtpenc.c
+++ b/libavformat/rtpenc.c
@@ -93,7 +93,7 @@ static int rtp_write_header(AVFormatContext *s1)
         s->first_rtcp_ntp_time = (s1->start_time_realtime / 1000) * 1000 +
                                  NTP_OFFSET_US;
 
-    max_packet_size = url_fget_max_packet_size(s1->pb);
+    max_packet_size = s1->pb->max_packet_size;
     if (max_packet_size <= 12)
         return AVERROR(EIO);
     s->buf = av_malloc(max_packet_size);