From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 620EB4E2DE for ; Mon, 19 Jan 2026 04:22:17 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'YlzvOZ73dEtS1A1o41DvJXbWwG7CHqGQ0sfO33UVc6c=', expected b'fJ/M577uPGCUiL23Xe/L6T2PdzoaZSyT0CmEaUM2SRo=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1768796528; h=mime-version : to : date : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=YlzvOZ73dEtS1A1o41DvJXbWwG7CHqGQ0sfO33UVc6c=; b=uv+Ehudjoof3Pby8KWvDJLRV4wkDq6QTms7GdQMRCrCrv4uf2AnHV+QMXPxivOzg4/naR d/sTQd5rRzvTmkqEgpk5HcPG8+a6DKmDXnTGfSA7AGRax6neC4pymITQnYnPP9VophgSpYp EJXkHE5dovB3CaPrbxtALlUjzRQ+kTaEf0vjJckFsgX6+t2Bx6SamlAr/LOGkkAwsOkNpSr ka0cJPXwkLm+lxbMbJ21+DqEfLXumdRq/v5sGTk5+CH/Q2sdl10UXPVEvU1NWhfF2RB3kQu Z2oPWLCh0FlIeX6UCtWzS4L0fG7xUT/7KilIli4Si6geqAbvG5wRabsZPwvQ== Received: from [172.20.0.4] (unknown [172.20.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 6DFFD690E7E; Mon, 19 Jan 2026 06:22:08 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1768796513; b=oU0yk7O/a3fmrhsfHowI6zliZcthFj4FWZo+sPq3fok/idneYM6vjd2Pzofu4DJOjrA8W wd1+TegeQtkP+2cg/JWfBehZYDpzvuHtK/QuiWcNzlWGwiJjVXNgLILDfQFbS2kj0xxp+Lo NiaU1O/eke6bbt8e3984kEdU2Ay0574jkS6m9IgbMTL+72rcB8ccFjetKjH3Km2hnI0Jn7L 6hph04dUxoYbrnnin40jfr71Jx/7m2AJyePTmRwwfKvNeSJdcPp4mh57vsbEnSKDd3Sp8Rp 2wkUZlyK2wSxA1WviQoFleccPa0BqfdguCARgiHzX5fa80e9W4DeQmDGeHXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1768796513; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=EjFFZFlTo0Uzy+wACUs4ShWHl7KmMhc8pOdAB43P5ks=; b=OGyCDggcUa0ZbIyc08P5tJ6ak2YaDF9vTSKiYZ4rLvabGt7GT8OwuDAor8HEHAG4WQmQn hnchuGq7Lsbder/HwluSu6d6YKfyyc0zUxsi9zZmsb4xJSdHSa87ewQC6sOGBpVVo2SaBRe Fv3mJrOVPchFCIs69g9zwK8BkzNal7Y0qAeZTa6pDlXc4iTTxRz+699X/GycXBb0dMSF+Cm nTHJBkaVAettGLOE9AzAROfTq0sdjxKur82tqmRKBw2dPAUG48VB7DzxmIP2EbncP3Itrqj v1EuhnU+IKbeWyU24tgo12lIoaNybv1JMtT/QdhGwfUjB0tZgZbi5+PHcNkQ== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=pass header.from=ffmpeg.org policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=ffmpeg.org policy.dmarc=quarantine DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1768796505; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=fJ/M577uPGCUiL23Xe/L6T2PdzoaZSyT0CmEaUM2SRo=; b=RpUxPs/R97RLqAdZP3EYNvf6qYqHlYsxjaPkfSrGflzzi4I814Pr2SKhK5lHC64fyQhSU OlZeHIgcRZmIpgp9/emUQozE/iZ4kn/q2JkuCAOr0IZ2Z1YdyOtsOEdVo5xTeaWdaEzppln /VXILkhsGMefdzewziZifiBjNl5lG5vl8/szk8EoMboV9UXat9K6OeBEXBM/6Su1YMh3I2e B/C8OWqwRAgbDsMlwYbHU+p7Dtsc2tzBgn+EAu1/3y5kBOf6HErcWJxziINVSxeopLwrXwt 3fbAOr8Jgteg4sVPrUGyJ8vPBIUAb62Oqav1134x8BUn16a5+PdE7JyWzQyw== Received: from 69dab402ede7 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id C28E768F0AC for ; Mon, 19 Jan 2026 06:21:45 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Mon, 19 Jan 2026 04:21:45 -0000 Message-ID: <176879650591.25.13669090667799477890@4457048688e7> Message-ID-Hash: WI7V3KZYOKJ53OGNPEPGO4X6XEHKUQI7 X-Message-ID-Hash: WI7V3KZYOKJ53OGNPEPGO4X6XEHKUQI7 X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PR] avutil/mem: Add av_malloc_with_paddingz() (PR #21509) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: michaelni via ffmpeg-devel Cc: michaelni Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #21509 opened by michaelni URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21509 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21509.patch Add a av_malloc() that adds padding like AV_INPUT_BUFFER_PADDING_SIZE and clears it. This is a operation we commonly use so this function should simplify many cases Signed-off-by: Michael Niedermayer >>From cc424b2a5568ee35a3435ff58a84d2a18c1c6843 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Mon, 19 Jan 2026 05:15:23 +0100 Subject: [PATCH] avutil/mem: Add av_malloc_with_paddingz() Add a av_malloc() that adds padding like AV_INPUT_BUFFER_PADDING_SIZE and clears it. This is a operation we commonly use so this function should simplify many cases Signed-off-by: Michael Niedermayer --- libavutil/mem.c | 10 ++++++++++ libavutil/mem.h | 13 +++++++++++++ 2 files changed, 23 insertions(+) diff --git a/libavutil/mem.c b/libavutil/mem.c index b205d3fb25..aac7ef4d12 100644 --- a/libavutil/mem.c +++ b/libavutil/mem.c @@ -261,6 +261,16 @@ void *av_mallocz(size_t size) return ptr; } +void *av_malloc_with_paddingz(size_t size, size_t padding) +{ + if (size > SIZE_MAX - padding) + return NULL; + uint8_t *p = av_malloc(size + padding); + if(p) + memset(p + size, 0, padding); + return p; +} + void *av_calloc(size_t nmemb, size_t size) { size_t result; diff --git a/libavutil/mem.h b/libavutil/mem.h index ab7648ac57..6a4c144f18 100644 --- a/libavutil/mem.h +++ b/libavutil/mem.h @@ -129,6 +129,19 @@ void *av_malloc(size_t size) av_malloc_attrib av_alloc_size(1); */ void *av_mallocz(size_t size) av_malloc_attrib av_alloc_size(1); +/** + * Allocate a memory block with alignment suitable for all memory accesses + * (including vectors if available on the CPU) + * + * An additional padding will be allocated and cleared. + * + * @param size Size in bytes for the memory block to be allocated + * @param padding Size in bytes of padding allocated and zeroed after size. + * @return Pointer to the allocated block, or `NULL` if it cannot be allocated + * @see av_malloc() + */ +void *av_malloc_with_paddingz(size_t size, size_t padding) av_malloc_attrib av_alloc_size(1); + /** * Allocate a memory block for an array with av_malloc(). * -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org