devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vinod Koul <vinod.koul@intel.com>
To: Qais Yousef <qais.yousef@imgtec.com>
Cc: Clemens Ladisch <clemens@ladisch.de>,
	linux-kernel@vger.kernel.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	alsa-devel@alsa-project.org, Neil Jones <neil.jones@imgtec.com>,
	Arnd Bergmann <arnd@arndb.de>,
	devicetree@vger.kernel.org
Subject: Re: [alsa-devel] [PATCH 00/11] Add AXD Audio Processing IP driver
Date: Wed, 29 Oct 2014 10:48:14 +0530	[thread overview]
Message-ID: <20141029051814.GR28745@intel.com> (raw)
In-Reply-To: <544F97A4.7080209@imgtec.com>

On Tue, Oct 28, 2014 at 01:18:28PM +0000, Qais Yousef wrote:
> On 10/28/2014 11:55 AM, Clemens Ladisch wrote:
> >Qais Yousef wrote:
> >>AXD Audio Processing IP performs audio decoding, encoding, mixing, equalisation,
> >>synchronisation and playback.
> >What exactly do you mean with "synchronisation" and "playback"?
> 
> Synchronisation refers to accurate audio playout relative to a master
> clock source including compensation of drift between the master clock
> source and the playout clock of the audio hardware. Hence allowing
> synchronised audio playout across multiple independent devices.
> 
> Playback simple refers to the fact that AXD is capable of managing audio
> playout hardware like I2S and SPDIF interfaces.
> 
> 
> >>It doesn't fit in alsa subsystem but I Cced them to confirm.
> >... because those two words sound like something that a sound card could do.
> 
> The problem mainly stems from the fact that we take a variety of
> compressed audio as input and we could perform audio encoding. The
> problem with the compressed audio is that the range of decoders and
> configuration supported in alsa is limited and there's no support for
FWIW ALSA does not support decoders. The compressed ALSA API allows you to
encode or decode your conent on a DSP, it provides API for that

If you have an additional need for a decoder or an encoder which is not
listed, feel free to send a patch!
The most important point is frameowrk is there for thsi so you need to use
that and add whatever is not supported

> taking raw pcm and producing compressed output. I'm not an expert on
> alsa but when I looked it looked like there's more infra structure
> required.
I disagree. You can use alsa PCM device to send pcm data and then use alsa
compressed device to take back the compressed content. The two devices need
to be "connected" using DPCM and DAPM frameowork availble. It should work
with little or no changes

> 
> The following not supported points from Documentation/sound/alsa/compress_offload.txt affect us:
> 
> - Volume control/routing is not handled by this API. Devices exposing a
>   compressed data interface will be considered as regular ALSA devices;
>   volume changes and routing information will be provided with regular
>   ALSA kcontrols.
And why can't you use ALSA kcontrols for volume??
> 
> - Embedded audio effects. Such effects should be enabled in the same
>   manner, no matter if the input was PCM or compressed.
Again why can't you use ALSA kcontrol for effects, be it PCM or compressed
progarmming an EQ thru alsa kcontrol remains same
> 
> - Encoding/decoding acceleration is not supported as mentioned
>   above. 
Wrong on this count

> It is possible to route the output of a decoder to a capture
>   stream, or even implement transcoding capabilities. This routing
>   would be enabled with ALSA kcontrols.
Yes and it should work

> >>I added it to drivers/char as this is the best location I could think of at the
> >>moment.
> >drivers/misc?
> 
> Yeah could do if there's consensus.
NAK for that, this should be an ALSA driver

-- 
~Vinod

  parent reply	other threads:[~2014-10-29  5:18 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-28 11:26 [PATCH 00/11] Add AXD Audio Processing IP driver Qais Yousef
2014-10-28 11:26 ` [PATCH 02/11] dt: bindings: add AXD Audio Processing IP binding document Qais Yousef
2014-10-28 11:26 ` [PATCH 03/11] drivers: char: add AXD Audio Processing IP driver Qais Yousef
2014-10-28 14:10   ` Greg Kroah-Hartman
     [not found]     ` <20141028141038.GA18384-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2014-10-28 14:36       ` Qais Yousef
     [not found]         ` <544FA9F7.1020101-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
2014-10-28 14:50           ` Greg Kroah-Hartman
2014-10-29  5:33   ` [alsa-devel] " Vinod Koul
2014-10-28 11:55 ` [PATCH 00/11] Add " Clemens Ladisch
2014-10-28 13:18   ` Qais Yousef
     [not found]     ` <544F97A4.7080209-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
2014-10-28 14:13       ` Greg Kroah-Hartman
2014-10-28 15:05         ` Qais Yousef
2014-10-29  2:50           ` Greg Kroah-Hartman
2014-10-29  5:24             ` [alsa-devel] " Vinod Koul
2014-10-29 10:48               ` Qais Yousef
2014-10-29  5:20         ` Vinod Koul
2014-10-28 14:54     ` Lars-Peter Clausen
2014-10-28 15:33       ` Qais Yousef
2014-10-28 16:04         ` [alsa-devel] " Lars-Peter Clausen
2014-10-29  5:18     ` Vinod Koul [this message]
2014-10-29 15:06     ` Pierre-Louis Bossart
2014-10-28 12:06 ` Lars-Peter Clausen
2014-10-28 13:21   ` Qais Yousef

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20141029051814.GR28745@intel.com \
    --to=vinod.koul@intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=arnd@arndb.de \
    --cc=clemens@ladisch.de \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=neil.jones@imgtec.com \
    --cc=qais.yousef@imgtec.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).