From patchwork Fri Dec 30 17:08:13 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Moritz Barsnick X-Patchwork-Id: 1993 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.89.21 with SMTP id n21csp2935163vsb; Fri, 30 Dec 2016 09:08:44 -0800 (PST) X-Received: by 10.28.126.18 with SMTP id z18mr46109903wmc.87.1483117724153; Fri, 30 Dec 2016 09:08:44 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id cv4si36223384wjb.220.2016.12.30.09.08.43; Fri, 30 Dec 2016 09:08:44 -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; 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 994656891EA; Fri, 30 Dec 2016 19:08:36 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DBE1C68045C for ; Fri, 30 Dec 2016 19:08:30 +0200 (EET) Received: from paradise.fritz.box.fritz.box ([80.144.11.60]) by mail.gmx.com (mrgmx103 [212.227.17.168]) with ESMTPSA (Nemesis) id 0LhNwC-1crgfG472u-00mZZa; Fri, 30 Dec 2016 18:08:31 +0100 From: Moritz Barsnick To: FFmpeg development discussions and patches Date: Fri, 30 Dec 2016 18:08:13 +0100 Message-Id: X-Mailer: git-send-email 2.7.4 In-Reply-To: References: In-Reply-To: References: X-Provags-ID: V03:K0:TCgrIwMGLB+UPLeJJnq/CKhDumjkUm3LE5alFzyXEZvHcsLvtjq sDzkLtKm6wsBEr3NACNvD/GnKKOBr9GCJIMUW42rD8IqJceS50fdkZWa5Bk3Vnb20jDOv+t CuiC3q3kR4JI8W/Xp2MS5q/3L2nM59bZiuEdkJilKlUor7YQ9bWbZ4KEINvgru/1csPoLPk N/RGYLBh3ilNeIeyqSQPQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:gj9gRj/X3u0=:bPZJGuqxEVbXXpLCJvkDs6 3UNQZiiZg0ksK+FbLW9Y4BEZ7N8eyQhLXklqjQYrWjhh7coSODhw45OM92/jWm6Xhf3Df494q 90cyPrfXpPrcguIksOPpcp6AUn4UFO3mQ6S6QwApFC1vKF25mq4scRH+R+C98TFNz6J0ti59J L2RwFX61V0YIuPNGs+Y0VHrxgqbZRu53s46Pqy76wxFerwf+oEf0GBSx5m8YbvLoIQnDrtJw8 hsxI1OWIz9ivNRgyT8AnHvEsgnSEcNnbbPNXN7sDPS1DMQUm2z9Qu9iLhU8jgLtvJ07f2L1m/ 4ZIRGahR14wLJC63T3dUSlLUtczWBK6BGbJmlB1UkWDQcBMbun/kZxPdnouiXvSaJoEYCIg9L CjXQZlSmiKqzmJO9tAsXWc5PyK357WxkeAiYLZisoFqkVn/MomPMvlW1I7nHtySu65Lsdm/eP eTZoAmcqlSp/6Abr+8u6vEjlbWrzDb2F8MXuY/wm6bljjcEs8zVNZeSSQbXz4i9SRexBmNxiN T2v2CzKwK0et6kyHDjgXrVWZm55R3I4RIecSMpphF4PLfLQY1921IfeeaWpX/d0A8qEETeBwN /8SR0dnmfWswKVqXSQwSKQ0uBRa6SciIKfW3b+4OOGQ4yl+H3gtj/jzhA/1LuuPSOvXP1eF57 YK55xFTRbc/K/SDn+yPP36pJzItCWvsl2pqEchXliOG1OMAy5wx5TMEfQItF4TR9l8TSUdaYl G2xqaeDAwDMIiWDgxv268tp7iXpMYeAD3F1iHvGKSVFUfAZQ8ucABB/7dWm4ocOb3zP4cCU51 yTICboz+X+jt2qzetfaVtWx0/sJUvIqBIWTQQXic4u++EqIlLskwAkKzMKXd8blfG8wFGTgt6 UICXyembprnHIK14y7P0RnY82Qoix2x6z0BJSDdOAt/7oqE6Kh4e1VlyGecPfHJG74Uq2tV+5 myHcooIFttlGrTpRS1bILkY2W+XJ+dTo6vo0nRN68SP1lzk3Kc8yMhMEDWofZcdRQEdVxkI6e Vw== Subject: [FFmpeg-devel] [PATCH 1/2] lavc/libmp3lame: add support for cutoff 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 Cc: Moritz Barsnick MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Pass the cutoff option from lavc's avcodec_options[] to libmp3lame's lowpass option, without allowing to adjust its default behavior. Signed-off-by: Moritz Barsnick --- doc/encoders.texi | 4 ++++ libavcodec/libmp3lame.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/doc/encoders.texi b/doc/encoders.texi index cbb8d8e..5e311cb 100644 --- a/doc/encoders.texi +++ b/doc/encoders.texi @@ -817,6 +817,10 @@ Set algorithm quality. Valid arguments are integers in the 0-9 range, with 0 meaning highest quality but slowest, and 9 meaning fastest while producing the worst quality. +@item cutoff (@emph{--lowpass}) +Set lowpass cutoff frequency. If unspecified, the encoder dynamically +adjusts the cutoff. + @item reservoir Enable use of bit reservoir when set to 1. Default value is 1. LAME has this enabled by default, but can be overridden by use diff --git a/libavcodec/libmp3lame.c b/libavcodec/libmp3lame.c index e55aa85..5e26743 100644 --- a/libavcodec/libmp3lame.c +++ b/libavcodec/libmp3lame.c @@ -125,6 +125,10 @@ static av_cold int mp3lame_encode_init(AVCodecContext *avctx) } } + /* lowpass cutoff frequency */ + if (avctx->cutoff) + lame_set_lowpassfreq(s->gfp, avctx->cutoff); + /* do not get a Xing VBR header frame from LAME */ lame_set_bWriteVbrTag(s->gfp,0);