Re: [PATCH] ALSA: compress: Add AC3, EAC3, TrueHD, DTS, MPEG-H 3D Audio Stream (MHAS)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 12/6/22 08:53, Carlos Rafael Giani wrote:
> These audio codecs are used in sound bars and digital TVs, and benefit
> from off-loading to a DSP. In particular, Dolby Atmos and MPEG-H 3D audio
> spatialization is done in dedicated DSPs. Thus, adding these codecs  to
> the Compress-Offload API makes sense.

The question is "how is the stream transported". In most implementations
for these formats, the DSP is on the receiver side and the transport
happens with an IEC61937 format - which does not require the use of the
compressed API.

> Signed-off-by: Carlos Rafael Giani <crg7475@xxxxxxxxxxx>
> ---
>  include/uapi/sound/compress_params.h | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/include/uapi/sound/compress_params.h b/include/uapi/sound/compress_params.h
> index ddc77322d571..7a58e2026be3 100644
> --- a/include/uapi/sound/compress_params.h
> +++ b/include/uapi/sound/compress_params.h
> @@ -43,7 +43,13 @@
>  #define SND_AUDIOCODEC_BESPOKE               ((__u32) 0x0000000E)
>  #define SND_AUDIOCODEC_ALAC                  ((__u32) 0x0000000F)
>  #define SND_AUDIOCODEC_APE                   ((__u32) 0x00000010)
> -#define SND_AUDIOCODEC_MAX                   SND_AUDIOCODEC_APE
> +#define SND_AUDIOCODEC_AC3                   ((__u32) 0x00000011)
> +#define SND_AUDIOCODEC_EAC3                  ((__u32) 0x00000012)
> +#define SND_AUDIOCODEC_TRUEHD                ((__u32) 0x00000013)
> +#define SND_AUDIOCODEC_DTS                   ((__u32) 0x00000014)

IIRC there are multiple flavors of DTS, off the top of my head DTS-ES,
96, HD, Master Audio. "DTS" only doesn't even begin to describe the
possible variants.

> +/* MPEG-H 3D Audio Stream (MHAS) as defined in ISO/IEC 23008-3 */
> +#define SND_AUDIOCODEC_MHAS                  ((__u32) 0x00000015)

Doesn't this need the definition of profiles and various types of
formats - classic problem with designed-by-committee MPEG codecs.

> +#define SND_AUDIOCODEC_MAX                   SND_AUDIOCODEC_MHAS


>  /*
>   * Profile and modes are listed with bit masks. This allows for a



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux