From patchwork Sun Nov 26 22:51:04 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Darnley X-Patchwork-Id: 6377 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp966871jah; Sun, 26 Nov 2017 14:58:42 -0800 (PST) X-Google-Smtp-Source: AGs4zMYOzmxP+hDqPFBrgtzgU2WTuUXv4TA+ykQlLIXozofg1hPDpg0jc21C/w+8a7JkofCmT3Sr X-Received: by 10.28.33.136 with SMTP id h130mr14251344wmh.151.1511737122674; Sun, 26 Nov 2017 14:58:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511737122; cv=none; d=google.com; s=arc-20160816; b=PI8QLCAIk2dOYMTcmUWGxO+AA1ayU9FKT5CYNTpwT+XDNQW074HFm71iR2ep0+vaQd N/RUR0Qrl5RQGqqAKVnc6UKbqzEdrbjNPoAaeSFZDtIm+vMIrkb27pIhPoxvHvBYOau3 2KL/WsHsDnlq5NDgnQTbj3AR8p8ctIKgXBZ7xifuPAynJT/8o3kBJgNHfsy9TLQylx2b haw6lid8hVHpu/lnacinHVNZxoWlGR5X3I6vNGJUpJIU+e7nOaLzo5MNKlIqAGGTbLO+ zyMTdRggzGpYR8WQYQMrUlEkBjDKuHexdF373o0cmBI1O8HILLx2bXvvbV+CNPotq1yK /PAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=1S3T9gIsnhux8VAXLFzkwznlQxin2fv7/64z/c+aDv0=; b=XhweTQwUO2cJWo+NxE0U51pVTwpF4NPWeLXE0Rvr/WwnTEWsunY6WczpFoA85p5tsR 4Bu8TepWxhvjf7ru93sP10r5ieHxjbr3kXP7b05u/ZyknPJpQyiCjEsw98m5Fzcc5Xm3 OdheyXDojkRLJh94DPGXb9XYAvr25TUBcIXEv7znYmkuoKErD3f1SLQ4Unl3AxOK0Mfp vB7Zjj7pSPpXvZDSigwpkTaBdPiWLl8Tpd3LQAcLYYRnsl5BRRPfioSznn9CaSmX5vfl uxO5RMq/YPnPxILOv2zCjuO5O2RiZyfpFboHkU5ziP2vYYzUIT53r8qEvGsFSEcr/QBy gQtQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=s01Afofb; 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=NONE 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 l67si3962789wmg.46.2017.11.26.14.58.42; Sun, 26 Nov 2017 14:58:42 -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=@gmail.com header.s=20161025 header.b=s01Afofb; 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=NONE 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 B2F4668A356; Mon, 27 Nov 2017 00:58:39 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm0-f65.google.com (mail-wm0-f65.google.com [74.125.82.65]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9143268A34F for ; Mon, 27 Nov 2017 00:58:38 +0200 (EET) Received: by mail-wm0-f65.google.com with SMTP id g130so26219351wme.0 for ; Sun, 26 Nov 2017 14:58:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references; bh=xsWWn63a64E6OWP0F8/Rh6TnxuH23Es7rOhbvC5wLko=; b=s01AfofbVJSCmWO/RQqaQCwWi//vyFnCDr3B8rh5EF8/O+Pg2i0sc9ezl96v/pypLO UOVj9Rt58c5IBe34c2Xmp6ANQHHJ9Smalu6PIkyBxaoCoDjgoOQjxHrieFOyd3cBiqlY Fr/nqT6HinzEdqTmytDJwZJ8he/e2cMVUkdB0snCKb0FzXrKoz3GIqwAqfRoYSmx1XBD XJBpDDrAFtIeRpZt+9TLUja00EIoqWQv83LsrLUq0ob6UKH7wdoEaddNzkvWvE8JqPqw x2+cVdVVVimVqQjJuNwPmsZb112rY9BuvPxDLjOyfVpUKR0MgGVWuiAK/BpDXWyNkqeB Z3kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=xsWWn63a64E6OWP0F8/Rh6TnxuH23Es7rOhbvC5wLko=; b=NUUBHbGYqZe8hDl9BCfsngYyFmFwEkNjxdLn+SDygY5X1aPkEy3WBxIjARHhQF+OHP 6vASeJtF+f7HLIju7RiCbpqephUz2EPxshLZiCMHbU7p/y8OC1kN85aw2QeQMPyYTC7U uRby3aBcsdJSFZiGyVdfF6/y+jtjjoOo1tiC1SeN3oIzlQ7S/a+Fsbju/CXlmBuM6IR6 CR4InBhtoYuG4SnOIE+RRce/d/xOTQZN1GDSQ+YJDa3Iy1hEnzIG/7ZMiFMw52UPuJQZ ePp3x3TbM8XJ852DgPpUifx41cf3I4h1uWNLS/coNrZM59i7QufeqaJgUHgEvQdYXc7Y dbHQ== X-Gm-Message-State: AJaThX6GwY6FUKYnI+5caiDJe1fNC/QvDbCs22Y76TgXEC5kO8xJN2Do HShPbwAqmoUIz7UKj1Wbr3gPDQ== X-Received: by 10.80.172.162 with SMTP id x31mr51850584edc.253.1511736719852; Sun, 26 Nov 2017 14:51:59 -0800 (PST) Received: from Highwind.systemlords.lan (d51a44418.access.telenet.be. [81.164.68.24]) by smtp.gmail.com with ESMTPSA id h56sm22545791ede.15.2017.11.26.14.51.58 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 26 Nov 2017 14:51:59 -0800 (PST) From: James Darnley To: ffmpeg-devel@ffmpeg.org Date: Sun, 26 Nov 2017 23:51:04 +0100 Message-Id: <20171126225111.5108-2-james.darnley@gmail.com> X-Mailer: git-send-email 2.15.0 In-Reply-To: <20171126225111.5108-1-james.darnley@gmail.com> References: <20171126225111.5108-1-james.darnley@gmail.com> Subject: [FFmpeg-devel] [PATCH 1/8] avcodec/flac: document limitations of the LPC encoder 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" State that the maximum value of order is 32. This limit is used in both C and x86 assebly code. --- libavcodec/flacdsp.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libavcodec/flacdsp.h b/libavcodec/flacdsp.h index 7bb0dd0e9a..90fd3f04b5 100644 --- a/libavcodec/flacdsp.h +++ b/libavcodec/flacdsp.h @@ -30,6 +30,14 @@ typedef struct FLACDSPContext { int qlevel, int len); void (*lpc32)(int32_t *samples, const int coeffs[32], int order, int qlevel, int len); + + /** + * These encoder functions support a maximum order of 32. + * + * This limit is used: + * - when CONFIG_SMALL is 0 to unroll a loop in the C template. + * - when SSE4 (or newer) is available on x86 to unroll a copy loop. + */ void (*lpc16_encode)(int32_t *res, const int32_t *smp, int len, int order, const int32_t coefs[32], int shift); void (*lpc32_encode)(int32_t *res, const int32_t *smp, int len, int order,