From patchwork Fri Mar 31 17:14:13 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Takayuki 'January June' Suwa X-Patchwork-Id: 3227 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.44.195 with SMTP id s186csp2135445vss; Fri, 31 Mar 2017 10:14:30 -0700 (PDT) X-Received: by 10.28.102.86 with SMTP id a83mr3884554wmc.76.1490980470887; Fri, 31 Mar 2017 10:14:30 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o77si4267870wmd.17.2017.03.31.10.14.30; Fri, 31 Mar 2017 10:14:30 -0700 (PDT) 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; 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 2F23F689A2E; Fri, 31 Mar 2017 20:14:27 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pg0-f66.google.com (mail-pg0-f66.google.com [74.125.83.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AFCCB6899B4 for ; Fri, 31 Mar 2017 20:14:20 +0300 (EEST) Received: by mail-pg0-f66.google.com with SMTP id 79so18732305pgf.0 for ; Fri, 31 Mar 2017 10:14:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=DpN4d31gIElRwf3KxSbRiTA2rTVYk6/+KqlIaTI/U9M=; b=mLz3DJdhO046IpWEjkqLtm3SKNAum0shC5018Aet8nlVGCnoDlF7o8STQBA0nNj591 1rHB8R+m4yCPnRAh4/rpTFJREp6L4WCkBkpxVPqi0NOZA8hyinRZydg8+Pfy9kXMO/4A M1PoY2XgySl5KTF6CJvDHnObLMJKH4c47ikwGwSEHPIWFPWmj46lUE1s8BF5HQXLeYv5 bYX28HINU5MguMGpv8C6J64gXVr62vkInyOe5zEZGseJ9vGkV58kTBRcmc1R616JbXLP wd5Q9J3sY9XKSIjFLLIM6b/KGOf8agbw1TMmUzydz8ya7pxXrP1ybxoQJhH3MydLR2Ui fmXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=DpN4d31gIElRwf3KxSbRiTA2rTVYk6/+KqlIaTI/U9M=; b=V4aEfBkGv68sk3vZqxHvRjglLVfpH3Fq7gWZcF51IurA8+o1KyRS3eaoV4vyHgPmbV KMlDKJ+bpBRWX/BEOpVRI3t/T5hx6zZrHxv6rnUsutKHZNE6EeSREgms7G1S3AABxeaQ rWMk1b33DqnLrtcBU+795+aJlp/l56Cs4Jth2Blzgc7pRcXOwpGnsao8H+pv7Q7ILXCo Ud/vRGO5mI8J6lnDdp2SKF49xpzaAVGsuloPXZDDSFa8xxEbRWlpf15xhZclrOHCppi/ qNsISZybmE3tPSUmodwo8unmtWvbBelDahdhP2wF5ulJEdh9G25uOP22Czjixr7FTBGk bx6A== X-Gm-Message-State: AFeK/H0wlH6ogY/v8Tcmx8TcMHmOXFGgvbdwwyF0jLvVP4LBqUOEQ0fJ69wpvs5dxiNqxg== X-Received: by 10.99.54.69 with SMTP id d66mr4185088pga.116.1490980459517; Fri, 31 Mar 2017 10:14:19 -0700 (PDT) Received: from localhost.localdomain (h175-177-005-137.catv02.itscom.jp. [175.177.5.137]) by smtp.gmail.com with ESMTPSA id h14sm4677541pgn.64.2017.03.31.10.14.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 31 Mar 2017 10:14:18 -0700 (PDT) From: Takayuki 'January June' Suwa To: ffmpeg-devel@ffmpeg.org Date: Sat, 1 Apr 2017 02:14:13 +0900 Message-Id: <1490980453-3054-1-git-send-email-jjsuwa.sys3175@gmail.com> X-Mailer: git-send-email 2.1.4 Subject: [FFmpeg-devel] [PATCH] dsddec: correct for DSD silence bit-ordering 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: Takayuki 'January June' Suwa MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" --- libavcodec/dsddec.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/libavcodec/dsddec.c b/libavcodec/dsddec.c index 880d691..2c5c357 100644 --- a/libavcodec/dsddec.c +++ b/libavcodec/dsddec.c @@ -31,10 +31,18 @@ #include "avcodec.h" #include "dsd.h" +#define DSD_SILENCE 0x69 +/* 0x69 = 01101001 + * This pattern "on repeat" makes a low energy 352.8 kHz tone + * and a high energy 1.0584 MHz tone which should be filtered + * out completely by any playback system --> silence + */ + static av_cold int decode_init(AVCodecContext *avctx) { DSDContext * s; int i; + uint8_t silence; ff_init_dsd_data(); @@ -42,15 +50,10 @@ static av_cold int decode_init(AVCodecContext *avctx) if (!s) return AVERROR(ENOMEM); + silence = avctx->codec_id == AV_CODEC_ID_DSD_LSBF || avctx->codec_id == AV_CODEC_ID_DSD_LSBF_PLANAR ? ff_reverse[DSD_SILENCE] : DSD_SILENCE; for (i = 0; i < avctx->channels; i++) { s[i].pos = 0; - memset(s[i].buf, 0x69, sizeof(s[i].buf)); - - /* 0x69 = 01101001 - * This pattern "on repeat" makes a low energy 352.8 kHz tone - * and a high energy 1.0584 MHz tone which should be filtered - * out completely by any playback system --> silence - */ + memset(s[i].buf, silence, sizeof(s[i].buf)); } avctx->sample_fmt = AV_SAMPLE_FMT_FLTP;