From patchwork Sat Nov 19 21:35:14 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rick Kern X-Patchwork-Id: 34860 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:999a:b0:a4:2148:650a with SMTP id ve26csp1243383pzb; Sat, 19 Nov 2022 13:35:32 -0800 (PST) X-Google-Smtp-Source: AA0mqf4FrO/76BdIn5EtZbsKgwHXPjlcm1/vPmZAVPQ/a84CWkqta0f1B3+p5GIzuxuLLfzrUkpK X-Received: by 2002:a17:906:710a:b0:7ae:3684:84b3 with SMTP id x10-20020a170906710a00b007ae368484b3mr1856734ejj.652.1668893732348; Sat, 19 Nov 2022 13:35:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668893732; cv=none; d=google.com; s=arc-20160816; b=WS3FJdrT+tH9TSjkfOCgwD6QjcNsA5X6PMOiTPg8qV4844CckUtdsr+D1EHq6VAVNL 6JOzf2nfpbPH5c6j+mUTrO9Y1djAMVXCm9hIzLIGsptBPAgwZgD5ithVlsYFXCq+A9So FOzA0K9bweAhthUVmEgWHHCSrDQWOsbuTmPsLoyJycIsh99YV2NlGZ/RiMuzsI+Xu1ns NZhKHhGRTFsk4ntW/haPl//Fp+TtauR1kiVBoRVzs2UcdWIFgWNwRWM8ev7twH4NdZ4q lKLKMjWEnAs6lp3FO2MaOXtZD+IozgKE8DTStG1Y6js2T+U9vo59uOxSIm/SNbZKs92v IMpA== 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=0nEFaLRkVvSSLQgTu0SQQB1JvQS6ad9q6iAk8oXkksk=; b=gkFhjhZKNn9c9XgYdanYi0bRWUCFJJLsGRGszdpWP1jI/6IbVCwMYD9s+YolIFiylu xFtKZ9UIdzfRe60Ot+4Uw8VRdCCgeF7mtkdeGhtdxmQBcSiU5TDdNCNRNmGnBsous0NF in9/bGYMzDXO76z6W6ferWHZ8/Vy4sFN8TaoydU+oEM57kYBkK+SkhbMvMMXgAr3S9rD fb8qFZE5DXcMFEGE0zofrpUaTlCYpHc7AzZXd9R7o3lcPtTpzl+0UynbaYR5Fd6ISk4Z eS82vhHqA6jgIb2NrEn7zmL8kQ7acwC+3zt7BEj/Khqb/0oitNUsZoPAlQHH15MXr4p4 jgYQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=RATPyUpK; 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 wz2-20020a170906fe4200b007aa784a3cb8si6588874ejb.687.2022.11.19.13.35.31; Sat, 19 Nov 2022 13:35: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; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=RATPyUpK; 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 D9B7F68B1F2; Sat, 19 Nov 2022 23:35:27 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qk1-f170.google.com (mail-qk1-f170.google.com [209.85.222.170]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A496B689C24 for ; Sat, 19 Nov 2022 23:35:20 +0200 (EET) Received: by mail-qk1-f170.google.com with SMTP id g10so5804418qkl.6 for ; Sat, 19 Nov 2022 13:35:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=EHbUQWsfOAWbHxGhKg+meIv+E0+SuJqvS6mcgWufjcs=; b=RATPyUpKivy/CMUm5GpOyqFGctuJ8oHSdliSm/fFvrRQcoSLDgZYHWOvOkeimxLqid TSHzRyoL+PWIyTcLpFhgMsyQcI6L9ElyfrXdGv772ildo6A5V7aQY7TN4cVPBIAZs88U JEjtYYY1TpurDLfLhOF0cYj6SvDsokQ6Tr4+ehykQbh+jlyCLHkWB3b3oZXbUgNF7tRs Rpiwb1D05iacn23pPJwOdlUOXJ7ZZf/NZ9abwA8EJaH5m94tBIWjjN2cyKCiQJNjLSgZ uGMrXj6UBTKkQlNDGQOeq5scsku923EoLmYXMNvJTuOBF3qB2KREWwVVp1khucgGNJmm bd2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=EHbUQWsfOAWbHxGhKg+meIv+E0+SuJqvS6mcgWufjcs=; b=6n2Ki+GcMkaVg4wfkKmEfC8X6IKwj8w0gSWNysV/SIIrBiBIqZci6jDBCnbiHluMhj bAaFAIa2X8YqvBOzfcD5MfhMUEHuyUIGEDoM5T9qvlVpZgchFXyTn+98rTpDXWUbaBr7 YjvSM/nRoDqoFsjFv/hg0LQpTE4c/C3GfY3EfoJBHwHlwJKUmpjQI6+34FXwV78T5uEQ YZ3Bxts5ryDqG/uHT811zGzSasGjjpm5UVMhrQE9l/WuhlRnjnm2or9HdauZWdjInVKD I7Pl33o4Dkze8dsGfp9zthAGnV2m+emtwSeM+QApB+cev37pquLDCTDSPTprze/MbOEJ EHRQ== X-Gm-Message-State: ANoB5pkolhYVaLy3BuDJw/pVnANHH2HozCCp7BNMTapBLcH0AwqtGLfO /lnMgyNp0dkSoE2MFdx1Z9rhrO273Lc= X-Received: by 2002:a05:620a:219c:b0:6fa:cbd7:6103 with SMTP id g28-20020a05620a219c00b006facbd76103mr2508496qka.235.1668893718718; Sat, 19 Nov 2022 13:35:18 -0800 (PST) Received: from localhost.localdomain ([50.201.95.250]) by smtp.gmail.com with ESMTPSA id w128-20020a379486000000b006cf19068261sm4954756qkd.116.2022.11.19.13.35.17 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 19 Nov 2022 13:35:18 -0800 (PST) From: Rick Kern To: ffmpeg-devel@ffmpeg.org Date: Sat, 19 Nov 2022 16:35:14 -0500 Message-Id: <20221119213516.45148-1-kernrj@gmail.com> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 0/2] lavc/videotoolbox: use objpool instead of allocating memory each frame 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: w09voPDO6qvN objpool was only being used in fftools, but it's useful in other components to reduce alloation time and memory fragmentation. This patch set moves objpool to libavutil, so it can be used by lavc/videotoolboxenc for data being passed from input frames to output packets. Rick Kern (2): fftools/objpool: move objpool to libavutil lavc/videotoolboxenc: use objectpool for encoder output information fftools/Makefile | 1 - fftools/ffmpeg_mux.c | 2 +- fftools/sync_queue.c | 2 +- fftools/thread_queue.c | 2 +- fftools/thread_queue.h | 2 +- libavcodec/videotoolboxenc.c | 80 ++++++++++++++++++++++++++++---- libavutil/Makefile | 2 + {fftools => libavutil}/objpool.c | 0 {fftools => libavutil}/objpool.h | 0 9 files changed, 77 insertions(+), 14 deletions(-) rename {fftools => libavutil}/objpool.c (100%) rename {fftools => libavutil}/objpool.h (100%)