From patchwork Fri Nov 17 22:52:30 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dale Curtis X-Patchwork-Id: 6147 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp1191208jah; Fri, 17 Nov 2017 14:53:01 -0800 (PST) X-Google-Smtp-Source: AGs4zMbju7gXhkvJe+LFl5cCSgdEerqtYh2qwkKgdBr4iYZjs+rPdDgl5N4oTw+FUXwp3Yrk4eUh X-Received: by 10.28.142.20 with SMTP id q20mr4928646wmd.37.1510959180991; Fri, 17 Nov 2017 14:53:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510959180; cv=none; d=google.com; s=arc-20160816; b=N0SF0JPJO/wI33i+AeAgIlUvfM8mSQLg7L/RO1V4VYk+1tH9N8xSs46gwojBJRQNuf LxqIOKf5XgMQ+7BkL2b3sE0xIGrIg6f63HAYITfFgglxUqfqedWUp6zBHzs6e8lb4Ulv Qrbw4vnIcq3/YsiO9IKvt1C6God6q7IeHDdZW3c8iE3EgW3T2s30818GmIcY0t+WGtnJ CDLWc7npSc8OAUrdTMS2JtWE/j1J0pkLPIAspXInOBoMGrtdfnXg+YAYFnV6FDGrUT1+ vpy4Q2pfDy9BOSGa9VIFZmxkiXqs45919LG1alEG3EgYs1nflCIqnBYEhQJAIXUlDaOT mNnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence:subject:to :message-id:date:from:mime-version:dkim-signature:dkim-signature :delivered-to:arc-authentication-results; bh=YPxV336XWbccrjK9y+bp9QPRh1fofNp1Dkby+s5mM10=; b=UBmcaUmByqhd+wLzdrgb/KbxGlhQXGT/Dha92gQwWXD91MGKaYydpT/NV1f2w1rZ5h ms274azGFfCJSU/qgc1vHIvmx9qUJJYqaNS2Pi2R4kwnL6eddIB3SS9wgY4j1EFyQDl3 zQzfpBJfJy5hXbeBhW+E2O07x4ZQVpUSidVu+jr+sFER56iUueNhfK31F1FVdi46+JYu lXbJsilz5BPtm2LcUPqbe03niM3GQGaeGhATbZ66KDGbEObLTSAZbql+fYaUVlWAO4mh BSVE0B8v0hnDEwE4rDtzJBBtjr2ilMsRZ2R+bcVEB3jU8dgFPDb/p7B1MXYwmMbde5a4 nD+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@google.com header.s=20161025 header.b=nSoiWa0R; dkim=neutral (body hash did not verify) header.i=@chromium.org header.s=google header.b=SDmR8apu; 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=chromium.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id q140si3182161wme.140.2017.11.17.14.53.00; Fri, 17 Nov 2017 14:53:00 -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=@google.com header.s=20161025 header.b=nSoiWa0R; dkim=neutral (body hash did not verify) header.i=@chromium.org header.s=google header.b=SDmR8apu; 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=chromium.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6C1356883D2; Sat, 18 Nov 2017 00:52:43 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm0-f50.google.com (mail-wm0-f50.google.com [74.125.82.50]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9B097680A24 for ; Sat, 18 Nov 2017 00:52:36 +0200 (EET) Received: by mail-wm0-f50.google.com with SMTP id y82so4904866wmg.1 for ; Fri, 17 Nov 2017 14:52:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:sender:from:date:message-id:subject:to; bh=ramXkc6B0iwIivDHP+Jf1k+x9mg7P/JEr8r4cYZAi7s=; b=nSoiWa0Ry2955knN9VE5c1oUtsJpX+cdg2Hx+FY9HtiqDCPhohDEn4eQ5T2whaELsV VHQh17J5tAM6luqcHo8Ti6UWkjrtZ1U3d7nrAcKtfNFJaHutGtkt3SSPm1U3uvc5JdyQ s+rQQVCoB6ZB/pSKw43hozsmz4Ey/WhBQeVbJHVn2+qVywSXWVGP0Seco0GHXwV8+bcB fgYOjBljA4U0EmSLbylIbNj68ZR0TfKeBS6dB7iAkWQqtBulSP03OibIPTninVx0Lov7 Rio2OpUh/OzYYar2wPw37CDs1FsiIyMQhNzVsKsdhK98E3M7cCiM/GsN+8gcMw1XYgkq GCCw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:from:date:message-id:subject:to; bh=ramXkc6B0iwIivDHP+Jf1k+x9mg7P/JEr8r4cYZAi7s=; b=SDmR8apuMjWyMXnyrbSQAQq6SSrlhCESefROsb+6gFdWA3G6u9X9noVPaA86kS3DJw mjK8f9ra++2GVebtrluw2LOGZXmd8mk69NokbSZVdAtOxHIUfsuzMKrpn1j4xxF45DL6 zBImOcMf9QiFjxG5W821UWK1Qq8kzXbXZrRaM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:from:date:message-id:subject :to; bh=ramXkc6B0iwIivDHP+Jf1k+x9mg7P/JEr8r4cYZAi7s=; b=fGpIlO+5h9n1oELZyFFBLcW+fITSZ/5D9enoWvGZLKnbrexnuAUIT+oF0m93GvEcH+ SIgxvszu5thqjQhTRPQOfVWMjh0+0CzrpJtGiM0SMRQDJVBrzeB4UUTTFz6Lh2jq00PM oBOfkePRCXsDusIFXzNRzQTP7dhD1ePsiSWu/udpwVr5e270G+9CyHETGtqMs4/jW7Ay 3Q9KvG5+YK2XyWRwTHyMFX8uTM38vTM3FpIhv/pO/2b7knMd+5OcQQ+jIh7XttZdqmVs 2jowcF3Z3H3CgontO2MvroHOyQrtrv8KaO9q9X32bkmz/Os/+UM765PLsXHY6ATBfJ8/ aOew== X-Gm-Message-State: AJaThX7dum/IQAhlkBsNz9MiVq7b8cHAQZmbkkcfSYfW8tpeEKEAU80o 5BwHqY4X3yLvu83SnCdnCeHPhnum8DjvvIazxndao1NuBcM= X-Received: by 10.28.151.14 with SMTP id z14mr5771020wmd.5.1510959171675; Fri, 17 Nov 2017 14:52:51 -0800 (PST) MIME-Version: 1.0 Received: by 10.28.161.4 with HTTP; Fri, 17 Nov 2017 14:52:30 -0800 (PST) From: Dale Curtis Date: Fri, 17 Nov 2017 14:52:30 -0800 X-Google-Sender-Auth: eBinpG6JMRcdZI7Sb2BvyRoCe2o Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.20 Subject: [FFmpeg-devel] [mpegaudio] Use ff_thread_once for fixed, float table init. X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" These tables are static so they should only be initialized once instead of on every call to ff_mpadsp_init(). Signed-off-by: Dale Curtis From 70ffbeb41f0432c72701f6147385e9aa47bf8419 Mon Sep 17 00:00:00 2001 From: Dale Curtis Date: Fri, 17 Nov 2017 14:51:09 -0800 Subject: [PATCH] [mpegaudio] Use ff_thread_once for fixed, float table init. These tables are static so they should only be initialized once instead of on every call to ff_mpadsp_init(). Signed-off-by: Dale Curtis --- libavcodec/mpegaudiodsp.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libavcodec/mpegaudiodsp.c b/libavcodec/mpegaudiodsp.c index a5d20df629..3cafca27bf 100644 --- a/libavcodec/mpegaudiodsp.c +++ b/libavcodec/mpegaudiodsp.c @@ -20,17 +20,21 @@ #include "config.h" #include "libavutil/attributes.h" +#include "libavutil/thread.h" #include "mpegaudiodsp.h" #include "dct.h" #include "dct32.h" +static AVOnce mpadsp_float_table_init = AV_ONCE_INIT; +static AVOnce mpadsp_fixed_table_init = AV_ONCE_INIT; + av_cold void ff_mpadsp_init(MPADSPContext *s) { DCTContext dct; ff_dct_init(&dct, 5, DCT_II); - ff_init_mpadsp_tabs_float(); - ff_init_mpadsp_tabs_fixed(); + ff_thread_once(&mpadsp_float_table_init, &ff_init_mpadsp_tabs_float); + ff_thread_once(&mpadsp_fixed_table_init, &ff_init_mpadsp_tabs_fixed); s->apply_window_float = ff_mpadsp_apply_window_float; s->apply_window_fixed = ff_mpadsp_apply_window_fixed; -- 2.15.0.448.gf294e3d99a-goog