[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87plbm8uni.wl-tiwai@suse.de>
Date: Fri, 19 Sep 2025 15:00:01 +0200
From: Takashi Iwai <tiwai@...e.de>
To: Alexey Klimov <alexey.klimov@...aro.org>
Cc: Vinod Koul <vkoul@...nel.org>,
Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.com>,
Srinivas Kandagatla <srini@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>,
Patrick Lai <plai@....qualcomm.com>,
Annemarie Porter <annemari@...cinc.com>,
srinivas.kandagatla@....qualcomm.com,
linux-sound@...r.kernel.org,
linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
kernel@....qualcomm.com,
Ekansh Gupta <ekansh.gupta@....qualcomm.com>,
Pierre-Louis Bossart <pierre-louis.bossart@...ux.dev>
Subject: Re: [PATCH v3 0/3] Add raw OPUS codec support for compress offload
On Wed, 17 Sep 2025 09:32:49 +0200,
Alexey Klimov wrote:
>
> This series adds support in kernel to recognise raw (or plain) OPUS
> codec playback for compress offloading. At this point this series
> doesn't deal with OPUS packets packed in any kind of containers (OGG or
> others) and focuses on adding missing bits for pure OPUS packets.
>
> The second patch adds its usage in Qualcomm Audio DSP code. To correctly
> recognise raw OPUS packets by qdsp6, each packets needs to be prepended
> with 4-bytes field that contains length of a raw OPUS packet.
> It is expected to be useful for usecases when OPUS packets are streamed
> over network and they are not encapsulated in a container. Userspace
> application that will use the compress API has to manually add such
> 4-bytes long field to each OPUS packet.
>
> This is tested on sm8750-mtp. It is expected that next hardware revisions
> will also support raw OPUS codec offloading.
>
> Dependencies are:
> -- hardware with DSP that supports decoding OPUS packets (>= Qualcomm sm8750);
> -- adsp fastrpc;
> -- explicitly setting format in sm8750 soundcard driver
> https://lore.kernel.org/linux-sound/20250911154340.2798304-1-alexey.klimov@linaro.org/
> -- running adsprpcd tool with support for Audio PD and DSP libraries
> loading support (or its alternative);
> -- tinycompress fcplay tool that will prepare raw opus packets and
> do the required addition of length field;
> -- mfc module in topology compress-playback path, that module is
> expected to parse channel mapping and do the required things to
> map streams/channels to physically-present output channels on backend.
>
> The userspace tinycompress tool with support for raw OPUS compress
> playback is located here:
> https://github.com/laklimov/tinycompress_opus
> branch: opus_v3_workinprogress
>
> The userspace tool is not expected that it is ready and still needs
> some work, for instance recognition that it runs on Qualcomm hardware.
> More like working PoC.
>
> Signed-off-by: Alexey Klimov <alexey.klimov@...aro.org>
Applied now to for-next branch for 6.18.
For further improvements, please submit on top of that.
thanks,
Takashi
Powered by blists - more mailing lists