[FFmpeg-devel] [PATCH] avformat/udp: deprecate local_port option

Steven Liu lingjiujianke at gmail.com
Mon Oct 10 00:53:36 EEST 2016


2016-10-10 2:11 GMT+08:00 Michael Niedermayer <michael at niedermayer.cc>:

> On Sun, Oct 09, 2016 at 11:48:08PM +0800, Steven Liu wrote:
> > Signed-off-by: Steven Liu <lq at chinaffmpeg.org>
> > ---
> >  libavformat/udp.c     | 19 ++++++++++++++++++-
> >  libavformat/version.h |  3 +++
> >  2 files changed, 21 insertions(+), 1 deletion(-)
> >
> > diff --git a/libavformat/udp.c b/libavformat/udp.c
> > index 3835f98..fd400c6 100644
> > --- a/libavformat/udp.c
> > +++ b/libavformat/udp.c
> > @@ -86,6 +86,9 @@ typedef struct UDPContext {
> >      int pkt_size;
> >      int is_multicast;
> >      int is_broadcast;
> > +#if FF_API_UDP_LOCAL_PORT
> > +    int local_port_deprecated;
> > +#endif
> >      int local_port;
> >      int reuse_socket;
> >      int overrun_nonfatal;
> > @@ -123,7 +126,9 @@ static const AVOption options[] = {
> >      { "bitrate",        "Bits to send per second",
>    OFFSET(bitrate),        AV_OPT_TYPE_INT64,  { .i64 = 0  },     0,
> INT64_MAX, .flags = E },
> >      { "burst_bits",     "Max length of bursts in bits (when using
> bitrate)", OFFSET(burst_bits),   AV_OPT_TYPE_INT64,  { .i64 = 0  },     0,
> INT64_MAX, .flags = E },
> >      { "localport",      "Local port",
>     OFFSET(local_port),     AV_OPT_TYPE_INT,    { .i64 = -1 },    -1,
> INT_MAX, D|E },
> > -    { "local_port",     "Local port",
>     OFFSET(local_port),     AV_OPT_TYPE_INT,    { .i64 = -1 },    -1,
> INT_MAX, .flags = D|E },
> > +#if FF_API_UDP_LOCAL_PORT
> > +    { "local_port",     "Local port",
>     OFFSET(local_port_deprecated),     AV_OPT_TYPE_INT,    { .i64 = -1 },
>   -1, INT_MAX, .flags = D|E },
> > +#endif
> >      { "localaddr",      "Local address",
>    OFFSET(localaddr),      AV_OPT_TYPE_STRING, { .str = NULL },
>    .flags = D|E },
> >      { "udplite_coverage", "choose UDPLite head size which should be
> validated by checksum", OFFSET(udplite_coverage), AV_OPT_TYPE_INT, {.i64 =
> 0}, 0, INT_MAX, D|E },
> >      { "pkt_size",       "Maximum UDP packet size",
>    OFFSET(pkt_size),       AV_OPT_TYPE_INT,    { .i64 = 1472 },  -1,
> INT_MAX, .flags = D|E },
> > @@ -377,6 +382,12 @@ static int udp_socket_create(URLContext *h, struct
> sockaddr_storage *addr,
> >
> >      if (((struct sockaddr *) &s->dest_addr)->sa_family)
> >          family = ((struct sockaddr *) &s->dest_addr)->sa_family;
> > +#if FF_API_UDP_LOCAL_PORT
> > +    if (s->local_port_deprecated >= 0) {
> > +        av_log(s, AV_LOG_WARNING, "the local_port option is deprecated,
> please use localport option\n");
> > +        s->local_port = s->local_port_deprecated;
> > +    }
> > +#endif
> >      res0 = udp_resolve_host(h, (localaddr && localaddr[0]) ? localaddr
> : NULL,
> >                              s->local_port,
> >                              SOCK_DGRAM, family, AI_PASSIVE);
> > @@ -481,6 +492,12 @@ int ff_udp_set_remote_url(URLContext *h, const
> char *uri)
> >  int ff_udp_get_local_port(URLContext *h)
> >  {
> >      UDPContext *s = h->priv_data;
> > +#if FF_API_UDP_LOCAL_PORT
> > +    if (s->local_port_deprecated >= 0) {
> > +        av_log(s, AV_LOG_WARNING, "the local_port option is deprecated,
> please use localport option\n");
> > +        s->local_port = s->local_port_deprecated;
> > +    }
> > +#endif
> >      return s->local_port;
> >  }
> >
> > diff --git a/libavformat/version.h b/libavformat/version.h
> > index 92801b4..35cfc3b 100644
> > --- a/libavformat/version.h
> > +++ b/libavformat/version.h
> > @@ -85,6 +85,9 @@
> >  #ifndef FF_API_HTTP_USER_AGENT
> >  #define FF_API_HTTP_USER_AGENT          (LIBAVFORMAT_VERSION_MAJOR < 58)
> >  #endif
>
> > +#ifndef FF_API_UDP_LOCAL_PORT
> > +#define FF_API_UDP_LOCAL_PORT           (LIBAVFORMAT_VERSION_MAJOR < 58)
> > +#endif
>
> i think this should be kept for quite a bit longer
> only my oppinion

The local_port is duplicate to localport.
Perhaps we need choose one of them.
Will increase users if it kept longer, then deprecated it will damage more
user.
So i think, one version of the cycle maybe better.

>
>
[...]
> --
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> You can kill me, but you cannot change the truth.
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>


More information about the ffmpeg-devel mailing list