From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 720634DA41 for ; Sat, 1 Mar 2025 13:52:17 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D9ACF68DE35; Sat, 1 Mar 2025 15:52:11 +0200 (EET) Received: from mail-ua1-f51.google.com (mail-ua1-f51.google.com [209.85.222.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 63F3C68DBB4 for ; Sat, 1 Mar 2025 15:52:05 +0200 (EET) Received: by mail-ua1-f51.google.com with SMTP id a1e0cc1a2514c-86712bc0508so1258922241.2 for ; Sat, 01 Mar 2025 05:52:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740837123; x=1741441923; darn=ffmpeg.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Hag+J3BNw/x38UcGjPq2BGMXpFMNhtjrmgr7a8oRyw8=; b=kYfW1xaK2H8eEg4c22sZPPMNuzuGiCdUsaKsOJ6TwHFHlfgQ2uW5tfhAXABhTMokX3 UdXXkfrRRLRt8y8NJjh03tCipRZmdeR6vzBthRk0IwPqIX1XR2WXPAiGFwwa96DLNaxO cNgQqhpXZ7YxIEEVO6RqjOy6ZF1tJW/EDIm48VIEMgbIjf/cXrX2MAvbfyI7g7gf4AQ1 kHcTlbACtYcTCqgewHzBPlCYE/2QYKVkEjKbLKBAwI4jA7gYf95nyiP8yJsCwREvMNPp oX7JwYvHhKGivYFN4XIXPYOZTbNqhueOiYOuc+uiEgVuiIIDldMPEVmpvnvgQc4+T6pC rSTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740837123; x=1741441923; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Hag+J3BNw/x38UcGjPq2BGMXpFMNhtjrmgr7a8oRyw8=; b=bdgCE7j5e/yXDong3h/paror4pbjjgRfoTtKjFQVdATNBQbKc1aFzveMix/g/kcQL4 AcfyuzVO1gc3wBtuACOaQfOqvHXrEb6Si7tB4UBm7UeDLnYnYksE6VkzhqdiXlGGO7Ix QWHARLTZj2ANgNUz0dL6MMqfYzpGZF5y67EFqqJHrNgN05yGpTJ5+/5TWZSc4aIcWvP7 rkLxcVjZVltiDQQWv9SeAtnsj/0Zx3HM+YVSCWHfTFYWw+55Y+AdYA85gXv6jE8W6UbJ BaNvX068TrSzUjhf19lnJ8SBdjQgC8fZ7NX1Z8m4ff0ZprZ6fMPNTt+PwYhR1gCpnfP5 mwgg== X-Gm-Message-State: AOJu0Yy+Vi1bly1DYkBcg85qu9nTKhVPYeEOfo/TDybCJNmhDRvATcRZ IAAGwuN2UKWuh9bFuuCvn4TN3DLmyJZpeS4fmuvuYHk9oDzuzfJd5u0XEuzT4YXLFYtE/GD+rBB vtttpDYNjIQV6xPhJSpX85nfgO6QdRq6fgOk= X-Gm-Gg: ASbGnctLsJQyBo2E4sTtNca0NizDHQ/PsGVgzWUzGT5BUbCyqpGQJ9p787P5BdwdHxv hSoWg5k4yxGl9Qw8jbYTiolsXlnST15RJ3akQdYqsWnd5CLmtlLUtbEP1Kg/omITDNX4jHEVQe6 raRDcHfmurtuPPZx+hh7sNjB+M X-Google-Smtp-Source: AGHT+IF7ReRkXzIk5RBoL7ccV+LxS4hDdHiAYBf1fZdwRhYHXcj39lpO87UcwXpsX+s5ti8vKxIgz/Vbb911Sql7iF0= X-Received: by 2002:a05:6102:6e89:b0:4c1:706f:92a1 with SMTP id ada2fe7eead31-4c1706f9540mr2915178137.5.1740837123198; Sat, 01 Mar 2025 05:52:03 -0800 (PST) MIME-Version: 1.0 From: Haris Date: Sat, 1 Mar 2025 15:51:52 +0200 X-Gm-Features: AQ5f1JoeOFfXN3BzmpOFC-iDYENxxhy_iVAkUJvUXZp4KzUQbVvMn4U2hjwaXQc Message-ID: To: ffmpeg-devel@ffmpeg.org Content-Type: multipart/mixed; boundary="000000000000575038062f483a1d" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] #7107 [PATCH] Fix seeking beyond file duration by returning an error when metadata is incorrect 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" Archived-At: List-Archive: List-Post: --000000000000575038062f483a1d Content-Type: text/plain; charset="UTF-8" Hi, If we try to extract audio from an .mp3 file starting from a point that is beyond its total duration with command: *./ffmpeg -ss 600 -i eye.mp3 -c:a libopus output.opus* We should hit this if statement in libavformat/seek.c: if (min_ts > ts || max_ts < ts) return -1; But if the file's metadata are corrupted then min_ts and max_ts will not be the correct ones. min_ts and max_ts take the values of the metadata durations of the file. By adding the following check, we make sure that we return an error even if the metadata is corrupted: if (ts > s->duration) { av_log(NULL, AV_LOG_ERROR, "Seek position (%d) is larger than file duration (%d). Exiting...\n", ts, s->duration); return AVERROR_INVALIDDATA; } This is my first patch submission. Please let me know if any modifications are needed. Thanks, bayesiandog --000000000000575038062f483a1d Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Fix-seeking-beyond-file-duration-by-returning-an-err.patch" Content-Disposition: attachment; filename="0001-Fix-seeking-beyond-file-duration-by-returning-an-err.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m7q9dzh00 RnJvbSBmNTg2ZTAzNmFiZDhhNzQ0ZWY4YjY1MDA3MWUyMmQ4NzNlMGNkYWNjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBiYXllc2lhbmRvZyA8bWVtb3J5dmVzdGlnZXNAZ21haWwuY29t PgpEYXRlOiBTYXQsIDEgTWFyIDIwMjUgMTU6NDU6NDIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBG aXggc2Vla2luZyBiZXlvbmQgZmlsZSBkdXJhdGlvbiBieSByZXR1cm5pbmcgYW4gZXJyb3Igd2hl bgogbWV0YWRhdGEgaXMgaW5jb3JyZWN0CgotLS0KIGxpYmF2Zm9ybWF0L3NlZWsuYyB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9saWJhdmZvcm1hdC9zZWVrLmMgYi9saWJhdmZvcm1hdC9zZWVrLmMKaW5kZXggOTUx OGYwZjQxYy4uOTBiMzc0YjMzMiAxMDA2NDQKLS0tIGEvbGliYXZmb3JtYXQvc2Vlay5jCisrKyBi L2xpYmF2Zm9ybWF0L3NlZWsuYwpAQCAtNjY4LDggKzY2OCw4IEBAIGludCBhdmZvcm1hdF9zZWVr X2ZpbGUoQVZGb3JtYXRDb250ZXh0ICpzLCBpbnQgc3RyZWFtX2luZGV4LCBpbnQ2NF90IG1pbl90 cywKICAgICBpbnQgcmV0OwogCiAgICAgaWYgKHRzID4gcy0+ZHVyYXRpb24pIHsKLSAgICAgICAg YXZfbG9nKE5VTEwsIEFWX0xPR19FUlJPUiwgIlNlZWsgcG9zaXRpb24gKCVkKSBpcyBsYXJnZXIg dGhhbiBmaWxlIGR1cmF0aW9uICglZCkuIEV4aXRpbmcuLi5cbiIsIHRzLCBzLT5kdXJhdGlvbik7 Ci0gICAgICAgIGV4aXQoMSk7CisgICAgICAgIGF2X2xvZyhOVUxMLCBBVl9MT0dfRVJST1IsICJT ZWVrIHBvc2l0aW9uICglbGxkKSBpcyBsYXJnZXIgdGhhbiBmaWxlIGR1cmF0aW9uICglbGxkKS4g Q2hlY2sgbWV0YWRhdGEuLi5cbiIsIHRzLCBzLT5kdXJhdGlvbik7CisgICAgICAgIHJldHVybiBB VkVSUk9SX0lOVkFMSUREQVRBOwogICAgIH0KICAgICAKICAgICBpZiAobWluX3RzID4gdHMgfHwg bWF4X3RzIDwgdHMpCi0tIAoyLjM5LjUKCg== --000000000000575038062f483a1d Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --000000000000575038062f483a1d--