[RFC PATCH v2 0/6] ALSA: compress: add support to change codec profile in gapless playback

From: Srinivas Kandagatla
Date: Tue Jul 21 2020 - 13:03:41 EST


For gapless playback it is possible that each track can have different
codec profile with same decoder, for example we have WMA album,
we may have different tracks as WMA v9, WMA v10 and so on
Or if DSP's like QDSP have abililty to switch decoders on single stream
for each track, then this call could be used to set new codec parameters.

Existing code does not allow to change this profile while doing gapless
playback.

This patchset adds new SNDRV_COMPRESS_SET_CODEC_PARAMS IOCTL along with
flags in capablity structure to allow userspace to set this new
parameters required which switching codec profile, either for gapless
or cross fade usecase.

thanks,
srini


Changes since v1:
- split patch into smaller chuncks,
- bump up the version
- added flags in compress capablity structure
- added user for this new functionality.
- add this new call in Documentation.


Srinivas Kandagatla (6):
ALSA: compress: move codec parameter check to a function
ALSA: compress: add new ioctl for setting codec parameters
ALSA: compress: add flags to snd_compr_caps to expose dsp caps
ASoC: compress: add snd_soc_dai_compr_set_codec_params()
ALSA: compress: bump the version
ASoC: q6asm-dai: add support to set_codec_params

.../sound/designs/compress-offload.rst | 6 ++
include/sound/compress_driver.h | 5 ++
include/sound/soc-component.h | 3 +
include/sound/soc-dai.h | 5 ++
include/uapi/sound/compress_offload.h | 10 ++-
sound/core/compress_offload.c | 72 +++++++++++++++++--
sound/soc/qcom/qdsp6/q6asm-dai.c | 33 +++++++++
sound/soc/soc-compress.c | 30 ++++++++
sound/soc/soc-dai.c | 14 ++++
9 files changed, 170 insertions(+), 8 deletions(-)

--
2.21.0