From patchwork Sun Oct 9 15:48:08 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Steven X-Patchwork-Id: 928 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.140.66 with SMTP id o63csp2102810vsd; Sun, 9 Oct 2016 08:48:26 -0700 (PDT) X-Received: by 10.194.142.116 with SMTP id rv20mr25066545wjb.184.1476028106746; Sun, 09 Oct 2016 08:48:26 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id kv1si32168262wjb.222.2016.10.09.08.48.24; Sun, 09 Oct 2016 08:48:26 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4C1A0689AF6; Sun, 9 Oct 2016 18:48:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtpbgsg2.qq.com (smtpbgsg2.qq.com [54.254.200.128]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 574036898C1 for ; Sun, 9 Oct 2016 18:47:59 +0300 (EEST) X-QQ-mid: bizesmtp3t1476028091tsjjafwji Received: from localhost (unknown [58.96.181.81]) by esmtp4.qq.com (ESMTP) with id ; Sun, 09 Oct 2016 23:48:08 +0800 (CST) X-QQ-SSF: 01100000004000F0F511000A0000000 X-QQ-FEAT: jLTfbrzLdoMMoEwXA2TqW6UlEw6+LITfBLLzEPNHE980Apjs32ejlD8cMOUyW RRrjHTTxqS2MP2BUAAD8vl9Ms9iVMO3FWP43LlWfwcNxYdgfVOQ73SLXVH3fCOfg02tG/Qn QCMDWj+rXGRlOf3FRlQ6V+T7r078oaTHFT67LAbjjHh7+gZR69lTFBdDLJzUge2JtybH+Ja SBijaDNaquXh+/eKs2dcic3CtZc1QzQYPemWwD2uLiQeIK0ZQZpVZsL+sv7N3GVyKdOzX48 3ptA== X-QQ-GoodBg: 0 From: Steven Liu To: ffmpeg-devel@ffmpeg.org Date: Sun, 9 Oct 2016 23:48:08 +0800 Message-Id: <20161009154808.7119-1-lq@chinaffmpeg.org> X-Mailer: git-send-email 2.10.1.382.ga23ca1b.dirty X-QQ-SENDSIZE: 520 X-QQ-Bgrelay: 1 Subject: [FFmpeg-devel] [PATCH] avformat/udp: deprecate local_port option X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Steven Liu MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Steven Liu --- 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 #ifndef FF_API_R_FRAME_RATE #define FF_API_R_FRAME_RATE 1