From patchwork Sun Oct 31 22:48:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul B Mahol X-Patchwork-Id: 31266 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:a610:0:0:0:0:0 with SMTP id q16csp2037458ioi; Sun, 31 Oct 2021 15:48:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx3ZOyG0HnBf7rfsOM5UISos1mb9x5EfYvTP1jwCTpcQ+M+rzbSL4vYCHkPKHcCXLNon/z+ X-Received: by 2002:a17:906:1f0d:: with SMTP id w13mr13562612ejj.161.1635720501703; Sun, 31 Oct 2021 15:48:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1635720501; cv=none; d=google.com; s=arc-20160816; b=Jz5NU7ClSmI+M8cjcLZFAdMi3fMUXJhvslmTjT5Yu30tEwCTubALB57dz2kx+FogAI m1v8Cq8gH7QMWNSyh9tU5xZoxIefEBLklIHphiW3a7VTsCjdvbL4kSQXWxySI6NUy+wb AjMAkIGhQggAKIkeOJPbGaS7qz92/IlZpc3hoDQxfhA4OzPIQx2IqTPANmreaBso0M0c CMkGMav4ZhRvchiCXt5ijB12cLAmtFz9GtquB1HDwGTcUJvbOpxOgTou0PDD9K2yd1XY 1KliUXalR81obpfb+eKPbZ0h4IYDKLbTYD5Of1oTUz/HdceyWorAlaj3jdv2CjPhVKVN c1eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:message-id:date:to:from :dkim-signature:delivered-to; bh=HZlkyD2Xwnt0avl/UfMqJLntul1o9jFXLgwmq5qa+IY=; b=kWjH0q0GhFNlqZ+5NZudHJO5nh/eBYH+piK1iYX6+IXCihRxf0IssI0/p6aJxkj6/u Vbn4aM19CcnDmuaniUAcw/vFblmvtKk8KSYcrf2BGskowgQ7BAkp0/Q8Dru8VsJXclsi Jq32QfPqiiVhz58udQCJU2CV9QKevFcptdFO2GPFS3XzqpxEQ0qopsy9aCf5J6imMp+j HSAhiHQQ06siuM23G8MiTwMrtFPa2lxurweLHqaxHP/0TtEOphrfQ7Psbr9yWryZapuX YtnZ1Tqt0OwRg91CYIrYW9HHh64AK5HECtNIE8EzcE9ttvtfSEIocFlBLh9DGroXyemA iNqg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=awscSy4T; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id g12si22125851edb.152.2021.10.31.15.48.20; Sun, 31 Oct 2021 15:48:21 -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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=awscSy4T; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0743468A878; Mon, 1 Nov 2021 00:48:17 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2E83868035C for ; Mon, 1 Nov 2021 00:48:10 +0200 (EET) Received: by mail-ed1-f51.google.com with SMTP id m14so5471956edd.0 for ; Sun, 31 Oct 2021 15:48:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=gCmp4Zx8kyeFt/L+6KwB1NyBfS4QvN26hrzRFMQGlF8=; b=awscSy4TgL8W2WwG3ON3axEFuhS/v0RosjfyWxM63skwncdNldjx+bYkjJIGaB0UDh 80+yv+/Y4iFMiHc/Ptix3bsdPkpNhjvgoxnsCzjW+K+51kV7YhJpUuur+yDPcOo0vz91 WoRZj4yrZ8c0fcbPz3l9lI5p8t2hBNdFJYBMh1gPnNGbNzV2AEGTR6GWFutdzShS8IlQ bcPJDatBgfhhG0u0vGKaGbahiJkxsYricLHsihgAfG17P3h8V8uUFEMhanwOUDZULuPA RCzBks2lrdNuVa2Gyc34lztfNVHsie1+wg3AaKAT79T5A8MZs+a1BsrNbyZlAkwM2Bbr QvsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=gCmp4Zx8kyeFt/L+6KwB1NyBfS4QvN26hrzRFMQGlF8=; b=DtQOD9nlGUHM/UFHL0wmfKzkRfVxIs0i+zLz//HpL+VjzNPVr0FVqJe8x48pWiOHME hw9/t1+RTrJUrU7H3sJexgeCjemTPbreBRnizba46Q4rSVJRGsIi5fue+w1Z84/CUAF/ nOqIK8I0pdxvjE/bZkDc1WtsOdEJdbSFE5dHCfRfk4cfeS1ns9mq7KnXtx+rbLvsL6zH VpWj1U6/ZGrUdipg8lTJOc/B75jWvDke8mGFCD5Mda2ezPuKqRD8ltmNk5QUYO7ipISE 5xogPpeP/uO0iv4zbYwO0fG8cr/MWZyJGv0bNjkWevcVAdIqjfrAkVmHylmhuPj81SOW KBFQ== X-Gm-Message-State: AOAM530vxmrjR99Wg9Jl3PcXM08WY23z0Wv9Qf1az/kPobNvJN3nVN3N D1dNFQHaAzDoSdYMuZ40F5Y1j0FNHow= X-Received: by 2002:a17:906:3d62:: with SMTP id r2mr31037562ejf.174.1635720489393; Sun, 31 Oct 2021 15:48:09 -0700 (PDT) Received: from localhost.localdomain ([95.168.118.28]) by smtp.gmail.com with ESMTPSA id w1sm1236317edd.49.2021.10.31.15.48.08 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 Oct 2021 15:48:09 -0700 (PDT) From: Paul B Mahol To: ffmpeg-devel@ffmpeg.org Date: Sun, 31 Oct 2021 23:48:25 +0100 Message-Id: <20211031224826.77737-1-onemda@gmail.com> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] avcodec/dnxhd_parser: make parser more reliable for smaller VBR frame sizes X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: BILq8/IU+xRg Signed-off-by: Paul B Mahol --- libavcodec/dnxhd_parser.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/libavcodec/dnxhd_parser.c b/libavcodec/dnxhd_parser.c index 4ba619c9bb..ff80294cca 100644 --- a/libavcodec/dnxhd_parser.c +++ b/libavcodec/dnxhd_parser.c @@ -62,7 +62,14 @@ static int dnxhd_find_frame_end(DNXHDParserContext *dctx, dctx->cur_byte++; state = (state << 8) | buf[i]; - if (dctx->cur_byte == 24) { + if (dctx->cur_byte > 42 && (state & 0xFFFFFFFF) == 0x600DC0DE) { + int remaining = i + 1; + pc->frame_start_found = 0; + pc->state64 = -1; + dctx->cur_byte = 0; + dctx->remaining = 0; + return remaining; + } else if (dctx->cur_byte == 24) { dctx->h = (state >> 32) & 0xFFFF; } else if (dctx->cur_byte == 26) { dctx->w = (state >> 32) & 0xFFFF; @@ -74,11 +81,8 @@ static int dnxhd_find_frame_end(DNXHDParserContext *dctx, continue; remaining = avpriv_dnxhd_get_frame_size(cid); - if (remaining <= 0) { - remaining = avpriv_dnxhd_get_hr_frame_size(cid, dctx->w, dctx->h); - if (remaining <= 0) - continue; - } + if (remaining <= 0) + continue; remaining += i - 47; dctx->remaining = remaining; if (buf_size >= dctx->remaining) { From patchwork Sun Oct 31 22:48:26 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul B Mahol X-Patchwork-Id: 31267 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:a610:0:0:0:0:0 with SMTP id q16csp2037544ioi; Sun, 31 Oct 2021 15:48:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxRwLYIq7kcDAhQyTw8flyhNjIwnMLcnHjaOEXcPkspk/rx4WstlmtG/oTqqChwgX0cATtF X-Received: by 2002:a17:906:9be3:: with SMTP id de35mr13972388ejc.110.1635720512785; Sun, 31 Oct 2021 15:48:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1635720512; cv=none; d=google.com; s=arc-20160816; b=B3oM3zOGA8NyKdsps2O1qDu8OZKwhkayddpJG2XiNKGVbtWPaiFgJeQxfsM3mK4R8H aOOWBf+Ms0BvJRFQGoOR41AEOtgsnPsEBW3NAQBK4eWmKAeOXOnIvsa3+Nb09fFicX5Q q8jXDIl95io3AqPBuecDihzKTY6ZSq8noYG+wNMlYzfNCE8sbYel/BqXDlxE/W5JcfoM NnuaIv/7LVB9CnieAj9hY/SqtGUMivlwkpXvuI5RPhjdlnR9SERpLZdop6GwocGBKgrZ pxIXR6OLSfhaLiM4pbuPicvS5/xgkVt/2Q6K3PJsbfBimYP4rSpnnaEUgifTw4nnovXB SSNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=gVau2jpcKlxyJ9GSjDmf8luCcHjXl1cI/L81pZt+kEM=; b=qmvmvN5ET18ch5s628Oex75ZWQ5GBaiIKlIxgIS1J5bpc+Gun2xpGsLVW9yiF2sOsH l2dmMIzecGTHOO6pQRtkKV8d9s8IkhHThLL1B5jPwai8oAByPpPdyISkz3r8dWk08KQ1 WhhC5i7QLidpOGH512MMx3T8TUK7uhgg6lk1pwvtx3LlPASMRmx5fu5xmGTSQcSARRT+ VRcajlOTfNxZwASIjtC8mELBRwBeWsuLre8DIVgjHFAiPZHyM6XLpX93AR0rTcb7X3zx 1w1xJgHajYfGdSekrgzZ4LLZrrG7r6/lWJ7/4mHn9hdtRhgBs1DO5ZYNcGGvxJmhuY7Y UUmw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=gEpPnWng; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id qb12si4449393ejc.309.2021.10.31.15.48.32; Sun, 31 Oct 2021 15:48:32 -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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=gEpPnWng; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3C58868A8A3; Mon, 1 Nov 2021 00:48:18 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AB9D468035C for ; Mon, 1 Nov 2021 00:48:10 +0200 (EET) Received: by mail-ed1-f42.google.com with SMTP id g8so58725351edb.2 for ; Sun, 31 Oct 2021 15:48:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=9dTKnL/eaRepzeGtdieAUqLMedeWqkVmPkSLTguSeYw=; b=gEpPnWngQyIvCgRvtia/dYKSwVshUVD1NUV+orxWGZMID/Z4B0SOfR7bTSH9NJAVKm MVglyAwx68casdRtChZqjpJzkuKoypolm6drKls08WuLyXRsZ/P/53dPh6PDwYbVTd5b 2e/AofzTUz+FcWhAuxUSdLQGC9H14YRFqUcp9IBFP56vHRozLbmvaGvVp0+L1CxbkUlT KPl3JdcpHLsRC4krXZWGKBCQm7VwAlq+RDYixzIYP5Y3v0B/W3qH6+LAFaY24ozWba5y 0O3z7OWofPTX0kOEsFUSNBXD5fNbNOuW5nV9nsBVlga+zcixKNl+SccaM0aIx69pHq/T 8aig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=9dTKnL/eaRepzeGtdieAUqLMedeWqkVmPkSLTguSeYw=; b=2k1Z/wLe7W4b2TNEzHMfJvRdpFpC1QrwDfvzKSRxZGi0KV1hd9HVgZ+UQWsNjsP8KF 0MZkS99N3DSxiaghK+nR3y7E5JhAHkrNEOsw/Xby1xAO8An/Do4lxQvP2g/9N0kNppqP Rs6sDZWfjrjWRQ1D4LNnQS2WQVRghXkC92cx/pg8YBREu/ADB/NEo0HzOD1f8XabvLNE Lrt6Y8F10EWFQt2EIwe7D1h2dDKdOHgEL0HINkGppFSGPKCrqJJNncf/zyc524IQtS+e Q3wmzepkPqI9VhLs4hv+QT0j1S9GveyrX2EXGVg2Mz/PcIGtOUVwPJtU9r5XDKppicsg IogA== X-Gm-Message-State: AOAM5323vztVrtB77G3l9ZSLRH75t/5b3oIeQ4DCYwRgVXQCxQYO38cp y8ekok0h0eTm7f0gnIhZwPwwz8lXh4E= X-Received: by 2002:a17:907:7253:: with SMTP id ds19mr7218479ejc.476.1635720490148; Sun, 31 Oct 2021 15:48:10 -0700 (PDT) Received: from localhost.localdomain ([95.168.118.28]) by smtp.gmail.com with ESMTPSA id w1sm1236317edd.49.2021.10.31.15.48.09 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 Oct 2021 15:48:09 -0700 (PDT) From: Paul B Mahol To: ffmpeg-devel@ffmpeg.org Date: Sun, 31 Oct 2021 23:48:26 +0100 Message-Id: <20211031224826.77737-2-onemda@gmail.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20211031224826.77737-1-onemda@gmail.com> References: <20211031224826.77737-1-onemda@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/2] avcodec/dnxhddata: remove invalid trimming of frame size X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: qRt5j7z/Zcao Signed-off-by: Paul B Mahol --- libavcodec/dnxhddata.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libavcodec/dnxhddata.c b/libavcodec/dnxhddata.c index 3a69a0f501..b5c66dfe1d 100644 --- a/libavcodec/dnxhddata.c +++ b/libavcodec/dnxhddata.c @@ -1099,8 +1099,7 @@ int avpriv_dnxhd_get_hr_frame_size(int cid, int w, int h) if (!entry) return -1; - result = ((h + 15) / 16) * ((w + 15) / 16) * (int64_t)entry->packet_scale.num / entry->packet_scale.den; - result = (result + 2048) / 4096 * 4096; + result = av_rescale(((h + 15) / 16) * ((w + 15) / 16), entry->packet_scale.num, entry->packet_scale.den); return FFMAX(result, 8192); }