[FFmpeg-devel] rtsp: add pkt_size option

Submitted by Tristan Matthews on April 15, 2019, 10:50 p.m.

Details

Message ID 20190415225027.2963-1-tmatth@videolan.org
State New
Headers show

Commit Message

Tristan Matthews April 15, 2019, 10:50 p.m.
This allows users to specify an upper limit on the size of outgoing packets
when publishing via RTSP.

Signed-off-by: Martin Storsjö <martin@martin.st>
---
 libavformat/rtsp.c | 5 ++++-
 libavformat/rtsp.h | 1 +
 2 files changed, 5 insertions(+), 1 deletion(-)

Comments

Tristan Matthews April 18, 2019, 9:14 p.m.
On Mon, Apr 15, 2019 at 6:50 PM Tristan Matthews <tmatth@videolan.org> wrote:
>
> This allows users to specify an upper limit on the size of outgoing packets
> when publishing via RTSP.
>
> Signed-off-by: Martin Storsjö <martin@martin.st>
> ---
>  libavformat/rtsp.c | 5 ++++-
>  libavformat/rtsp.h | 1 +
>  2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
> index 8349840c96..c153cac88b 100644
> --- a/libavformat/rtsp.c
> +++ b/libavformat/rtsp.c
> @@ -76,7 +76,8 @@
>
>  #define COMMON_OPTS() \
>      { "reorder_queue_size", "set number of packets to buffer for handling of reordered packets", OFFSET(reordering_queue_size), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC }, \
> -    { "buffer_size",        "Underlying protocol send/receive buffer size",                  OFFSET(buffer_size),           AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC|ENC } \
> +    { "buffer_size",        "Underlying protocol send/receive buffer size",                  OFFSET(buffer_size),           AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC|ENC }, \
> +    { "pkt_size",           "Underlying protocol send packet size",                          OFFSET(pkt_size),              AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, ENC } \
>
>
>  const AVOption ff_rtsp_options[] = {
> @@ -132,6 +133,8 @@ static AVDictionary *map_to_opts(RTSPState *rt)
>
>      snprintf(buf, sizeof(buf), "%d", rt->buffer_size);
>      av_dict_set(&opts, "buffer_size", buf, 0);
> +    snprintf(buf, sizeof(buf), "%d", rt->pkt_size);
> +    av_dict_set(&opts, "pkt_size", buf, 0);
>
>      return opts;
>  }
> diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h
> index b49278fc20..54a9a30c16 100644
> --- a/libavformat/rtsp.h
> +++ b/libavformat/rtsp.h
> @@ -410,6 +410,7 @@ typedef struct RTSPState {
>
>      char default_lang[4];
>      int buffer_size;
> +    int pkt_size;
>  } RTSPState;
>
>  #define RTSP_FLAG_FILTER_SRC  0x1    /**< Filter incoming UDP packets -
> --
> 2.17.1
>

Ping.
Tristan Matthews May 1, 2019, 7:44 p.m.
On Thu, Apr 18, 2019 at 5:14 PM Tristan Matthews <tmatth@videolan.org> wrote:
>
> On Mon, Apr 15, 2019 at 6:50 PM Tristan Matthews <tmatth@videolan.org> wrote:
> >
> > This allows users to specify an upper limit on the size of outgoing packets
> > when publishing via RTSP.
> >
> > Signed-off-by: Martin Storsjö <martin@martin.st>
> > ---
> >  libavformat/rtsp.c | 5 ++++-
> >  libavformat/rtsp.h | 1 +
> >  2 files changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
> > index 8349840c96..c153cac88b 100644
> > --- a/libavformat/rtsp.c
> > +++ b/libavformat/rtsp.c
> > @@ -76,7 +76,8 @@
> >
> >  #define COMMON_OPTS() \
> >      { "reorder_queue_size", "set number of packets to buffer for handling of reordered packets", OFFSET(reordering_queue_size), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC }, \
> > -    { "buffer_size",        "Underlying protocol send/receive buffer size",                  OFFSET(buffer_size),           AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC|ENC } \
> > +    { "buffer_size",        "Underlying protocol send/receive buffer size",                  OFFSET(buffer_size),           AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC|ENC }, \
> > +    { "pkt_size",           "Underlying protocol send packet size",                          OFFSET(pkt_size),              AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, ENC } \
> >
> >
> >  const AVOption ff_rtsp_options[] = {
> > @@ -132,6 +133,8 @@ static AVDictionary *map_to_opts(RTSPState *rt)
> >
> >      snprintf(buf, sizeof(buf), "%d", rt->buffer_size);
> >      av_dict_set(&opts, "buffer_size", buf, 0);
> > +    snprintf(buf, sizeof(buf), "%d", rt->pkt_size);
> > +    av_dict_set(&opts, "pkt_size", buf, 0);
> >
> >      return opts;
> >  }
> > diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h
> > index b49278fc20..54a9a30c16 100644
> > --- a/libavformat/rtsp.h
> > +++ b/libavformat/rtsp.h
> > @@ -410,6 +410,7 @@ typedef struct RTSPState {
> >
> >      char default_lang[4];
> >      int buffer_size;
> > +    int pkt_size;
> >  } RTSPState;
> >
> >  #define RTSP_FLAG_FILTER_SRC  0x1    /**< Filter incoming UDP packets -
> > --
> > 2.17.1
> >
>
> Ping.

Ping.

Best,
-t

Patch hide | download patch | download mbox

diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index 8349840c96..c153cac88b 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -76,7 +76,8 @@ 
 
 #define COMMON_OPTS() \
     { "reorder_queue_size", "set number of packets to buffer for handling of reordered packets", OFFSET(reordering_queue_size), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC }, \
-    { "buffer_size",        "Underlying protocol send/receive buffer size",                  OFFSET(buffer_size),           AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC|ENC } \
+    { "buffer_size",        "Underlying protocol send/receive buffer size",                  OFFSET(buffer_size),           AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, DEC|ENC }, \
+    { "pkt_size",           "Underlying protocol send packet size",                          OFFSET(pkt_size),              AV_OPT_TYPE_INT, { .i64 = -1 }, -1, INT_MAX, ENC } \
 
 
 const AVOption ff_rtsp_options[] = {
@@ -132,6 +133,8 @@  static AVDictionary *map_to_opts(RTSPState *rt)
 
     snprintf(buf, sizeof(buf), "%d", rt->buffer_size);
     av_dict_set(&opts, "buffer_size", buf, 0);
+    snprintf(buf, sizeof(buf), "%d", rt->pkt_size);
+    av_dict_set(&opts, "pkt_size", buf, 0);
 
     return opts;
 }
diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h
index b49278fc20..54a9a30c16 100644
--- a/libavformat/rtsp.h
+++ b/libavformat/rtsp.h
@@ -410,6 +410,7 @@  typedef struct RTSPState {
 
     char default_lang[4];
     int buffer_size;
+    int pkt_size;
 } RTSPState;
 
 #define RTSP_FLAG_FILTER_SRC  0x1    /**< Filter incoming UDP packets -