From patchwork Tue Jan 21 10:09:15 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zane van Iperen X-Patchwork-Id: 17450 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 472AD44BDCF for ; Tue, 21 Jan 2020 12:09:34 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 1D5DC68B0AD; Tue, 21 Jan 2020 12:09:34 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail1.protonmail.ch (mail1.protonmail.ch [185.70.40.18]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0971368A98A for ; Tue, 21 Jan 2020 12:09:26 +0200 (EET) Date: Tue, 21 Jan 2020 10:09:15 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zanevaniperen.com; s=protonmail; t=1579601362; bh=Absh9CN1XiSh21F8ZlSQgA6d/26ISMJtjiEkCr9zk6Y=; h=Date:To:From:Cc:Reply-To:Subject:Feedback-ID:From; b=IR8SGdcFFp3BB6g8C83VV0/G0qY2nTmVZOpNTDH/mHJqVp9N5yCUcIR6fZx5SnKQ7 wuiILZiM+6T/ZC6Ulg7Nvbf/WZagPOxab6LyuOynGxqAHXfhrpsLoCv1DYmT5JN5uu xwhG7QCy0s8zje79UOkHzama0qGQdNAfX0BYu4P0= To: ffmpeg-devel@ffmpeg.org From: Zane van Iperen Message-ID: <20200121100906.8353-1-zane@zanevaniperen.com> Feedback-ID: xylLYHwBzJW7F28tHN-oL9EBm6h5yqtCqG6YwPpJ2oMwBYJT6-HxTnFTF6p18axLiSywX61iUfj4CElBGg8-GA==:Ext:ProtonMail MIME-Version: 1.0 X-Spam-Status: No, score=-1.2 required=7.0 tests=ALL_TRUSTED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.protonmail.ch Subject: [FFmpeg-devel] [PATCH v3 0/2] Argonaut Games ASF and ADPCM decoding support 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: Zane van Iperen Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Hi all, This patchset adds support for the ASF container and ADPCM variant used by some Argonaut Software games such as 'Croc! Legend of the Gobbos' and 'Croc 2'. It has been tested against: - ANISOUND/*.ASF from Croc 1 - music/*.asf from Croc 2 - FIGHT/SOUND/*.ASF from https://samples.ffmpeg.org/game-formats/brender/part2.zip v3: [2][3][4][5] - ignore file extension in probe - reduce maximum possible probing score to 61 - returned the stolen empty line - move the decoder into adpcm.c with the existing ones - formatting fixes v2: [1] - change to use AV_RLxx() instead of relying on #pragma pack() - use MKTAG() - formatting fixes [1]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-January/255986.html [2]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-January/256005.html [3]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-January/256014.html [4]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-January/256021.html [5]: https://ffmpeg.org/pipermail/ffmpeg-devel/2020-January/256024.html Zane Zane van Iperen (2): avcodec: add decoder for argonaut games' adpcm codec avformat: add demuxer for argonaut games' ASF format Changelog | 2 + doc/general.texi | 1 + libavcodec/Makefile | 1 + libavcodec/adpcm.c | 152 +++++++++++++++++++++++ libavcodec/allcodecs.c | 1 + libavcodec/avcodec.h | 1 + libavcodec/codec_desc.c | 7 ++ libavcodec/version.h | 2 +- libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/argo_asf.c | 262 +++++++++++++++++++++++++++++++++++++++ libavformat/version.h | 4 +- 12 files changed, 432 insertions(+), 3 deletions(-) create mode 100644 libavformat/argo_asf.c