From patchwork Thu Jan 14 16:26:08 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Gaullier X-Patchwork-Id: 24945 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 238E744A87E for ; Thu, 14 Jan 2021 18:26:22 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E749068A28B; Thu, 14 Jan 2021 18:26:21 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from srv-infra-1.infra.inf.glb.tvvideoms.com (unknown [213.205.126.156]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D7D006881E1 for ; Thu, 14 Jan 2021 18:26:14 +0200 (EET) Received: from cji.paris (unknown [172.16.3.159]) by srv-infra-1.infra.inf.glb.tvvideoms.com (Postfix) with ESMTP id AFF1920040; Thu, 14 Jan 2021 16:26:13 +0000 (UTC) From: Nicolas Gaullier To: ffmpeg-devel@ffmpeg.org Date: Thu, 14 Jan 2021 17:26:08 +0100 Message-Id: <20210114162610.1385-1-nicolas.gaullier@cji.paris> X-Mailer: git-send-email 2.27.0.windows.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 0/2] avcodec/dolby_e: Add a parser 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: Nicolas Gaullier Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" I have limited duplicated code by making the decoder calling the parser. An option would be to leave all common code to dolby_e.c and move decoding to dolby_edec.c, but that would require either to duplicate 3 "very-internal" functions (skip_input/parse_key/convert_input) 3x times instead of twice currently, or to share them with ff_ prefix although they are very-low level and difficult to document etc. If you have an idea for a better design, please tell me. Nicolas Gaullier (2): avcodec/dolby_e: Add a parser avcodec/dolby_e: Split decoder/parser files Changelog | 1 + libavcodec/Makefile | 1 + libavcodec/dolby_e.c | 209 ++++----- libavcodec/dolby_e.h | 608 +-------------------------- libavcodec/dolby_e_parser.c | 227 ++++++++++ libavcodec/dolby_e_parser.h | 41 ++ libavcodec/dolby_e_parser_internal.h | 46 ++ libavcodec/dolby_edec.h | 607 ++++++++++++++++++++++++++ libavcodec/parsers.c | 1 + libavcodec/version.h | 2 +- 10 files changed, 1019 insertions(+), 724 deletions(-) create mode 100644 libavcodec/dolby_e_parser.c create mode 100644 libavcodec/dolby_e_parser.h create mode 100644 libavcodec/dolby_e_parser_internal.h create mode 100644 libavcodec/dolby_edec.h