From patchwork Wed Jul 29 20:47:35 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lynne X-Patchwork-Id: 21373 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 85CDF44B8CF for ; Wed, 29 Jul 2020 23:47:42 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5551768BA84; Wed, 29 Jul 2020 23:47:42 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from w4.tutanota.de (w4.tutanota.de [81.3.6.165]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 33ADB68B524 for ; Wed, 29 Jul 2020 23:47:36 +0300 (EEST) Received: from w3.tutanota.de (unknown [192.168.1.164]) by w4.tutanota.de (Postfix) with ESMTP id 9CEDD1060210 for ; Wed, 29 Jul 2020 20:47:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1596055655; s=s1; d=lynne.ee; h=From:From:To:To:Subject:Subject:Content-Description:Content-ID:Content-Type:Content-Type:Content-Transfer-Encoding:Cc:Date:Date:In-Reply-To:MIME-Version:MIME-Version:Message-ID:Message-ID:Reply-To:References:Sender; bh=gvzGX9HRAb5E2oABqOvDp112nQXJ3/U/HsoNB71w68c=; b=s/IrzwrmKITrbulbq5JOrNtmPGN1qpbUHSok1V1cP3S+9N8c/L4wjkXbPYyoi5Zb poYJ5zRFKPohDsCPj4TpovXjwOea8r2aH3cNADzqcq+oCA07i89y8araTFH4N2JvubV Bqmpqi8XKlfYnfxUZTnR9PcamGSZOFhemjvwB7fSZD6aKK7BLZBj7eB8P88tDJXpFH6 gaAvzVL+LpaRYHOyNxVV1Rpdmcum4ShiwkDto4ZtXl7D1joO2BZeRlQHR5ujCl0lSgV sMEmyVlamJX6U/TXJDSxKJAWqNOT8+vT5kJ5HX6hH5d4ZAdW0kwsI2f9XAFQ58SY0od 7uY4q//fGQ== Date: Wed, 29 Jul 2020 22:47:35 +0200 (CEST) From: Lynne To: Ffmpeg Devel Message-ID: MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] libsvt_av1: remove forced-idr option 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" This option is directly copy-pasted from the SVT1-HEVC wrapper and has no place in the options for an AV1 encoder. AV1 has no H.264/5 IDR frames nor anything like them. All this option does is change all real keyframes to an intra-only AV1 frame, which is not seekable. Hence, any streams encoded with this option enabled will not be seekable. Having an option that breaks encoded streams this much is not what we'd like. If SVT-AV1 developers would like to have an open-gop option a patch to enable that could be added with an appropriate name and after a discussion, rather than slipping through reviews. Subject: [PATCH] libsvt_av1: remove forced-idr option This option is directly copy-pasted from the SVT1-HEVC wrapper and has no place in the options for an AV1 encoder. AV1 has no H.264/5 IDR frames nor anything like them. All this option does is change all real keyframes to an intra-only AV1 frame, which is not seekable. Hence, any streams encoded with this option enabled will not be seekable. Having an option that breaks encoded streams this much is not what we'd like. If SVT-AV1 developers would like to have an open-gop option a patch to enable that could be added with an appropriate name and after a discussion, rather than slipping through reviews. --- libavcodec/libsvt_av1.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/libavcodec/libsvt_av1.c b/libavcodec/libsvt_av1.c index b30211d15b..c7ae5f9691 100644 --- a/libavcodec/libsvt_av1.c +++ b/libavcodec/libsvt_av1.c @@ -67,8 +67,6 @@ typedef struct SvtContext { int scd; int qp; - int forced_idr; - int tier; int tile_columns; @@ -212,7 +210,7 @@ static int config_enc_params(EbSvtAv1EncConfiguration *param, param->min_qp_allowed = avctx->qmin; } - param->intra_refresh_type = svt_enc->forced_idr + 1; + param->intra_refresh_type = 2; /* Real keyframes only */ if (svt_enc->la_depth >= 0) param->look_ahead_distance = svt_enc->la_depth; @@ -538,9 +536,6 @@ static const AVOption options[] = { { "sc_detection", "Scene change detection", OFFSET(scd), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, - { "forced-idr", "If forcing keyframes, force them as IDR frames", OFFSET(forced_idr), - AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, VE }, - { "tile-columns", "Log2 of number of tile columns to use", OFFSET(tile_columns), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 4, VE}, { "tile-rows", "Log2 of number of tile rows to use", OFFSET(tile_rows), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 6, VE},