From patchwork Mon Dec 30 13:54:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 17063 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 4175D449AE8 for ; Mon, 30 Dec 2019 15:54:43 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2529768AA62; Mon, 30 Dec 2019 15:54:43 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtpbg.qq.com (smtpbg520.qq.com [203.205.250.49]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4873268A702 for ; Mon, 30 Dec 2019 15:54:33 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1577714067; bh=enH1ivEyTSNYYJKDByWI6ikKRJeU0thWOmRclxkehII=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=Uz6qzExjOxFSDlMX9hQKfvGFwJRwNo2mc1mLXb/CpLaKvt1zEU0lecuwAYaOJ087I rqpaWDNBQgUjaxmsPdmpgt4KiBp+hmKEmMLg4j5liUNcvf780bVjakMJgqGk+EQy4S k43cpD2hkEWC59J5qD7f9b0fQeNgGfRzFJcKO8Uo= X-QQ-mid: esmtp3t1577714066tly7qj0p2 Received: from ZHILIZHAO-MB1.tencent.com (unknown [14.17.22.54]) by esmtp4.qq.com (ESMTP) with id ; Mon, 30 Dec 2019 21:54:25 +0800 (CST) X-QQ-SSF: 01000000000000N0WG4000000000002 X-QQ-FEAT: 6ugjij1k5i9tx7OdcTi+b7nLzcAzyhub15Pkg2OA3PVQg4kb/TSbj0CEKBXVC bXfmV/PY1soJeGyqfmbN2dyKw/lcfSA5tqe1w4740il9eW3/30bN/YCnqlBzPxxLakSzbGX k4jtIeYEilrCK9NaFNTuYKC4jPPrhx+5G1W9SCiCw029YDzxwRcUz91z77YVn9gkzmfUOFS vfn1GfNlzjbJU/awPbha3Fx6FFSXzZOp8kkTdUsQSH97vAMKKomW7I8Vv+1BpGH75QBJRFx 5ofFSphBjyUcMQHEcUXaJpzP3bdDjEtZ6ZDg== X-QQ-GoodBg: 0 From: quinkblack@foxmail.com To: ffmpeg-devel@ffmpeg.org Date: Mon, 30 Dec 2019 21:54:12 +0800 Message-Id: <20191230135419.56529-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.22.0 MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: esmtp:foxmail.com:bgweb:bgweb5 Subject: [FFmpeg-devel] [PATCH 1/8] avutil/pixdesc: add av_pix_fmt_total_count and av_sample_fmt_total_count 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: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Zhao Zhili --- doc/APIchanges | 3 +++ libavutil/pixdesc.c | 5 +++++ libavutil/pixdesc.h | 5 +++++ libavutil/pixfmt.h | 2 +- libavutil/samplefmt.c | 5 +++++ libavutil/samplefmt.h | 7 ++++++- libavutil/version.h | 2 +- 7 files changed, 26 insertions(+), 3 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index 3c24dc6fbc..af2fc78fb9 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -15,6 +15,9 @@ libavutil: 2017-10-21 API changes, most recent first: +2019-12-28 - xxxxxxxxxx - lavu 56.39.100 - pixdesc.h + Add av_pix_fmt_total_count() and av_sample_fmt_total_count(). + 2019-12-27 - xxxxxxxxxx - lavu 56.38.100 - eval.h Add av_expr_count_func(). diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index 05dd4a1e20..a6f145714e 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -2519,6 +2519,11 @@ char *av_get_pix_fmt_string(char *buf, int buf_size, return buf; } +int av_pix_fmt_total_count() +{ + return AV_PIX_FMT_NB; +} + const AVPixFmtDescriptor *av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt) { if (pix_fmt < 0 || pix_fmt >= AV_PIX_FMT_NB) diff --git a/libavutil/pixdesc.h b/libavutil/pixdesc.h index c055810ae8..8ed12a67f7 100644 --- a/libavutil/pixdesc.h +++ b/libavutil/pixdesc.h @@ -204,6 +204,11 @@ int av_get_bits_per_pixel(const AVPixFmtDescriptor *pixdesc); */ int av_get_padded_bits_per_pixel(const AVPixFmtDescriptor *pixdesc); +/** + * @return the number of all pixel formats + */ +int av_pix_fmt_total_count(void); + /** * @return a pixel format descriptor for provided pixel format or NULL if * this pixel format is unknown. diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index 37ecebd501..aaf9602c3e 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -348,7 +348,7 @@ enum AVPixelFormat { AV_PIX_FMT_NV24, ///< planar YUV 4:4:4, 24bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (first byte U and the following byte V) AV_PIX_FMT_NV42, ///< as above, but U and V bytes are swapped - AV_PIX_FMT_NB ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions + AV_PIX_FMT_NB ///< number of pixel formats, it's for libavutil internal use. For public access use av_pix_fmt_total_count() instead. }; #if AV_HAVE_BIGENDIAN diff --git a/libavutil/samplefmt.c b/libavutil/samplefmt.c index fc077f6444..6241523e5d 100644 --- a/libavutil/samplefmt.c +++ b/libavutil/samplefmt.c @@ -46,6 +46,11 @@ static const SampleFmtInfo sample_fmt_info[AV_SAMPLE_FMT_NB] = { [AV_SAMPLE_FMT_DBLP] = { .name = "dblp", .bits = 64, .planar = 1, .altform = AV_SAMPLE_FMT_DBL }, }; +int av_sample_fmt_total_count() +{ + return AV_SAMPLE_FMT_NB; +} + const char *av_get_sample_fmt_name(enum AVSampleFormat sample_fmt) { if (sample_fmt < 0 || sample_fmt >= AV_SAMPLE_FMT_NB) diff --git a/libavutil/samplefmt.h b/libavutil/samplefmt.h index 8cd43ae856..3173d02e5e 100644 --- a/libavutil/samplefmt.h +++ b/libavutil/samplefmt.h @@ -71,9 +71,14 @@ enum AVSampleFormat { AV_SAMPLE_FMT_S64, ///< signed 64 bits AV_SAMPLE_FMT_S64P, ///< signed 64 bits, planar - AV_SAMPLE_FMT_NB ///< Number of sample formats. DO NOT USE if linking dynamically + AV_SAMPLE_FMT_NB ///< Number of sample formats, it's for libavutil internal use. For public access use av_sample_fmt_total_count() instead. }; +/** + * @return the number of all sample formats + */ +int av_sample_fmt_total_count(void); + /** * Return the name of sample_fmt, or NULL if sample_fmt is not * recognized. diff --git a/libavutil/version.h b/libavutil/version.h index af8f614aff..2bc1b98615 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -79,7 +79,7 @@ */ #define LIBAVUTIL_VERSION_MAJOR 56 -#define LIBAVUTIL_VERSION_MINOR 38 +#define LIBAVUTIL_VERSION_MINOR 39 #define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \