From patchwork Sat Mar 14 16:03:01 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: numberwolf X-Patchwork-Id: 18192 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 5230044B879 for ; Sat, 14 Mar 2020 18:04:47 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 148F768B4A3; Sat, 14 Mar 2020 18:04:47 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from qq.com (out203-205-251-82.mail.qq.com [203.205.251.82]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6C44A68B4A2 for ; Sat, 14 Mar 2020 18:04:38 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1584201875; bh=W2eKFZx7yy/G08rbPHlnyh25+oF/NbtXEz8cLEtswnk=; h=From:To:Cc:Subject:Date; b=nzB0RidMnP8Gb6oM8+ussD1a2L5WitPeYjPEovRhO7nFsChiqQnnulm/WTX3y6IiK mWFdxlWtyg2Rq/1n6qo74EYbHZ+71GDXyQcaxEkTt+Bdz6IaKHYcQnf1OLavi54IOx 4Kt3/Hwsf/qqbq3VodbjFNQOFCpCmZPbXsgAc10Q= Received: from localhost.localdomain ([123.126.85.189]) by newxmesmtplogicsvrszc1.qq.com (NewEsmtp) with SMTP id 120AA400; Sun, 15 Mar 2020 00:04:32 +0800 X-QQ-mid: xmsmtpt1584201872tulzrdp0z X-QQ-XMAILINFO: OcjJPtW+mK6eNsOHpvzuQPkJF+9T1g2oI9iKzSxSRj0bG4Wl4lq79fDIJ55PRg yladxlyccBTiBrxTAOw1xyUf0JYlGfxqe+ok2npjGU+50h2WDk51Hcs1fYPqI+4sJB5e6UmeJMrK lzbjtYbEc/VAdkCbX6/fQpTiKV30Auh4Aa45WLdi6XRovG+uLi8UwQtlxEUHthg87e/Mh9mveokZ nkQIql3G+83F/d4JyDw62JGjJReI3t/Xuc/KdkKOnEuLJ+AlhHRuL2JYD9z4xOFbOsF9WQQxpepE 7/fP+V5R27M5BjkuUj+LqPdDU4LqXhpdXnr0cneRC6wtDE/v1KUv++F3cOYRa3YzjW7wBQo16o7Z nmVu+WxSWftwAM8g2kJNTBOcjtPODKnbLQ0nnP9ws7gHMIB/IJa1qKGL1ufGuB1sErBUUYcSAX1y LKvgMRwpL/kQsoFDdxc7ZobViKZmrZKkr0UNHJPj09l0CEWxvfls1N4Ux8mH9LNzhNRF8kiwhzti WRcLpGO68pAtPafNRSBvD5bkfAR43R938m8SrIqnQejlPkqu0BKTTsS8xCG0wZEoWGZCQlG5ks/D c5jQn/0pEBl8IA2iSo58LikY6uSPd9HCdGRxMty0OmOhytzf7KdttVHg5B8jh3aofNB2S0+S4gKa oWrCAR+hMsmihknaGPqBYET5xJe1SYfw2V4X7rqehk1gpJ31ymJ9KTSREwFNpAJpNacQ== From: numberwolf To: ffmpeg-devel@ffmpeg.org Date: Sun, 15 Mar 2020 00:03:01 +0800 Message-Id: <20200314160301.23900-1-porschegt23@foxmail.com> X-Mailer: git-send-email 2.17.2 (Apple Git-113) Subject: [FFmpeg-devel] [PATCH] Encapsulation func to get width and height most of mb's checked oper are defined in mpegutils' marcos, so mb's checked oper about width/height should be put it together with others. 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: porschegt23@foxmail.com MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Reviewed-by: Carl Eugen Hoyos Signed-off-by: numberwolf --- libavcodec/mpegutils.c | 4 ++-- libavcodec/mpegutils.h | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/mpegutils.c b/libavcodec/mpegutils.c index c0ee3aa..819293c 100644 --- a/libavcodec/mpegutils.c +++ b/libavcodec/mpegutils.c @@ -34,8 +34,8 @@ static int add_mb(AVMotionVector *mb, uint32_t mb_type, int motion_x, int motion_y, int motion_scale, int direction) { - mb->w = IS_8X8(mb_type) || IS_8X16(mb_type) ? 8 : 16; - mb->h = IS_8X8(mb_type) || IS_16X8(mb_type) ? 8 : 16; + mb->w = MB_SIZE_WIDTH(mb_type); + mb->h = MB_SIZE_HEIGHT(mb_type); mb->motion_x = motion_x; mb->motion_y = motion_y; mb->motion_scale = motion_scale; diff --git a/libavcodec/mpegutils.h b/libavcodec/mpegutils.h index 1ed21c1..ed59716 100644 --- a/libavcodec/mpegutils.h +++ b/libavcodec/mpegutils.h @@ -95,6 +95,9 @@ #define IS_QUANT(a) ((a) & MB_TYPE_QUANT) #define IS_DIR(a, part, list) ((a) & (MB_TYPE_P0L0 << ((part) + 2 * (list)))) +#define MB_SIZE_WIDTH(a) (((a) & MB_TYPE_8x8) || ((a) & MB_TYPE_8x16)) ? 8 : 16 +#define MB_SIZE_HEIGHT(a) (((a) & MB_TYPE_8x8) || ((a) & MB_TYPE_16x8)) ? 8 : 16 + // does this mb use listX, note does not work if subMBs #define USES_LIST(a, list) ((a) & ((MB_TYPE_P0L0 | MB_TYPE_P1L0) << (2 * (list))))