From patchwork Tue Jan 17 11:38:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pavel Korotkevich X-Patchwork-Id: 40062 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1d43:b0:b8:6755:f97e with SMTP id cs3csp1739253pzb; Tue, 17 Jan 2023 03:40:01 -0800 (PST) X-Google-Smtp-Source: AMrXdXuAHc0pa1u6GGNmI4tlsr2wsH2KFx9pKcTx3O00jw2BfE+z0hLB4gEZDPKbWQTWH7IswfzB X-Received: by 2002:a05:6402:1055:b0:49b:53db:5766 with SMTP id e21-20020a056402105500b0049b53db5766mr2582871edu.35.1673955601525; Tue, 17 Jan 2023 03:40:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673955601; cv=none; d=google.com; s=arc-20160816; b=ij15sRhzfa/ksnrlZR0F+0XQnulcAqTDPZvoxoi8c+ZPKsqsdwbq5q2c8jxc29KA28 K77gurlUkv4d3+CE/0LWCXQZbXwh4h9i+P/egrcEh8yhTAiNmacGIUzOGcDngLgtwi8o OR5LnfMQofisUhoAC3v2o7xR9nw7jA/sh8//ig0n+1uGdhK26og+uX9Dt7jG6NU4tgkT zl9nrODjerIDXdme+2D7+hWplTXt1KxlkhPVT10KWsMDzBc+XAYgfr/o/UXJ3jz2IJ04 KCe5okgaL4v7Wo6bAK5xdNgqwfZYmef9DfBBVRtgeE6+OQAnRVDolJJ68KgF01NL7N3t E+aw== 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=b1pYUmkdPf408fBR8+Gi5FxQRvDrkc+Pj/PrteHZvDY=; b=O1Rmo1ZuJJmxpBmOF+MfD42djdJ97x3MRultpbF1u+Qp5yF7whjkbWFUkqgd2isFCD F3zJzD2oazvTwITmiWTSLR0az/Kr9xvvXC8HzXLy6cr57CgeTq5uCem1p4+y6Jt1QWxg FxwaobRFgj1yn66UXJn+HC2hg3hF02yvjbpRcLypPgZIItSrBs3M/sHEJT3NGyXaM+yo j+lPJlvbMDQBySIjTNZmG+CNYqn8OyAoPHs0/gQOPvhClm9zJC01wyd2f8S4u9wTAe/i uFZRzDJWVJ23x9lWsGfJXjfmw9cNy77BBJkFyKd+gSfqVCN17oZ/HxqmbyVCA7DIx3m/ DLDQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@mail.ru header.s=mail4 header.b=mNzvhn8+; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ds13-20020a0564021ccd00b004775e6e0511si33128569edb.445.2023.01.17.03.40.01; Tue, 17 Jan 2023 03:40:01 -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=@mail.ru header.s=mail4 header.b=mNzvhn8+; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 27F1168BDB7; Tue, 17 Jan 2023 13:39:58 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtp37.i.mail.ru (smtp37.i.mail.ru [95.163.41.78]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EC5E168BDCC for ; Tue, 17 Jan 2023 13:39:50 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mail.ru; s=mail4; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:Subject:Cc:To:From:From:Subject:Content-Type:Content-Transfer-Encoding:To:Cc; bh=VJnpeJsLvSaGJ9YhQhpwYLBAyW4ItX50DSVROJBRvao=; t=1673955596;x=1674045596; b=mNzvhn8+qMvxCaEtBvS41lda78agKCcfaREclPiJVjvOXGyZ/g3cQoZ3g763h+iPYcLJp6fXb983/eCotakFfnUQ2JexJrM8PnmFxPhAXQgBRUQgvYDyZvlC5SwflIwECrgzAog5FVTYYDbsg2p6Rgr9S74IWk0OF0AYMfQEYXhSF7cMJFJK+tDTaXY9bQ1eOC6YekdUcM6EiVf6ipMszp07ZgRHLcZImEP4icuw5GKRwhU+jus8KOKyOmFpolJxx9ErG0qk0iN7kLQOOALqS1r7b2IwXWN/qCriVa/9EdB0Vs6hH/eB1gSau8cNEu9wUt7b0bAgJ+wZ1eJEeNVwJQ==; Received: by smtp37.i.mail.ru with esmtpa (envelope-from ) id 1pHkJh-00DCCt-7I; Tue, 17 Jan 2023 14:39:49 +0300 From: pawday-at-mail.ru@ffmpeg.org To: ffmpeg-devel@ffmpeg.org Date: Tue, 17 Jan 2023 15:38:05 +0400 Message-Id: <20230117113805.1882-1-pawday@mail.ru> X-Mailer: git-send-email 2.39.0.windows.2 MIME-Version: 1.0 Authentication-Results: smtp37.i.mail.ru; auth=pass smtp.auth=pawday@mail.ru smtp.mailfrom=pawday@mail.ru X-Mailru-Src: smtp X-7564579A: 78E4E2B564C1792B X-77F55803: 4F1203BC0FB41BD90D1502B3BE350FE4F8E4D4842A17DDFCDDA8BA9CCAEF35FF00894C459B0CD1B9BB7875846AFB9225D040599ED41EE6E0DB4C1594085436A67821E8BEC7DEA809 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE78CB87876C5D626D4EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F79006371AA4FDB8B3812E678638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D8B4C2EE7113A1DF09E651BF7789BAD4F16F9789CCF6C18C3F8528715B7D10C86859CC434672EE6371117882F4460429724CE54428C33FAD305F5C1EE8F4F765FC974A882099E279BDA471835C12D1D9774AD6D5ED66289B52BA9C0B312567BB23117882F44604297287769387670735207532CA1512B81981F6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA73AA81AA40904B5D9A18204E546F3947CD7F4798FD4FA8F526E0066C2D8992A164AD6D5ED66289B52698AB9A7B718F8C46E0066C2D8992A16725E5C173C3A84C39DB465A7E1668C9BBA3038C0950A5D36B5C8C57E37DE458B330BD67F2E7D9AF16D1867E19FE14079C09775C1D3CA48CF3D321E7403792E342EB15956EA79C166A417C69337E82CC275ECD9A6C639B01B78DA827A17800CE7DFD043FC03F4998E731C566533BA786AA5CC5B56E945C8DA X-C1DE0DAB: 0D63561A33F958A5896D26FA5EA795CD37294E0B780FB27A806BE4EADB0A4C084EAF44D9B582CE87C8A4C02DF684249CC203C45FEA855C8F X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D34D1AE09A115117C9667B9916E3391DD4A46AD92B04DFB4E6EC3A391082231200B3CDFC208C97B439D1D7E09C32AA3244C1FB122F0AABA94449460297C0B5E561F81560E2432555DBB729B2BEF169E0186 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojbDGeE7DdcRlNv1izjuPqRQ== X-Mailru-Sender: 7F53729568FFBF28BAC5A23C9FF6F70BEBC02494368210C0551E51E92C92B6555A2F90D271684D976BCD89EFCAA5B95A3182BEA23F8D30570919CA7848C88715AE27536645352AA2540CD94B559F21E07652F063092A458A0D4ABDE8C577C2ED X-Mras: Ok Subject: [FFmpeg-devel] [PATCH] avcodec: Use preprocessors conditions 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: Pawday Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: gU0Oe4Jx1/kZ From: Pawday --- libavcodec/avcodec.c | 13 +++++++++---- libavcodec/decode.c | 5 +++-- libavcodec/encode.c | 8 ++++---- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index a85d3c2309..1e24bdf333 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -403,10 +403,12 @@ void avcodec_flush_buffers(AVCodecContext *avctx) av_frame_unref(avci->buffer_frame); av_packet_unref(avci->buffer_pkt); - if (HAVE_THREADS && avctx->active_thread_type & FF_THREAD_FRAME) +#if HAVE_THREADS + if (avctx->active_thread_type & FF_THREAD_FRAME) ff_thread_flush(avctx); else if (ffcodec(avctx->codec)->flush) ffcodec(avctx->codec)->flush(avctx); +#endif } void avsubtitle_free(AVSubtitle *sub) @@ -441,12 +443,15 @@ av_cold int avcodec_close(AVCodecContext *avctx) if (avcodec_is_open(avctx)) { AVCodecInternal *avci = avctx->internal; - if (CONFIG_FRAME_THREAD_ENCODER && - avci->frame_thread_encoder && avctx->thread_count > 1) { +#if CONFIG_FRAME_THREAD_ENCODER + if (avci->frame_thread_encoder && avctx->thread_count > 1) { ff_frame_thread_encoder_free(avctx); } - if (HAVE_THREADS && avci->thread_ctx) +#endif +#if HAVE_THREADS + if (avci->thread_ctx) ff_thread_free(avctx); +#endif if (avci->needs_close && ffcodec(avctx->codec)->close) ffcodec(avctx->codec)->close(avctx); avci->byte_buffer_size = 0; diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 6be2d3d6ed..7979b9277a 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -300,8 +300,8 @@ static inline int decode_simple_internal(AVCodecContext *avctx, AVFrame *frame, return AVERROR_EOF; got_frame = 0; - - if (HAVE_THREADS && avctx->active_thread_type & FF_THREAD_FRAME) { +#if HAVE_THREADS + if (avctx->active_thread_type & FF_THREAD_FRAME) { ret = ff_thread_decode_frame(avctx, frame, &got_frame, pkt); } else { ret = codec->cb.decode(avctx, frame, &got_frame, pkt); @@ -321,6 +321,7 @@ static inline int decode_simple_internal(AVCodecContext *avctx, AVFrame *frame, } } } +#endif emms_c(); actual_got_frame = got_frame; diff --git a/libavcodec/encode.c b/libavcodec/encode.c index fbe2c97cd6..6f39bfeb50 100644 --- a/libavcodec/encode.c +++ b/libavcodec/encode.c @@ -269,7 +269,7 @@ static int encode_simple_internal(AVCodecContext *avctx, AVPacket *avpkt) got_packet = 0; av_assert0(codec->cb_type == FF_CODEC_CB_TYPE_ENCODE); - +#if CONFIG_FRAME_THREAD_ENCODER if (CONFIG_FRAME_THREAD_ENCODER && avci->frame_thread_encoder) /* This will unref frame. */ ret = ff_thread_video_encode_frame(avctx, avpkt, frame, &got_packet); @@ -280,7 +280,7 @@ static int encode_simple_internal(AVCodecContext *avctx, AVPacket *avpkt) av_frame_unref(frame); #endif } - +#endif if (avci->draining && !got_packet) avci->draining_done = 1; @@ -670,11 +670,11 @@ int ff_encode_preinit(AVCodecContext *avctx) return AVERROR(ENOMEM); } - if (CONFIG_FRAME_THREAD_ENCODER) { +#if CONFIG_FRAME_THREAD_ENCODER ret = ff_frame_thread_encoder_init(avctx); if (ret < 0) return ret; - } +#endif return 0; }