From patchwork Tue Dec 7 08:14:08 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 32092 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp5920541iog; Tue, 7 Dec 2021 00:15:32 -0800 (PST) X-Google-Smtp-Source: ABdhPJy8KDqD0apYWSkFJg2WAVWFmWJ0heOsQr87SWbsAN91gQjselz7z74LnHUrq4yle1TR9PET X-Received: by 2002:a17:907:7850:: with SMTP id lb16mr52016306ejc.67.1638864932073; Tue, 07 Dec 2021 00:15:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1638864932; cv=none; d=google.com; s=arc-20160816; b=nqdCpTjdx1zE7f51ghqUVnYYGRaDtJzRmKUy1g2dB5zUY4tniah317rZhQyprfrMNo JJqGzJ9csL0zwDMSjXvNNWZDbo+E93P7STErwMZ8FdqE21hP0qjXN758zdhS8ugBkonx kElRuAY/HteNNaZZoiBeu7o+aA1OO8kATmjZ01b5w1BwtA6cZgj4UhlEML8/8Lb81U7C 0nWIcr8/vhWTlQZs9Xm6iqjPE10MrRlcN3b1/AAoMmnGxtjXcSwVD/VyX0SrECfo5xrl JLy/rq1atDuzwIQUwAIdOavS5srO++8dcq/PMvMvzeoPOLdUsZuDTAh7B/6z8Gjcj4fQ wAMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:delivered-to; bh=2P6ZV1baNmzUS0jPgSIoryMLwkm2PSzTDIoXGjWnoi0=; b=aD9ZJhW0fTra+uPf1R4PuIVhmWKQgx4TrcYHEmxWZ1kgyQpbIlnYYrAreqG4SpOp9c UZmHY7+oHA7BCU1TcrJ26sVdShtbZWVAXXYt6fwVVdgpoz5xQcvI9FL0Vxnq2If55q3p z5KXtnQkozLrkud9hgP5qFKirRo/F5xfawob/t1A76IvAO4ff9KHNd1z5GNDOnG2pz/H 4iyLoYdZu6h8TputiQoZNNAkYbysgTtZcGEnFaUAnN/CSyWK7bitPJQfwD0j8rAg972N SPxUb++rOABg+FdirFb7fG5+auVjjXP4glPDHwcYjcsQNkJUaC8LE+otZmHl03IphyEZ tWhA== ARC-Authentication-Results: i=1; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id p8si10740950edy.0.2021.12.07.00.15.31; Tue, 07 Dec 2021 00:15:32 -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; 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 61C4F68AC9C; Tue, 7 Dec 2021 10:15:20 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from vie01a-dmta-pe02-3.mx.upcmail.net (vie01a-dmta-pe02-3.mx.upcmail.net [62.179.121.159]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 10B7D68980E for ; Tue, 7 Dec 2021 10:15:13 +0200 (EET) Received: from [172.31.216.235] (helo=vie01a-pemc-psmtp-pe12.mail.upcmail.net) by vie01a-dmta-pe02.mx.upcmail.net with esmtp (Exim 4.92) (envelope-from ) id 1muVd2-006eTQ-0G for ffmpeg-devel@ffmpeg.org; Tue, 07 Dec 2021 09:15:12 +0100 Received: from localhost ([213.47.68.29]) by vie01a-pemc-psmtp-pe12.mail.upcmail.net with ESMTP id uVc3mdsrfSgGFuVc4mFB7B; Tue, 07 Dec 2021 09:14:12 +0100 X-Env-Mailfrom: michael@niedermayer.cc X-Env-Rcptto: ffmpeg-devel@ffmpeg.org X-SourceIP: 213.47.68.29 X-CNFS-Analysis: v=2.3 cv=f8Q2+96M c=1 sm=1 tr=0 a=2hcxjKEKjp0CzLx6oWAm4g==:117 a=2hcxjKEKjp0CzLx6oWAm4g==:17 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=GEAsPZ9sns4A:10 a=ZZnuYtJkoWoA:10 a=NEAV23lmAAAA:8 a=rRB_DZY_UDNlg9q7E3EA:9 From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Tue, 7 Dec 2021 09:14:08 +0100 Message-Id: <20211207081411.16442-1-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 X-CMAE-Envelope: MS4wfF3Xz3d++ioWzwoj8BFzkzLsasfOcisDZR9SeABHvV4/P8LLzTGp+3et1Kpc5A5+z3Ds9WY+90fYsDvlaeAYKqH8pqhMkHiUvyZN8PeN5OVuaaZ1APMn qgJGS12RCe2XMzVJlO4ocDrJCjeLiuqFE2Ifg54VLD5Ayd8p/ADkpj1j Subject: [FFmpeg-devel] [PATCH 1/4] avformat/4xm: Consider max_streams on reallocating tracks array 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: PUQ+4RlwZDvT Fixes: OOM Fixes: 41595/clusterfuzz-testcase-minimized-ffmpeg_dem_FOURXM_fuzzer-6355979363549184 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer --- libavformat/4xm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/4xm.c b/libavformat/4xm.c index f918b1fc572..848991af5b8 100644 --- a/libavformat/4xm.c +++ b/libavformat/4xm.c @@ -137,7 +137,8 @@ static int parse_strk(AVFormatContext *s, return AVERROR_INVALIDDATA; track = AV_RL32(buf + 8); - if ((unsigned)track >= UINT_MAX / sizeof(AudioTrack) - 1) { + if ((unsigned)track >= UINT_MAX / sizeof(AudioTrack) - 1 || + track >= s->max_streams) { av_log(s, AV_LOG_ERROR, "current_track too large\n"); return AVERROR_INVALIDDATA; } From patchwork Tue Dec 7 08:14:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 32091 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp5920391iog; Tue, 7 Dec 2021 00:15:23 -0800 (PST) X-Google-Smtp-Source: ABdhPJwWOo0yOljrb5w4SLw5CdHgmxdDy4i3Ul/FrJpc+2tjjXXk4JT1HsQxgdmX5Tf4GkzSHky3 X-Received: by 2002:a05:6402:34f:: with SMTP id r15mr6869035edw.80.1638864923298; Tue, 07 Dec 2021 00:15:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1638864923; cv=none; d=google.com; s=arc-20160816; b=qSCC7F/6oifnLcnx6Z8/NdEej24msEoL1dcYH5kdUJ/hdh+63kaxW2Siwhle1byasw eoWqgkmgOt1j8+/j7YpUUKRSMuR5GEcs/GfLDLzN1smmrqakUJ2uyWsB21ypPPc7FI6l hsmNUK9UtaiwIwyz38jqC5/5y5T4PLRpqA9KoE8M8886tQNmpJoKlgA3LqXiSBCcWRNC tF3wLQ9u1gT0gsqHP3XI60xEm3V+SyPEh9yX5IQ4EeQU7q1BxNWO+2GnC/spb+Zod7Tg ERlv33Hg6D5+iSIrfFtREAdkyJkYoar94EXFqNxMD9aOx9zTWycrKUOUrTIdpHWCNwgw AScQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:delivered-to; bh=qExwr6dJLo8aotOcK7sGHTk4mQ3vqZNadaqSlhgh1zU=; b=X28TpoaBkx131IbDj7eDWRk67ChoaPA08kyjQT+l4THekPlTJRVzTNC8fhMtfL9j2j Naj99KQWeGkmkWBlspS5J8VDIFVi/eEqCJ3U/P8KJNk9hbfbkBxgFoVgneN0nZB7req4 Ey1OYsRjBkCGlAUnzhOeiFS2ZnMnPADiWGjuUdnSMUhVnm/QdsL4IxdhA9zsPHQZAmKv 40YLoWGVzK/Kw9N1p7JuRV2p75gFnfiBtMajY0BBg/w6j326gWc9RfqA+/yevKlWVV+4 HcVuGkEtHZXzVjngwO91gQ7B/cjL7TkyNhVfciHQAUiCh1+rHDvU++GuqCNdGC42GK3q jMyA== ARC-Authentication-Results: i=1; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ga32si25298226ejc.769.2021.12.07.00.15.22; Tue, 07 Dec 2021 00:15:23 -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; 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 4A89768AB42; Tue, 7 Dec 2021 10:15:19 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from vie01a-dmta-pe05-2.mx.upcmail.net (vie01a-dmta-pe05-2.mx.upcmail.net [84.116.36.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E4B4B68980E for ; Tue, 7 Dec 2021 10:15:12 +0200 (EET) Received: from [172.31.216.235] (helo=vie01a-pemc-psmtp-pe12.mail.upcmail.net) by vie01a-dmta-pe05.mx.upcmail.net with esmtp (Exim 4.92) (envelope-from ) id 1muVd2-0064EX-0G for ffmpeg-devel@ffmpeg.org; Tue, 07 Dec 2021 09:15:12 +0100 Received: from localhost ([213.47.68.29]) by vie01a-pemc-psmtp-pe12.mail.upcmail.net with ESMTP id uVc4mdstdSgGFuVc4mFB7v; Tue, 07 Dec 2021 09:14:12 +0100 X-Env-Mailfrom: michael@niedermayer.cc X-Env-Rcptto: ffmpeg-devel@ffmpeg.org X-SourceIP: 213.47.68.29 X-CNFS-Analysis: v=2.3 cv=f8Q2+96M c=1 sm=1 tr=0 a=2hcxjKEKjp0CzLx6oWAm4g==:117 a=2hcxjKEKjp0CzLx6oWAm4g==:17 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=GEAsPZ9sns4A:10 a=ZZnuYtJkoWoA:10 a=5xz6paH818J9yWObQ50A:9 From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Tue, 7 Dec 2021 09:14:09 +0100 Message-Id: <20211207081411.16442-2-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211207081411.16442-1-michael@niedermayer.cc> References: <20211207081411.16442-1-michael@niedermayer.cc> X-CMAE-Envelope: MS4wfF3Xz3d++ioWzwoj8BFzkzLsasfOcisDZR9SeABHvV4/P8LLzTGp+3et1Kpc5A5+z3Ds9WY+90fYsDvlaeAYKqH8pqhMkHiUvyZN8PeN5OVuaaZ1APMn qgJGS12RCe2XMzVJlO4ocDrJCjeLiuqFE2Ifg54VLD5Ayd8p/ADkpj1j Subject: [FFmpeg-devel] [PATCH 2/4] avformat/4xm: Check for duplicate track ids 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 1pF4+iByMhK1 Signed-off-by: Michael Niedermayer --- libavformat/4xm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/4xm.c b/libavformat/4xm.c index 848991af5b8..e3075600142 100644 --- a/libavformat/4xm.c +++ b/libavformat/4xm.c @@ -149,6 +149,9 @@ static int parse_strk(AVFormatContext *s, memset(&fourxm->tracks[fourxm->track_count], 0, sizeof(AudioTrack) * (track + 1 - fourxm->track_count)); fourxm->track_count = track + 1; + } else { + if (fourxm->tracks[track].bits) + return AVERROR_INVALIDDATA; } fourxm->tracks[track].adpcm = AV_RL32(buf + 12); fourxm->tracks[track].channels = AV_RL32(buf + 36); From patchwork Tue Dec 7 08:14:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 32093 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp5920854iog; Tue, 7 Dec 2021 00:15:51 -0800 (PST) X-Google-Smtp-Source: ABdhPJwcoJoK8WwrYZQa1UU33FXoYY8kgwLeoHjKuGIjSWIQoo6KPJReN2y+/aRnW4DCyeOuLHqD X-Received: by 2002:a17:906:7109:: with SMTP id x9mr51728914ejj.559.1638864951134; Tue, 07 Dec 2021 00:15:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1638864951; cv=none; d=google.com; s=arc-20160816; b=LSM5VcWTw72H5w8PYPHgy1S3nZV6OhRsOXar9uAbz++BmEm41f8Wf1iszRywiOip4/ 7eajv1wY9EJEcVBsovZB2b+StfcqaBsATpgkvyN2PbttWNiJMTmfkZ17c/e3A+BsV0rH oZw9zHiod1njKGtWpn9ql6KXLN1vfTfqO2vggW6fGNt9CQvecWqz8aitjeqGCXHVgqb9 5KwP4v4igJMv0QTOYoc2Pp9GGbwUwyZAyN+DlSdmraInRWzqTSR1Lt40o8sHCuQpw41I 9NLHWxVlVtdfx8CWUsbT4v0gqJx2tZyqk73VnkSiOHoRyi1D/X55PxqJ9XqjtegxOkWX kYJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:delivered-to; bh=/7ejqt0wAwwlaA6XxKOEkxLCBVwjTP4lK6Kr/+/bJ/g=; b=BX3KBRBHv0wKsOqEH7w0nBV/w5tbVwFwMzMCMJr5vLON8teLnsWjjVf59HFY9REda9 w9aSBBfcZywPolMR8yG+jfAT9lGfR/Epadqb8BiyZt6AdqDEjkGY/j3tyhnHX5tv4yGU FbivCeYKmcpOl1F3p+ut1SHL97tE4OR2Xzp9qYYtVzKaZc8hJ/gQejBiGPlHSk4Zh7fL Uhr1d7yHhZitjptehzqKwOF9pmll1DTJwYcF5U/8tYLcCfLBnjNzxhk5WvzqhT48yPLG +KVL62b4LIFxLVJcwQ9b9zh2oetvO/TXxh/t1FAZ4V9+ZHlpIjOJ3sKHKiQnFuGWAee5 YR8Q== ARC-Authentication-Results: i=1; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id r3si22061938edq.242.2021.12.07.00.15.50; Tue, 07 Dec 2021 00:15:51 -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; 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 2C9EA68AD5F; Tue, 7 Dec 2021 10:15:22 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from vie01a-dmta-pe03-2.mx.upcmail.net (vie01a-dmta-pe03-2.mx.upcmail.net [62.179.121.161]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C298F68A54D for ; Tue, 7 Dec 2021 10:15:13 +0200 (EET) Received: from [172.31.216.235] (helo=vie01a-pemc-psmtp-pe12.mail.upcmail.net) by vie01a-dmta-pe03.mx.upcmail.net with esmtp (Exim 4.92) (envelope-from ) id 1muVd3-000Xhz-0K for ffmpeg-devel@ffmpeg.org; Tue, 07 Dec 2021 09:15:13 +0100 Received: from localhost ([213.47.68.29]) by vie01a-pemc-psmtp-pe12.mail.upcmail.net with ESMTP id uVc4mdsuiSgGFuVc4mFB8L; Tue, 07 Dec 2021 09:14:13 +0100 X-Env-Mailfrom: michael@niedermayer.cc X-Env-Rcptto: ffmpeg-devel@ffmpeg.org X-SourceIP: 213.47.68.29 X-CNFS-Analysis: v=2.3 cv=f8Q2+96M c=1 sm=1 tr=0 a=2hcxjKEKjp0CzLx6oWAm4g==:117 a=2hcxjKEKjp0CzLx6oWAm4g==:17 a=tmNr3_pU3QajR3og:21 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=GEAsPZ9sns4A:10 a=ZZnuYtJkoWoA:10 a=NEAV23lmAAAA:8 a=1RWdHWJ_AAAA:8 a=tJSY0DGyWPDn_kbvvTsA:9 a=7CZ_-rfw-psA:10 a=QyQtT3pqVO38aunEuior:22 a=tqavtLjfuPS5_DfqQoZn:22 From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Tue, 7 Dec 2021 09:14:10 +0100 Message-Id: <20211207081411.16442-3-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211207081411.16442-1-michael@niedermayer.cc> References: <20211207081411.16442-1-michael@niedermayer.cc> X-CMAE-Envelope: MS4wfP8NW1mlv/LtT6ItyJ9DtQSCNxNKUEhHVZSuXxzGi+EjJIyzWpxNjusyDI1YsoT3mG3BfMaIt/icSbb1lmcAxf1iY/VAN+xvcdkDFV8DcpiU2T4eJVk3 0EgAErxpAN5aKxCMcGex4jm3Bm/HQJ0Ic/oVaG2nSaZCFP0EywYDk02k Subject: [FFmpeg-devel] [PATCH 3/4] avformat/vivo: Do not use the general expression evaluator for parsing a floating point value 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: aoSSm/+Eqdj7 Fixes: Timeout Fixes: 41564/clusterfuzz-testcase-minimized-ffmpeg_dem_VIVO_fuzzer-6309014024093696 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer --- libavformat/vivo.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libavformat/vivo.c b/libavformat/vivo.c index b2904cd25a7..6447ec7ee84 100644 --- a/libavformat/vivo.c +++ b/libavformat/vivo.c @@ -26,6 +26,7 @@ * @sa http://wiki.multimedia.cx/index.php?title=Vivo */ +#include "libavutil/avstring.h" #include "libavutil/parseutils.h" #include "avformat.h" #include "internal.h" @@ -206,11 +207,12 @@ static int vivo_read_header(AVFormatContext *s) return AVERROR_INVALIDDATA; value_used = 1; } else if (!strcmp(key, "FPS")) { - AVRational tmp; + double d; + if (av_sscanf(value, "%f", &d) != 1) + return AVERROR_INVALIDDATA; value_used = 1; - if (!av_parse_ratio(&tmp, value, 10000, AV_LOG_WARNING, s)) - fps = av_inv_q(tmp); + fps = av_inv_q(av_d2q(d, 10000)); } if (!value_used) From patchwork Tue Dec 7 08:14:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 32094 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp5920699iog; Tue, 7 Dec 2021 00:15:41 -0800 (PST) X-Google-Smtp-Source: ABdhPJxAyC+M5bImn+gqRIZE2/HXpxyp+vbbQJ9xF/WX9CCqZN30134abUqU5/VrjpTqFZuIg8pg X-Received: by 2002:a17:907:3e96:: with SMTP id hs22mr51823506ejc.139.1638864941740; Tue, 07 Dec 2021 00:15:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1638864941; cv=none; d=google.com; s=arc-20160816; b=g0ZdLU0Uk+xa2ifzQ/bfVTHwViVEUv/2f443PJ615yc1+h6uCgJHgcX99HIKs7iJPe THGyr1qI5cxBJHeHmvaNK07uU5QM4R+ahf1MCVzf6AC4GzjrVUSxZdEi701c63wzfY4Q sn1ijZjXFuGbeYWtniYBt3kI/tn0+nMcCiVbv2sJAnoR1z8EJGN3wnkvxwZnnAw7zaLw nk9D1EYsMr6T/xqTL5O0QwAXHZ2paD0d7W1BRYhs2MFXYwxE8m1kDox+skBfEv0eTzS2 AVOCAwh5FPrId3U9IZsZcZAs41fg16kEW1BOPdbsF/4gRAvxZomWXc56NiHZBr44OE7Q dSWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:delivered-to; bh=IHk+efKgl4HTKmGWeD8rUWEH2ak+Oyp+GLqUUorlUUI=; b=oAVlEoSd8t6hwpcNefF6hKZjI9f/Cf2YHfrV25QOKxPHSTBWGhg33m2XskxPbqH1ul wj+ZbRqEF/vfr3iE2lpsirI+jbkDZCNSdQN/VvCNycY944FDBIjXwTeFD/LVRXcQOCA8 X8d1xNn0FDQqqjTjGwIqyXvcy63PjGNbBlheJjhn7anowOXj4cEFX+rj/qJQyJ0WpSyi ly6r9uJgmCDcW+ev96h2bK/Op1DvSsJAo7LmoB4XWi1icq2Xgvczn9mWgzh7rqjzCOKR NxxMWIXL+GX+c97NhtpOpnnUvbhtEwupkM5AoCh5l/BVTmHWB7Fh58U4YTExofe1dXg8 kUVQ== ARC-Authentication-Results: i=1; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id n19si22146068edv.388.2021.12.07.00.15.41; Tue, 07 Dec 2021 00:15:41 -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; 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 412E968AD0A; Tue, 7 Dec 2021 10:15:21 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from vie01a-dmta-pe04-2.mx.upcmail.net (vie01a-dmta-pe04-2.mx.upcmail.net [62.179.121.164]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C0C9F6808B2 for ; Tue, 7 Dec 2021 10:15:13 +0200 (EET) Received: from [172.31.216.235] (helo=vie01a-pemc-psmtp-pe12.mail.upcmail.net) by vie01a-dmta-pe04.mx.upcmail.net with esmtp (Exim 4.92) (envelope-from ) id 1muVd3-00Cxjv-0K for ffmpeg-devel@ffmpeg.org; Tue, 07 Dec 2021 09:15:13 +0100 Received: from localhost ([213.47.68.29]) by vie01a-pemc-psmtp-pe12.mail.upcmail.net with ESMTP id uVc5mdsvkSgGFuVc5mFB8g; Tue, 07 Dec 2021 09:14:13 +0100 X-Env-Mailfrom: michael@niedermayer.cc X-Env-Rcptto: ffmpeg-devel@ffmpeg.org X-SourceIP: 213.47.68.29 X-CNFS-Analysis: v=2.3 cv=f8Q2+96M c=1 sm=1 tr=0 a=2hcxjKEKjp0CzLx6oWAm4g==:117 a=2hcxjKEKjp0CzLx6oWAm4g==:17 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=GEAsPZ9sns4A:10 a=ZZnuYtJkoWoA:10 a=-7hgwuxZ47nPnsXd9h0A:9 From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Tue, 7 Dec 2021 09:14:11 +0100 Message-Id: <20211207081411.16442-4-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211207081411.16442-1-michael@niedermayer.cc> References: <20211207081411.16442-1-michael@niedermayer.cc> X-CMAE-Envelope: MS4wfP8NW1mlv/LtT6ItyJ9DtQSCNxNKUEhHVZSuXxzGi+EjJIyzWpxNjusyDI1YsoT3mG3BfMaIt/icSbb1lmcAxf1iY/VAN+xvcdkDFV8DcpiU2T4eJVk3 0EgAErxpAN5aKxCMcGex4jm3Bm/HQJ0Ic/oVaG2nSaZCFP0EywYDk02k Subject: [FFmpeg-devel] [PATCH 4/4] avformat/vivo: Favor setting fps from explicit fractions 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: OeUqpDYbzczn Signed-off-by: Michael Niedermayer --- libavformat/vivo.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavformat/vivo.c b/libavformat/vivo.c index 6447ec7ee84..2a08e1df033 100644 --- a/libavformat/vivo.c +++ b/libavformat/vivo.c @@ -121,7 +121,7 @@ static int vivo_get_packet_header(AVFormatContext *s) static int vivo_read_header(AVFormatContext *s) { VivoContext *vivo = s->priv_data; - AVRational fps = { 1, 25}; + AVRational fps = { 0 }; AVStream *ast, *vst; unsigned char *line, *line_end, *key, *value; long value_int; @@ -212,13 +212,16 @@ static int vivo_read_header(AVFormatContext *s) return AVERROR_INVALIDDATA; value_used = 1; - fps = av_inv_q(av_d2q(d, 10000)); + if (!fps.num && !fps.den) + fps = av_inv_q(av_d2q(d, 10000)); } if (!value_used) av_dict_set(&s->metadata, key, value, 0); } } + if (!fps.num || !fps.den) + fps = (AVRational){ 1, 25 }; avpriv_set_pts_info(ast, 64, 1, ast->codecpar->sample_rate); avpriv_set_pts_info(vst, 64, fps.num, fps.den);