From patchwork Tue Dec 19 15:37:01 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 45236 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp7853441pzf; Mon, 18 Dec 2023 23:37:25 -0800 (PST) X-Google-Smtp-Source: AGHT+IHbB8O8zUKYGpz27ghLTRJyuN9De6OpiTc7UBlQe9QTg8+3Jq1ehs16bEPtmU4IKV6UeBr1 X-Received: by 2002:a17:907:1394:b0:a23:453d:95d2 with SMTP id vs20-20020a170907139400b00a23453d95d2mr737752ejb.309.1702971444791; Mon, 18 Dec 2023 23:37:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702971444; cv=none; d=google.com; s=arc-20160816; b=0Zhnp2YxmvQv13Lrz6QSN3BwKOc4tGf15oD+Nq4uMMVN1PNPatqynDaT5Md5EAF8gc JvbHKy+Em7FTV+sS3/nYsa5pb9Ll6G3lUgLxBNfXFxKiHlm+FvOL2VuJnoeSnv2sVtYV svcyJTScUCIvAZ/QHYTZhr+NrVWyWG9Pb1JCDAQpKMFfihapdqmMJhMFh5AVKJM5hjhQ Jj2x+NIvyapV0wBiAD0SBwcLaspVEDYAPUeg6dr3Dd70uxaOCbxAosZRnZKmtawKdQYm jq5JGl12jnUmBI/FRB1GiExQRhfkkc59cwEcA5NrqQ1wGe5UNdgHOJeLyLMdj9lpJ1tk iQ1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:date:to:from:message-id :dkim-signature:delivered-to; bh=2TawidXLvxknSGvB4q6W8778pq/3p3bHFupFtsOQdjI=; fh=HnHYuZ9XgUo86ZRXTLWWmQxhslYEI9B9taZ5X1DLFfc=; b=Ku1ydNfHN7a90MZr2gfB5MU6Vey4iC20xZ5bstkN8qA0vMySJ/MUofNo6GP0YJcEtC WQHA14OcR5gt43vVEbAAwAz6+X2T/4MVD2jdTdzpjH/Mcio8br8bIrA+i7ccbzyMwQtw INxXOgBMbskNAWpXY+NYEAjG9a/KPgMuG1MNwPiaC+cZmG8xnMOb3sXZryeTyTssLLMU 1eh3lrVpBPTQ0U+lpGjqKKd/13SaO5+ShnUFtTgVZGdmWeqTHp9JMucLVCiZGoAuYu/H 7Rq4z188XFQBbBwN+wONjWyWzxecs7oaynxs3R0I+qK8cgqube10OfZq1RnsGGP7zoHV 4hTg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b="H/4jdkNp"; 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=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ox11-20020a170907100b00b00a23495e8feasi1967021ejb.170.2023.12.18.23.37.24; Mon, 18 Dec 2023 23:37:24 -0800 (PST) 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=@foxmail.com header.s=s201512 header.b="H/4jdkNp"; 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=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 31DBC68D04C; Tue, 19 Dec 2023 09:37:21 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out203-205-251-82.mail.qq.com (out203-205-251-82.mail.qq.com [203.205.251.82]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BA81068D03B for ; Tue, 19 Dec 2023 09:37:13 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1702971425; bh=dJHsUYNgvmmQ8BBEAOWOii8hktnRMCCUtXDjK33c20Y=; h=From:To:Cc:Subject:Date; b=H/4jdkNpjJRdgsaPXsL2epVkRx6dvENoWLQb690w66+c83ZLahtDkJLoJFmf+0RNG lV0wCR0BQtQgqrJnPZfHnif//qmdegNS+Wn7jYAZfdny5tN6v1t0oLpQysfEOtip6D VaEms9Wq+x1Xcm8ZnrqLTrPEsXNm+Wf4Q3pxC5z8= Received: from localhost.localdomain ([119.147.10.192]) by newxmesmtplogicsvrszc5-2.qq.com (NewEsmtp) with SMTP id 943A0EBC; Tue, 19 Dec 2023 15:37:03 +0800 X-QQ-mid: xmsmtpt1702971423t9oeizqsb Message-ID: X-QQ-XMAILINFO: OZZSS56D9fAjUvQnEwa4OdFQW5A0M6uIl1MfoP7hwAe/5dPoA7O/VXPHf37ENS XXTCkJmfL8vTzgXt/TVTImrPoVz7AmTqYnGKiyqQahhM7/peBxJ9AXOP3TGo1AX4y6ibpraAPTdS FMbqGMuK8ZkIRNujZAc43oU0xDI8jBVbhlbeL59NFfdZCtjoxc9fUcAr7whaQszhPIHjViPQuFoQ ep6UH0XX9nr6RwyhmVzRZUSQg+xDHLl0MvgbZsmHUxb8b80mYQ5lPEsbf3HqvPxSL5kqI4O+YKhg PBofddtW/ROsYCup6cH69ybx9u/RnpyQ94KvsA15uwjOhWI5BnPSmtfGAfNwwzWIchH3OXqfRPdF hmRY+JOr+4Tuu4LUB0Ic7tWp3K3cPIkt/jY40XjEi+YqdQXm9DurvFTe7KfZr6ZmwuANDrz1uL5U dPZEmxAC/N/RTn6vBiygXv1okq+ILscsQzha0m1ErV1Xlf1sUpU7byZm9lLzw7WTW02rbOZPxNHH Kejepg+fKMzfK3+9xh50+owdS6pWFnEud3us8nJv53tIb4OXvD9jG74cohh3rIVtHT3dHlmcCZ9o 9XEPN7er5nmqXxufmQ93FXbf0TErcxcsxLkRzQPILhbXkf6kaUJJp4ukb7jHWu+EJFMUG7+Dmcmb i7Id5EtzHHt1WntlCV9Zqmzaz96/NZMnLZsED0wGkLb/B8jz89QBAojcmZn/CnyHrv4SXqmiVvu8 lncKhCXz+9qNwIH2ft47slkshwdAifjhFbc3YeDqgDk5FbTPAJqzVjakQTr7IGuEXEUoyyq63VdG QgNnQTQ3goDVdxU8GIj4Sw2t8BMcPb8KvANS6hl+plA1Nnx7Pe8e7PUXFAhB7SeOwjhEYr+vluU8 jJFWUeo2rj3hZZscdM6QGN0xO8ky+9rrxLGZLsG6Is5iSWzndjdxq202WAsERUDdOLNOCQCOnYt7 RWiijHGvIcF4PRrBYik5g3jdo4+z3pe6tz5wAgoAAs/lsjm/xNig== X-QQ-XMRINFO: M/715EihBoGSf6IYSX1iLFg= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Tue, 19 Dec 2023 23:37:01 +0800 X-OQ-MSGID: <20231219153703.450826-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 1/3] fftools/ffmpeg_filter: fix NULL pointer dereference 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 Cc: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: pkvPEa/yTCOi From: Zhao Zhili In close_output(), a dummy frame is created with format NONE passed to enc_open(), which doesn't prepare for it. The NULL pointer dereference happened at av_pix_fmt_desc_get(enc_ctx->pix_fmt)->comp[0].depth. When fgt.graph is NULL, skip fg_output_frame() since there is nothing to output. frame #0: 0x0000005555bc34a4 ffmpeg_g`enc_open(opaque=0xb400007efe2db690, frame=0xb400007efe2d9f70) at ffmpeg_enc.c:235:44 frame #1: 0x0000005555bef250 ffmpeg_g`enc_open(sch=0xb400007dde2d4090, enc=0xb400007e4e2daad0, frame=0xb400007efe2d9f70) at ffmpeg_sched.c:1462:11 frame #2: 0x0000005555bee094 ffmpeg_g`send_to_enc(sch=0xb400007dde2d4090, enc=0xb400007e4e2daad0, frame=0xb400007efe2d9f70) at ffmpeg_sched.c:1571:19 frame #3: 0x0000005555bee01c ffmpeg_g`sch_filter_send(sch=0xb400007dde2d4090, fg_idx=0, out_idx=0, frame=0xb400007efe2d9f70) at ffmpeg_sched.c:2154:12 frame #4: 0x0000005555bcf124 ffmpeg_g`close_output(ofp=0xb400007e4e2d85b0, fgt=0x0000007d1790eb08) at ffmpeg_filter.c:2225:15 frame #5: 0x0000005555bcb000 ffmpeg_g`fg_output_frame(ofp=0xb400007e4e2d85b0, fgt=0x0000007d1790eb08, frame=0x0000000000000000) at ffmpeg_filter.c:2317:16 frame #6: 0x0000005555bc7e48 ffmpeg_g`filter_thread(arg=0xb400007eae2ce7a0) at ffmpeg_filter.c:2836:15 frame #7: 0x0000005555bee568 ffmpeg_g`task_wrapper(arg=0xb400007d8e2db478) at ffmpeg_sched.c:2200:21 --- fftools/ffmpeg_filter.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 9fc877b437..69a49a071e 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -2335,10 +2335,7 @@ static int fg_output_step(OutputFilterPriv *ofp, FilterGraphThread *fgt, ret = av_buffersink_get_frame_flags(filter, frame, AV_BUFFERSINK_FLAG_NO_REQUEST); - if (ret == AVERROR_EOF && !fgt->eof_out[ofp->index]) { - ret = fg_output_frame(ofp, fgt, NULL); - return (ret < 0) ? ret : 1; - } else if (ret == AVERROR(EAGAIN) || ret == AVERROR_EOF) { + if (ret == AVERROR(EAGAIN) || ret == AVERROR_EOF) { return 1; } else if (ret < 0) { av_log(fgp, AV_LOG_WARNING, @@ -2835,7 +2832,7 @@ read_frames: for (unsigned i = 0; i < fg->nb_outputs; i++) { OutputFilterPriv *ofp = ofp_from_ofilter(fg->outputs[i]); - if (fgt.eof_out[i]) + if (fgt.eof_out[i] || !fgt.graph) continue; ret = fg_output_frame(ofp, &fgt, NULL); From patchwork Tue Dec 19 15:37:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 45237 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp7853495pzf; Mon, 18 Dec 2023 23:37:34 -0800 (PST) X-Google-Smtp-Source: AGHT+IFgFrETlOs0Y9vsxvDw/RjuuO2Li1u1O3zVUoQ9jey9N8J4JKe+tOdklHpqzKToGLpxk1S9 X-Received: by 2002:a50:ab12:0:b0:553:72f2:3809 with SMTP id s18-20020a50ab12000000b0055372f23809mr2445396edc.0.1702971453709; Mon, 18 Dec 2023 23:37:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702971453; cv=none; d=google.com; s=arc-20160816; b=ixfTJ+AKv3wSNxO8f5DJxpircpa4t7nTJlLn89gomcWpfI3Y8BJLOF2PMeTGYImG50 9SKGuilc2a/AgTdiDKsFycZHNftH+WpnrJUxlv0QBLcrND6CPec8TeTe1ZV0YgEPPZX0 6beTOzLHF7xwdTydrrm65U76dA/q2UPwhZpyMKEcDmUSwOb4wU9uAMSwdecHr6BgkO6t Yfrv/5EmKVw5fsvYiEkWvwt9xP8R2Fs44XgaCcp4PK8bbm/3rHbmtFaFzC/N7tXTG2SF pe2HnU76o/Ol2PBu2AZIkIqpydAEgWdjE6CoeNc38Py0p++NKcczA7WScNbmBFugHI/s sa2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to:date :to:from:message-id:dkim-signature:delivered-to; bh=ZB3kclJ950KHHc5PWDMjZUGcs4vUjky4hM9C4XpYFOo=; fh=HnHYuZ9XgUo86ZRXTLWWmQxhslYEI9B9taZ5X1DLFfc=; b=GT8P/RIJhZSAREOIoaIlUjc9hOouLzW015cjHWEGzFf0Ee7dxZuVpHplCJv53FTyzQ nLLdW4nzPQcmGjOnxMizIJAceI62vRggJmEaZTzbFQ35meQSNmQnjCo/IguaVCgYs6VD uHm+C7+6AhPXbcvG0xwYDGEqaeGBu44vo6eAx9Y3cSj+ghWUHByTrGa6P2HoWPf8Ny2+ +mYE0jsL5dsGqtnSAVOlXQxLhj4oB2FxWUJxCX0cwxhg/r6orxpdQCrv4jCSxhngKURr xQfq2KQ92d1rLUUrSEhO+7nE8E8myXXs3Nd3jajtmAkzRdR7/pPGO21poqv3UdXzcldy wSBA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=CFd+HLSV; 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=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id g10-20020a056402090a00b0055135b76686si7786964edz.177.2023.12.18.23.37.33; Mon, 18 Dec 2023 23:37:33 -0800 (PST) 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=@foxmail.com header.s=s201512 header.b=CFd+HLSV; 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=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 386E268D040; Tue, 19 Dec 2023 09:37:22 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out203-205-251-53.mail.qq.com (out203-205-251-53.mail.qq.com [203.205.251.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BFF3E68D03C for ; Tue, 19 Dec 2023 09:37:13 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1702971425; bh=TTZwqcGBubloNhI2HCyjB4OLHXhtXG0B3n1R6BgOGF8=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=CFd+HLSVyTJcPZ5bJDf0HrEyjXj7EnPvungfHeJ4YSaL60jhPBxjMP2FhKLAJ74l2 cBw7DeXdR3Z00Gw27OfXuP4yEBxPwHQBqK+PIKDd9TfV3v3cz2P32MCeBIb7+asQv5 4HlEBEL4dIAyRUX7khtSbDXVsE0bLEc6Y0vz52EM= Received: from localhost.localdomain ([119.147.10.192]) by newxmesmtplogicsvrszc5-2.qq.com (NewEsmtp) with SMTP id 943A0EBC; Tue, 19 Dec 2023 15:37:03 +0800 X-QQ-mid: xmsmtpt1702971424tvo2zf5ls Message-ID: X-QQ-XMAILINFO: Mdc3TkmnJyI/jOw4BYryzmpNbST7Le7V+Q9yn44z274KyxyNTf4dWtmrZrNSmJ wYMND0a2KuyQnf38VSnvrOEVf+j9X7xbdhd/qrEqe/AcTraPoztW/wPdFZD8j83mcbrzlHDXqFw0 npPZFzH7koT5RvTU2XAQC5YZzLX3K9lgXCaONXkjO65u6dcJDiza1Frg8OGm69CdqurQffEuLdGA CRC20M+LdT36/8uvPRJOL0OTkV6FE2bMZCDe46Xsp8Fb8MjAcvCFlZVYCnw8p8042MD/e7mY3bKf ZdpdB7LaIQkzyFO6oygIV3w5qW78G4xyjH4xgzpb8HU5F3eo4ZjghBL/bvCTN1WWVQlRlyWNXMVH MRtGYVDX8NEtquhcIw6krVAHWIkoFFrudsMQn/GqCxb/RBqHBm+sx8DwcBZSI3r1un3rw3TyyQ7l RmUJ08m/vT8WS66nxFHSW2TgK8JLhhnhhMOlB8L7UT8mBPeG6JIWpYfcI9ChASxQx6qIQiBEitPT LVqmvaX/3hIJJNRFfVDLrT8iEIn56fd5AguEucjK4WhTVLztH9Pt0KFLG0jORJbU3kTW68rMM/3t nZjQha/xtCCJnyVVrx8W2kaPi/Dkk5/FEFRhzGQtwCd6TDv4dAcyKjt6JDdaQngswyVJQ3T9Rg/9 bkDQMkOlUnTFrO06lh9AfA0DTn+hiU5KQFNC95UCtgFWX1lTVnkdyB6kZpqGLRYVDlLALR94asUd j4Pu7wpSKUjt/UXaRls2dUSX7c45gtVhlK4SzfFgWY6WziCsjlsTe4uAosuAXjDXBM7GgCRaRTbb rh43fau2ki/mwTkeaebtOVZKQyu0cVUvfmj0GlVPllVT9W26Qa66Tp/CiTETO9GpOIfT1EqXBYZs /TCwXAYVSeyvJeFVx5mf+2WsGiKSE0S8nJCo29VubRW/fO+g0ZCAzHefJ0xHlRshjv75aWi9djtz C2aajvG7wQH45bjr9KVaYUo0iE/6LG31I8GEkRVtd7doCy6TU7yym2ZUYGVr6B X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Tue, 19 Dec 2023 23:37:02 +0800 X-OQ-MSGID: <20231219153703.450826-2-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231219153703.450826-1-quinkblack@foxmail.com> References: <20231219153703.450826-1-quinkblack@foxmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 2/3] fftools/ffmpeg_filter: remove semicolon after code block 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 Cc: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: zVPq4zVu8j28 From: Zhao Zhili --- fftools/ffmpeg_filter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 69a49a071e..7cc7abba64 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -2456,7 +2456,7 @@ static int read_frames(FilterGraph *fg, FilterGraphThread *fgt, } } did_step = 1; - }; + } return (fgp->nb_outputs_done == fg->nb_outputs) ? AVERROR_EOF : 0; } From patchwork Tue Dec 19 15:37:03 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 45238 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp7853540pzf; Mon, 18 Dec 2023 23:37:43 -0800 (PST) X-Google-Smtp-Source: AGHT+IGIyMXEOVQRRT3Hc1osi2LOo29iQaVBTBfkf4Ggr53axXM6oYmxWH/Nm1A80lC+N9eqI6UG X-Received: by 2002:a17:906:58:b0:a23:c63:bf6f with SMTP id 24-20020a170906005800b00a230c63bf6fmr4403337ejg.87.1702971462845; Mon, 18 Dec 2023 23:37:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702971462; cv=none; d=google.com; s=arc-20160816; b=AH6aHPTsptY4hmjefG0I9M/G26kzaaIEjuLy+ZcnPUMDazmEJvxRIz/n7eIRW2gu/7 I3uvBe86XS4lUQJPgvEtfOwsSe8C+AFbsvroJ0NHWHm1wV1zqNkWsHV86Z4tzDUMykum 4bisGyanhJHd+z7LYmtyYDq3YnMZrWSkS7a8aR9Rp7zLatxx8Tp8+fIfb29xCFNhWDVT UqeaqR1z8IevSXZwVdkHUdz1nBgZriWrdzmp7CYbMnAzj7Z6Dop2a3Ax1ZC+OlUxW/eC dtNK1beEDIPeLKj8VfKcgSn/4f9B52ox9r03VRPSms8cSYhmx4XNI5/MlyjjGA+Dwfth nfUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to:date :to:from:message-id:dkim-signature:delivered-to; bh=xQSeKbZTdQj8B5HfOf5ol+K2eWA8yWsifuQK9h8H1vY=; fh=HnHYuZ9XgUo86ZRXTLWWmQxhslYEI9B9taZ5X1DLFfc=; b=ukKrXLUynpgA77VUlPaOU7khE76xVbGoCiv2ridCL+fz2Zsb6R5aO6aarIIaECOEHJ 4u+y6QQp9w4/+uNDIEWUZtdUGwPIIs+lEUkPECqqCVnEGqb/A8PoMGZRpm6OhsdkZfcy DY12eOzhy2Hwf69K5DeY63EEH4UstIanAMZfTDkTok3jZow3gvXJRz7WYoob4JhdkTJU HYjqZ1/owt9DDbSq+UU/yNTPtGvZLR06vQ1CI/HcCl+7mP/PpLFOCKdCC+3gVaJVU1Ch vpo36mxP83wTPmDyrHZrgn62dfVb2rkGR+PVDaicUteajJTOjZvl7PRrTOhfzHvkXS9H weMA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=BM2vUWiJ; 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=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id jt6-20020a170906dfc600b00a235545955asi1731284ejc.165.2023.12.18.23.37.42; Mon, 18 Dec 2023 23:37:42 -0800 (PST) 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=@foxmail.com header.s=s201512 header.b=BM2vUWiJ; 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=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 472AD68CF06; Tue, 19 Dec 2023 09:37:23 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out162-62-58-211.mail.qq.com (out162-62-58-211.mail.qq.com [162.62.58.211]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1D4ED68D03C for ; Tue, 19 Dec 2023 09:37:14 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1702971426; bh=xLimPeHxODALU9GQd02YrZiwB/nvTWPElxt2YOGhsp0=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=BM2vUWiJBiUQEm0GZ1jNiUUNSKhizerMbwanLCCaWKgR3ZPZqpC70ODCZKvA5njW2 7plI4aLO+eQj5gyJ98oAbi/r+5JtGHE17es3tCdWhfLrKPvl8Qv6lfNFKUq+tWotlr sjXj/BpxGTrhoBxXoUgHRdw2VFPDmMWDBFb97iRs= Received: from localhost.localdomain ([119.147.10.192]) by newxmesmtplogicsvrszc5-2.qq.com (NewEsmtp) with SMTP id 943A0EBC; Tue, 19 Dec 2023 15:37:03 +0800 X-QQ-mid: xmsmtpt1702971425t4dkfcu6q Message-ID: X-QQ-XMAILINFO: OOWntbL6xj16EfIpbk6Jc21DYkp7jt+inB8FiHoQMVh96a5T6Ej7JdriAAXF7d 5bsYAndvztOTNa3921pW+UQ5ct4ZYiBnZCJAoyo9kcIho8iWUfi9zFYWp2t5uV1pgHHWzUzwacC/ Fi9PEUIc0wvVBstZtNISWcxAZ2BU1pYqzLj1I8vMg+8eTi+ciQ04YKqOd9ahk0Il3ORHYZSTrQ8i iZ77hdyYGwUrvQtmCbxLVVIdWTdWqrvuEbg2jWOXiCrJkgeZzvmzaeG65Wa2c1bInCjMdDA3Athj 0jreitd9T5bg7fLOLofjwatDX81XkVBI3JXRYqkTvB91vcDUf1breckEDrzdNqAY7iRlvwBwLVCJ bcbZ7X490h1krkcO0Hw3xpGNk5YNhlKnDki3OM0AxyQ+IzThW30x5ZiZ6BV9hgZhL3zfkRwXeLiK R/pDdhg+Krsr0hWdkZjcJrvXjZlUSbJPXqqDHyiptwcOLoovouQ1ge23d4QyzfQZ4q42ukmHmRkU uOM/ekr/VSwuoEc8JbOu6Y3iOkRppvbfY0ULEa6D7zoJJDn2cSCoSzCV5ONekx3Rqc+BTGRkcXMt GD0jA22yImbJsOZYWlTdoDSqe1f/3AAp0AufXJTcH6facJ//mKc33IX+UzosspS6d3wqM4AqHkkc Z4RTPWeiuNn47hfR0JLYx9jYD0cmh99CKQdNYEhHmfBX0L/W7SpaS92JaRyrRqS27QK/ccRRB/qo BA1uN7v9c7h3qVRqBeIT0LCsBW2QWEKjn3L0PWEAd6O1RWouHberpIilvmNKgQHk+ujkw5VvJXQ1 VHcQm0gazBWhrdvYRTjlVP093WyzISld9EhqFY2OR8wZzNeYfQ25nzvyKWzJKk00wdYEOOAq90SE tn9m26EQmjtMoazrTvEcBbpuGSG/v58MNSGjSmAk9NPJM80NuA5BThPfYdE/iEuLKpwcumTXXPpu i46bCFES6jZWeMo8QDk+9ZtUeTkE2yfOq2xzkRWWWb5X5jtoJF9w== X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Tue, 19 Dec 2023 23:37:03 +0800 X-OQ-MSGID: <20231219153703.450826-3-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231219153703.450826-1-quinkblack@foxmail.com> References: <20231219153703.450826-1-quinkblack@foxmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 3/3] fftools/ffmpeg_enc: assert necessary frame fields before create encoder 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 Cc: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: VWNGnpHzbgzq From: Zhao Zhili --- fftools/ffmpeg_enc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/fftools/ffmpeg_enc.c b/fftools/ffmpeg_enc.c index 57590a43a3..2a7fba0c51 100644 --- a/fftools/ffmpeg_enc.c +++ b/fftools/ffmpeg_enc.c @@ -206,6 +206,9 @@ int enc_open(void *opaque, const AVFrame *frame) switch (enc_ctx->codec_type) { case AVMEDIA_TYPE_AUDIO: + av_assert0(frame->format != AV_SAMPLE_FMT_NONE && + frame->sample_rate > 0 && + frame->ch_layout.nb_channels > 0); enc_ctx->sample_fmt = frame->format; enc_ctx->sample_rate = frame->sample_rate; ret = av_channel_layout_copy(&enc_ctx->ch_layout, &frame->ch_layout); @@ -220,6 +223,9 @@ int enc_open(void *opaque, const AVFrame *frame) break; case AVMEDIA_TYPE_VIDEO: { + av_assert0(frame->format != AV_PIX_FMT_NONE && + frame->width > 0 && + frame->height > 0); enc_ctx->width = frame->width; enc_ctx->height = frame->height; enc_ctx->sample_aspect_ratio = ost->st->sample_aspect_ratio =