From patchwork Thu Sep 13 16:26:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 10319 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:12c4:0:0:0:0:0 with SMTP id 65-v6csp734163jap; Thu, 13 Sep 2018 09:27:17 -0700 (PDT) X-Google-Smtp-Source: ANB0VdZufV7HPUuJdbhczJNpi96TnwBItdc+ytSrs8OlfEkMAAiILB07xJRstGLTl1sRlSHjvwE8 X-Received: by 2002:a5d:4684:: with SMTP id u4-v6mr6690657wrq.76.1536856037295; Thu, 13 Sep 2018 09:27:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536856037; cv=none; d=google.com; s=arc-20160816; b=DOL2pJrD17qQGRjKhUu148oel7Gl9OaJaidaL29Uz1ZgGlV3jpqmtq1jhJqywc67g9 CCcNoWhMKQ4mUN9nEpx+B3CLqbENoDCtLKvlyuJnbWxrjUoJ1P3pjxT6YnTcxFhDbdvq z7pMAVt4V9z2mNW6UyseRUi3hJU6LaPlnqcTfzKEPNdT0K5Y6Y1E46uRIfzpGNjC8vEm Vf6r+JvxQYskE+FJdbfk5kYVFlluv66bF49Ce0eg7gxzbl3KgMpqTVBmtr9awAC8s4n0 jegulz9ImqRQqmbD6nFyOsgD1YEo0UeIXnkCcGgK6WqUGFwSzc3iDRfwrTGVNnTHJEiN 4H3Q== 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=FWpBEdy/mzhfs3UZFXcminF4SfXdcdffUJ9oxbx6n5A=; b=O7w94Uq28sDnyMMEkQ6rw+22SdqcDEAnUgb4RVthAqG74cEf3Tm/Fx1hDrJtxnnLDE 5fXqHlmU1u4BhBGs61zAsxBRTMi2NeXjI3SaWHUt0xaP9j2eVvfQYPe+KNw7N9NmgW8y x/GSdjLra1Y/Da2kNTtVj47ZYUe45JR1iEFejzXTRcRp2mN9yvFBZiPwUbz6Tqmqk5hv TE4PjthuGeDcdqoqRSAyBH3944HGII1SfyY3LCLT0yElA6dsJ2TuQIVj1WOE0Vv5JGOU eNGh+FStsxEfX3+00uyhzh1NrPzGSwy2vUvLW5GML0Oy2y0M0Dl9uPz9GdihVh+SiNdX tHrw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=VCmuycYX; 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 w83-v6si4081560wmb.82.2018.09.13.09.27.16; Thu, 13 Sep 2018 09:27:17 -0700 (PDT) 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=20161025 header.b=VCmuycYX; 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 4391268A296; Thu, 13 Sep 2018 19:27:04 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qk1-f181.google.com (mail-qk1-f181.google.com [209.85.222.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B73CA68A034 for ; Thu, 13 Sep 2018 19:26:57 +0300 (EEST) Received: by mail-qk1-f181.google.com with SMTP id f62-v6so3531646qke.2 for ; Thu, 13 Sep 2018 09:27:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=rttFnlQ/Sv4W7Hhdc6VHyR6BqoSt+nzxy5wENzHF4Ss=; b=VCmuycYX0iOqHooMi9zK3xKRRGB0gGH+ikKH4Igzq2n8I3TDQsBe0WQWFZjOA4uuF1 FRI7s/+Dk4W9aKJp8oMCNC357kmyALfnte4LZXDs3/5OerR5ETmrU9Tv1l9Ch07WdR7n Qcdd/QKKor6Q1NUJ8EXlwaq4u8CDj7APs5enmfScqqkSsPPLnqTl7Ixn1WoX71u3G9Bg OfgEBjsaInzdPAhJM4V/y9ref+XZk9wl3GH/hobhR7OueoixT9E9Mm5jrlHTBQHy7SFp nbEO/1RQKJx/ImmBD1uqOj+WS7lr9lREeTta8B35nC5JP0kgCnvGR/BJEhWgruErUi0Y N0QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=rttFnlQ/Sv4W7Hhdc6VHyR6BqoSt+nzxy5wENzHF4Ss=; b=MqgxuxVy9KQ1cx9fk3A3mJ1sQNlkWRjUgD+BbZzuQd4safPdK8d51/DH1VmvLhSIPz yi/RravI4+E3UhunJEtSCNUaItJ/9qYWKWGtN5NKNsxQiXq/oJa5OFpLOZvjAiVYti9p IWkOUpXGDS3XI0tulJsMIn7h0HCPcEefvo474JE3p/ym+2xustSdibNrmgtEUown5QG4 t664QedJoEeSMT3bGXINhhjXST6+z7WNwMIOzK9ypq7SEl0MgSs1yGv4ZG6UbWun6uMz A+9VMyxzBnU+sjPA0m15sgwpVVw5eSYJG43VyYixhtpkrdfDC2WAs+STMtUUAZOfg2zr sRtg== X-Gm-Message-State: APzg51DCHwLCpyzPSqDZcCD7IkHDr3o6gtF/FsCy0478JRTpgB6s6Z4C HiowxfvaqLn5snjnc+DUy3Kp1kMt X-Received: by 2002:a37:9cd4:: with SMTP id f203-v6mr5545804qke.357.1536856026874; Thu, 13 Sep 2018 09:27:06 -0700 (PDT) Received: from localhost.localdomain ([181.231.186.237]) by smtp.gmail.com with ESMTPSA id r20-v6sm2851747qtc.81.2018.09.13.09.27.05 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Sep 2018 09:27:06 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 13 Sep 2018 13:26:51 -0300 Message-Id: <20180913162651.11916-1-jamrial@gmail.com> X-Mailer: git-send-email 2.19.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/libaom: fix setting amount of threads 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" The libaom doxy says that a value of 0 for the threads fields is equivalent to a value of 1, whereas for avctx->thread_count it means the maximum amount of threads possible for the host system. Use av_cpu_count() to get the correct thread count when auto threads is requested. Signed-off-by: James Almer --- libavcodec/libaomdec.c | 2 +- libavcodec/libaomenc.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/libaomdec.c b/libavcodec/libaomdec.c index 6a2de6d47a..2530c9f76b 100644 --- a/libavcodec/libaomdec.c +++ b/libavcodec/libaomdec.c @@ -43,7 +43,7 @@ static av_cold int aom_init(AVCodecContext *avctx, AV1DecodeContext *ctx = avctx->priv_data; struct aom_codec_dec_cfg deccfg = { /* token partitions+1 would be a decent choice */ - .threads = FFMIN(avctx->thread_count, 16) + .threads = FFMIN(avctx->thread_count ? avctx->thread_count : av_cpu_count(), 16) }; av_log(avctx, AV_LOG_INFO, "%s\n", aom_codec_version_str()); diff --git a/libavcodec/libaomenc.c b/libavcodec/libaomenc.c index bbf4cf8b64..6a79d9b873 100644 --- a/libavcodec/libaomenc.c +++ b/libavcodec/libaomenc.c @@ -319,7 +319,7 @@ static av_cold int aom_init(AVCodecContext *avctx, enccfg.g_h = avctx->height; enccfg.g_timebase.num = avctx->time_base.num; enccfg.g_timebase.den = avctx->time_base.den; - enccfg.g_threads = avctx->thread_count; + enccfg.g_threads = avctx->thread_count ? avctx->thread_count : av_cpu_count(); if (ctx->lag_in_frames >= 0) enccfg.g_lag_in_frames = ctx->lag_in_frames;