From patchwork Mon Oct 16 09:13:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Evgeny Pavlov X-Patchwork-Id: 44272 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4b15:b0:15d:8365:d4b8 with SMTP id fp21csp2452318pzb; Mon, 16 Oct 2023 02:24:00 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFPISnXbSFxMluAf+Riv0wtMMj8vjRhOAVQcD3NDqHiJik+mE++hpM/OJZ9mOXx5M4IwwCB X-Received: by 2002:a17:907:7804:b0:9b0:552c:b36c with SMTP id la4-20020a170907780400b009b0552cb36cmr28543842ejc.21.1697448239811; Mon, 16 Oct 2023 02:23:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697448239; cv=none; d=google.com; s=arc-20160816; b=WEt3buETfqirmGOs+mndxG1vKyzHzOtkeo7LKUdKbkXO+t/2eDn4Re024NpriQeW8m ec9ynNhzy2TR2Xh2haTvNJ5G7BtnYBUobEfnJXLlNCW9Khv3X3IDfyElBeEUqFFhmW73 Y84PEs3fIL/YDx18nMEXwATsCkE0Gq+95NjDBDVrJ432Fvlc5e4HTk5a3RBoegpZX5KE Coc2daXmeiVW+rD/UL38MxcUhADEokY4v5KUC/bVJN26loM9uR66XsH08ak0nqw2/n+v QZwnuROBuBojasisvDuIu7EVCtkQCLwiMKGj6OSKyYdcu3sdSl2tQy1FezpFlALxuuzY hjeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc: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=ExwD9IKBDHFkLB+JxgrE4e/52I7sonheyxXr4cZGacE=; fh=l8BBgSaHK1qPkRTUMT3LasR23D+FgYCLMIPW5YpagSs=; b=eNdXzuUXHcaPlyVcp1IEIUkFdIh621Iu1+9815l1rw23hFdbmTPuvEMjF7UKikc+JZ fNKNQjLfVncd4fskZkiXGDLlFIA6N/MGjKNoNlosv4y86jR+peO5YBRh8PDUZIXPXap9 eN4rbe0z8pB1ZilZu6bG6/hfJkwgu5Gcmsd7tt8VOOvzDnuy+Uh1PFhtdOBnenKNGzSO jisIJ8LnoU+uhnAdej17pQ6aTxmOFFHqurg332tXmOaC/z/oKB1E7w/O2JUmz2Hw7yXg pq8VsvqvubqbHKJkNdWlUE/fFUVrTx399503vGsqKS+BkZn6kbyhPADknG8VR22nLVla 251Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=lmHWYntU; 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 d11-20020a170906040b00b009a1ac68daa3si2535145eja.160.2023.10.16.02.23.58; Mon, 16 Oct 2023 02:23:59 -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=20230601 header.b=lmHWYntU; 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 27F2968CA21; Mon, 16 Oct 2023 12:23:55 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2F44A68CA21 for ; Mon, 16 Oct 2023 12:23:48 +0300 (EEST) Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-32d9effe314so2242134f8f.3 for ; Mon, 16 Oct 2023 02:23:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697448227; x=1698053027; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=5qiaccPRFInw5+HGdNXamloIk6Yg+7KEiF8IYEnb8bQ=; b=lmHWYntUB5Hwt3E/+10un3gHcG1FXfo/9dXqUIFKghFZ24CA1JqjsbyU9SUpzNhCo3 XfwvuB12fJg+IY0Faxeeoz4q/cmgUtNUgtJbp442b4C9GwrOyIBCOA/ezI4oF4CDhzTM K58rpb6gevfDi9+CbOmOekvXLIiucQYmFUHp/bigAQhMem9m1iz9fPf8wNpyEwflBXXF NzhaUFjQBz0oUIv5k4fafcyiVQ0d//n5XfemWWy/vzQ5rupvmJ111EOFgYLyTL4hXeDx lWnA/IIzj4Ddip6W0mUVUK+5XoZeEa8aOa61hRSupBb2RxWI/VwAz2lEq7Pf/8Dm9Elb nyMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697448227; x=1698053027; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5qiaccPRFInw5+HGdNXamloIk6Yg+7KEiF8IYEnb8bQ=; b=Ei23aFJAjEwlJ2o9VGWc/MEit+WqLbmIP1s7bXlwWC9nOVqKRYs3xHPPdaaMP8jkXl DbkdU2KfU/wIFOUI3tgzyHOMipEb36aDE+lLeQS1IvvXsJ4ZvaXI6BNtsTu+S3mp+9UW /qdXn7h24O81q4vCawo//CcgeHEF0/uTd+42TvqpugRz9xy02hgtnAi2snDWg+AreJ09 t3HMeFoNDfmOaPpohIr9pw/dBMcN6KxgaRRNoqQmJUchXg+VuOq6qq9jwa2PX1Xq7fAZ 1JsX0SxL12ONua4EstPYY0FsIykNIfTLncCCacbXSOKSJlb33Y79YwUlHw6qngivskBA 0ffQ== X-Gm-Message-State: AOJu0YzotactZOCrPu/q9WZhZe5vAS7huiMQT5VC08IbBqgIxwwiRG6u 4D0bxAxGazQ73cZFq/QPStpvg8M5HH695g== X-Received: by 2002:a05:6000:118c:b0:32d:9787:53bc with SMTP id g12-20020a056000118c00b0032d978753bcmr7840951wrx.62.1697448226934; Mon, 16 Oct 2023 02:23:46 -0700 (PDT) Received: from MSDN-EVPAVLOV.amd.com (178-223-50-56.dynamic.isp.telekom.rs. [178.223.50.56]) by smtp.gmail.com with ESMTPSA id g16-20020a056000119000b00323287186aasm7219710wrx.32.2023.10.16.02.23.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Oct 2023 02:23:46 -0700 (PDT) From: Evgeny Pavlov To: ffmpeg-devel@ffmpeg.org Date: Mon, 16 Oct 2023 11:13:20 +0200 Message-ID: <20231016091402.7972-1-lucenticus@gmail.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/amfenc: Fix for windows imprecise sleep 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 Cc: Evgeny Pavlov Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: dQbAozMe2iFH This commit reduces the sleep time on Windows to improve AMF encoding performance on low resolution input videos. This fix is for Windows only, because sleep() function isn't very accurate on Windows OS. Fix for issue #10622 Signed-off-by: Evgeny Pavlov --- libavcodec/amfenc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/amfenc.c b/libavcodec/amfenc.c index 061859f85c..0c95465d6e 100644 --- a/libavcodec/amfenc.c +++ b/libavcodec/amfenc.c @@ -770,7 +770,11 @@ int ff_amf_receive_packet(AVCodecContext *avctx, AVPacket *avpkt) if (query_output_data_flag == 0) { if (res_resubmit == AMF_INPUT_FULL || ctx->delayed_drain || (ctx->eof && res_query != AMF_EOF) || (ctx->hwsurfaces_in_queue >= ctx->hwsurfaces_in_queue_max)) { block_and_wait = 1; +#ifdef _WIN32 + av_usleep(0); //Sleep() is not precise on Windows OS. +#else av_usleep(1000); +#endif } } } while (block_and_wait);