From patchwork Sat Jul 8 21:25:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 42548 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:6d25:b0:130:f365:34ad with SMTP id fv37csp663648pzb; Sat, 8 Jul 2023 14:27:50 -0700 (PDT) X-Google-Smtp-Source: APBJJlHaIFAff2c/H4Hg2MLMt8ZE/NxzDi9Cyjsx8rsZedNdTgajHaBcidEtWo1nEA8GbDGx1exi X-Received: by 2002:aa7:db48:0:b0:514:a4cd:85d7 with SMTP id n8-20020aa7db48000000b00514a4cd85d7mr6700508edt.26.1688851670207; Sat, 08 Jul 2023 14:27:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1688851670; cv=none; d=google.com; s=arc-20160816; b=LuyiicLwl6yyEzNyX576QDDdx2xk/tqaPAF6xCE4rEzwU42Zk2UESUIGDOV32bOZYG mZhagrV08BxmW28/rCtbJggA2PNW4sX7+L3bEcDeUOj0QMt670aNne3RlJlek9E/CNXV d4DkfYO+VXC5kx5CFY+PA0l2v03R1h0WXKHuNlJKi4Z9ABSaU6iME7aT9lO2gxF8JuPB nr4Ip+BrjqgVl4xNUD62OiXoZ7YUK4Gkl8xZ5JH+O5HRik86lCl4ypdcI20WeKsl+i1X HDAOpJP7oMMspTKVJtOd8lhkDSAXVTcCM42il8fraSinHhS2eQJf74FY7QNCH0IelP+e 3S5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:delivered-to; bh=5AkJysmMwDDu/6sgvypjNcRQp6aeqLO5YsxT98qdEC0=; fh=YYwLYmpaV0Fpw/rxmSKNRLS2XzDkAlGbHATiKOPtZrY=; b=ss4kDCk/ZS/hKRMrrnb2jLN/Qv4wKl6dOVRFcCYie5LqRXCEMrjreR7DirC/vuODE+ BAXPV+FPAi+HHWcfY/vBN0JENGBYsBCKGlwBXYqJNstmh3NOcZV8iSFphEha1mNHTyZB MLf5iVUnf7ZJTqE7xYHsvVlsFCmdkpb+W47Bonc3V48MYZlWMpDZFLn0sS8Psmd4n/Kk 8Xridib9SiPz4+eBJc0wvNh78WGCKP1FfOst+p4f7YD+tRPtvaoqUjFyZYIM13KdlOZ0 6flrYj5lGj4+yJW94CDmwwzASDdaHULRvauzS4g5pZUchqBuL3aS+F40lrFwSW3j1u/p TCQA== ARC-Authentication-Results: i=1; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id n4-20020a056402060400b0051e0d8c614fsi4191113edv.567.2023.07.08.14.27.49; Sat, 08 Jul 2023 14:27:50 -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; 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 9470768C5E8; Sun, 9 Jul 2023 00:25:54 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net [217.70.183.195]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F391968C59A for ; Sun, 9 Jul 2023 00:25:47 +0300 (EEST) X-GND-Sasl: michael@niedermayer.cc Received: by mail.gandi.net (Postfix) with ESMTPSA id E475E60003 for ; Sat, 8 Jul 2023 21:25:46 +0000 (UTC) From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Sat, 8 Jul 2023 23:25:28 +0200 Message-Id: <20230708212530.109692-16-michael@niedermayer.cc> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20230708212530.109692-1-michael@niedermayer.cc> References: <20230708212530.109692-1-michael@niedermayer.cc> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 16/18] avradio/sdr: rename fft_p2 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: qB5Wrfs1QM+3 The FFT really is from the point of view of the stream Phase 1 not Phase 2 of the demodulation. Signed-off-by: Michael Niedermayer --- libavradio/sdr.h | 4 ++-- libavradio/sdrdemux.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libavradio/sdr.h b/libavradio/sdr.h index 8a2ab1c78a..1582f70d86 100644 --- a/libavradio/sdr.h +++ b/libavradio/sdr.h @@ -95,10 +95,10 @@ typedef struct FIFOElement { typedef struct SDRStream { AVTXContext *ifft_ctx; - AVTXContext *fft_p2_ctx; + AVTXContext *fft_ctx; AVTXContext *ifft_p2_ctx; av_tx_fn ifft; - av_tx_fn fft_p2; + av_tx_fn fft; av_tx_fn ifft_p2; int block_size; int block_size_p2; diff --git a/libavradio/sdrdemux.c b/libavradio/sdrdemux.c index b51fa4296a..1ded01e957 100644 --- a/libavradio/sdrdemux.c +++ b/libavradio/sdrdemux.c @@ -979,7 +979,7 @@ static int demodulate_fm(SDRContext *sdr, int stream_index, AVPacket *pkt) //FIXME this only needs to be a RDFT //CONSIDER, this and in fact alot can be done with bandpass and lowpass filters instead of FFTs, find out which is better //CONSIDER synthesizing the carrier instead of IFFT, we have all parameters for that - sst->fft_p2(sst->fft_p2_ctx, sst->block, sst->iblock, sizeof(AVComplexFloat)); + sst->fft(sst->fft_ctx, sst->block, sst->iblock, sizeof(AVComplexFloat)); // Only the low N/2+1 are used the upper is just a reflection carrier19_i_exact = find_am_carrier(sdr, sst->block, 2*sst->block_size, (void*)(sst->block + 1 + sst->block_size), carrier19_i, 10, 10); @@ -1078,10 +1078,10 @@ static void free_stream(SDRContext *sdr, int stream_index) SDRStream *sst = st->priv_data; av_tx_uninit(&sst->ifft_ctx); - av_tx_uninit(&sst->fft_p2_ctx); + av_tx_uninit(&sst->fft_ctx); av_tx_uninit(&sst->ifft_p2_ctx); sst->ifft = NULL; - sst->fft_p2 = NULL; + sst->fft = NULL; sst->ifft_p2 = NULL; sst->block_size = 0; @@ -1127,7 +1127,7 @@ static int setup_stream(SDRContext *sdr, int stream_index, Station *station) if (sst->station->bandwidth_p2) { //Allocate 2nd stage demodulation fields if needed - ret = av_tx_init(&sst-> fft_p2_ctx, &sst-> fft_p2, AV_TX_FLOAT_FFT, 0, 2*sst->block_size , NULL, 0); + ret = av_tx_init(&sst-> fft_ctx, &sst-> fft, AV_TX_FLOAT_FFT, 0, 2*sst->block_size , NULL, 0); if (ret < 0) return ret;