From patchwork Wed Mar 15 14:45:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Khirnov X-Patchwork-Id: 40684 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:d046:b0:cd:afd7:272c with SMTP id hv6csp3482633pzb; Wed, 15 Mar 2023 07:45:39 -0700 (PDT) X-Google-Smtp-Source: AK7set/K2V6i3gbCRHRFTQrNqVt4ED+V9ywbHGDllu3VcbWdhFwG6M2j/Y4yu0rcvWuMMuc40gDR X-Received: by 2002:a17:907:d40e:b0:92f:9ba8:e38c with SMTP id vi14-20020a170907d40e00b0092f9ba8e38cmr1086822ejc.64.1678891539195; Wed, 15 Mar 2023 07:45:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1678891539; cv=none; d=google.com; s=arc-20160816; b=BGBGd4hR59kvosnY13vi6DhdhSJ7YsVQoll0jyqTN/g7iS5/xQqvOE9qJpLXnxkmoZ tDZbdc93JYZVYEqYrdxFSRSTHuhJ+jBAimwWX+6AcJT8ywgQontx+Cs8J6SBzt17qjIM r49sQwICs0MZcve7FnJBuGggzTo2YAsRO2h05lF0C206lYoag01kiZ+eNxPjBIRw/hg6 fON5v3PJc65rPFQpdbn/VFCQYcC739Dryz743bOdZke03vsYpS23jACj941yGscQNAhL fWhNLLQBYSVDcafFNlJOmn2e+V3e/JrjLm/jTKZj/OHCaPqQGSkKgKFb+7HujzUTssB3 MNpw== 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 :delivered-to; bh=6Z2nVAlDXzKXK4+6AsG33mgE5Qu4R9heuxqQxL76ssQ=; b=lj7BdxcnX4pacRUkm/LmVAZmdYxC/DZaedoAppP6fJSFvAnIVhl+0Vj5RKLGPd/jF5 V8icxuRh/uVa5/FlyHOo3t3M465YdawLjb/looMTrz9fkcYD0ukTLqnm4B7DhdBw2Aac M3na2RunIPGe/u9ir+c6T6+JVm5X7ix3PAlx8YWFu8GZr1FuPOmoLyglZwnRMUBHec/4 l+S8mo++aHt9QFXo8iv0xth3ydYxTycU8xS7WWJ0OmUVmrk7YwazZ2ST+M7gWaDOvf6P gXjKIceNwpL4ThuxfqWLG2t8jH4sFpMit5jJkqZY9+gmJ9xTOQBLfh3i90OGR7OLwiQb kQWA== ARC-Authentication-Results: i=1; mx.google.com; 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 bj1-20020a170906b04100b008c673be3440si5889172ejb.987.2023.03.15.07.45.38; Wed, 15 Mar 2023 07:45:39 -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; 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 7937A68BE80; Wed, 15 Mar 2023 16:45:35 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail0.khirnov.net (red.khirnov.net [176.97.15.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 489EE68BC80 for ; Wed, 15 Mar 2023 16:45:29 +0200 (EET) Received: from localhost (localhost [IPv6:::1]) by mail0.khirnov.net (Postfix) with ESMTP id EE2412404EA for ; Wed, 15 Mar 2023 15:45:28 +0100 (CET) Received: from mail0.khirnov.net ([IPv6:::1]) by localhost (mail0.khirnov.net [IPv6:::1]) (amavisd-new, port 10024) with ESMTP id lMILu4xOtO3u for ; Wed, 15 Mar 2023 15:45:28 +0100 (CET) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:2a00:c500:561:201::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "libav.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail0.khirnov.net (Postfix) with ESMTPS id 2BE79240178 for ; Wed, 15 Mar 2023 15:45:28 +0100 (CET) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:::1]) by libav.khirnov.net (Postfix) with ESMTP id D81E33A00B6 for ; Wed, 15 Mar 2023 15:45:27 +0100 (CET) From: Anton Khirnov To: ffmpeg-devel@ffmpeg.org Date: Wed, 15 Mar 2023 15:45:25 +0100 Message-Id: <20230315144525.4140-1-anton@khirnov.net> X-Mailer: git-send-email 2.39.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] lavc/libx265: flag as experimental 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: KDXyrv2S7X03 This encoder leaks and overreads, as can be seen e.g. by running an encode under valgrind with default encoder parameters. This was known upstream since at least 2019 (e.g. bitbucket issue #482) but never fixed until now. Since upstream does not seem to practice basic code hygiene, make sure people do not use this encoder without knowing what they are getting into. --- libavcodec/libx265.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c index 420d0953af..d4511251a5 100644 --- a/libavcodec/libx265.c +++ b/libavcodec/libx265.c @@ -895,7 +895,8 @@ FFCodec ff_libx265_encoder = { .p.id = AV_CODEC_ID_HEVC, .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY | AV_CODEC_CAP_OTHER_THREADS | - AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE, + AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE | + AV_CODEC_CAP_EXPERIMENTAL, .p.priv_class = &class, .p.wrapper_name = "libx265", .init = libx265_encode_init,