From: Stefan Richter <stefanr@s5r6.in-berlin.de>
To: Jonathan Woithe <jwoithe@just42.net>
Cc: alsa-devel@alsa-project.org,
linux1394-devel@lists.sourceforge.net, ffado-devel@lists.sf.net
Subject: Re: Echo Fireworks control protocol (was Re: Sample program for hwdep interface)
Date: Sun, 9 Feb 2014 15:51:45 +0100 [thread overview]
Message-ID: <20140209155145.2175d147@stein> (raw)
In-Reply-To: <20140209114228.GB15049@marvin.atrad.com.au>
On Feb 09 Jonathan Woithe wrote:
> On Sat, Feb 08, 2014 at 10:22:40PM +0900, Takashi Sakamoto wrote:
> > >I understood from Clemens' comments that ... the mixer applications are
> > >supposed to use firewire-cdev for all their other dealings with the audio
> > >devices. (Clemens and Jonathan, correct me if I misunderstood or if I
> > >forgot other control and status I/O that is only possible with direct
> > >cooperation by the ALSA driver.)
> >
> > I don't know his future plan. But according to his advices, my
> > current work is to focus on streaming driver. Currently the
> > functionality to control device's internal mixer should be
> > implemented in user-land application, not in ALSA drivers.
>
> As per an earlier followup, the current intention is indeed to keep the
> mixer control in userspace.
Sure, definitely; my point was that the kernel ABI which userspace mixer
applications are going to use could be
a) the ALSA hwdep interface, or
b) the ALSA hwdep interface together with firewire-core's firewire-cdev
interface,
but I understood that b) is the first choice. Specifically, provide in
ALSA hwdep only the absolutely necessary interfaces and do as much as
possible via firewire-cdev.
In contrast, it can't be firewire-cdev alone because of streaming on/off
state influences what can be controlled, and because some devices embed
status into the isochronous stream (MotU? RME?), and because some devices
(which ones?) may have write-only registers, of which both streaming
driver and mixer application want to know what is being written there.
Furthermore, it can't be a kernel interface like sysfs or configfs because
of the complexity and variety of control protocols of FireWire audio
devices.
--
Stefan Richter
-=====-====- --=- -=--=
http://arcgraph.de/sr/
------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
next prev parent reply other threads:[~2014-02-09 14:51 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-20 13:13 [RFC v2][PATCH 00/38] Enhancement for support of some firewire devices Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 01/38] firewire-lib: Rename functions, structure, member for AMDTP Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 02/38] firewire-lib: Add macros instead of fixed value " Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 03/38] firewire-lib: Add 'direction' member to 'amdtp_stream' structure Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 04/38] firewire-lib: Split some codes into functions to reuse for both streams Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 05/38] firewire-lib: Add support for AMDTP in-stream and PCM capture Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 06/38] firewire-lib: Add support for MIDI capture/playback Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 07/38] firewire-lib: Give syt value as parameter to handle_out_packet() Takashi Sakamoto
2013-12-20 13:13 ` [PATCH 08/38] firewire-lib: Add support for duplex streams synchronization in blocking mode Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 09/38] firewire-lib: Add sort function for transmitted packet Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 10/38] firewire-lib: Add transfer delay to synchronized duplex streams Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 11/38] firewire-lib: Add support for channel mapping Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 12/38] firewire-lib: Rename macros, variables and functions for CMP Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 13/38] firewire-lib: Add 'direction' member to 'cmp_connection' structure Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 14/38] firewire-lib: Add handling output connection by CMP Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 15/38] firewire-lib: Add a new function to check others' connection Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 16/38] firewire-lib: Add some AV/C general commands Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 17/38] firewire-lib: Add quirks for Fireworks Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 18/38] fireworks: Add skelton for Fireworks based devices Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 19/38] fireworks: Add transaction and some commands Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 20/38] fireworks: Add connection and stream management Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 21/38] fireworks: Add proc interface for debugging purpose Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 22/38] fireworks: Add MIDI interface Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 23/38] fireworks: Add PCM interface Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 24/38] fireworks: Add hwdep interface Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 25/38] fireworks: Add command/response functionality into " Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 26/38] bebob: Add skelton for BeBoB based devices Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 27/38] bebob: Add commands and connections/streams management Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 28/38] bebob: Add proc interface for debugging purpose Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 29/38] bebob: Add MIDI interface Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 30/38] bebob: Add PCM interface Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 31/38] bebob: Add hwdep interface Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 32/38] bebob: Prepare for device specific operations Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 33/38] bebob: Add support for Terratec PHASE, EWS series and Aureon Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 34/38] bebob: Add support for Yamaha GO series Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 35/38] bebob: Add support for Focusrite Saffire/SaffirePro series Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 36/38] bebob: Add support for M-Audio usual Firewire series Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 37/38] bebob: Add support for M-Audio special " Takashi Sakamoto
2013-12-20 13:14 ` [PATCH 38/38] bebob: Send a cue to load firmware for M-Audio " Takashi Sakamoto
2013-12-20 14:46 ` Sample program for hwdep interface Takashi Sakamoto
2013-12-21 10:11 ` [FFADO-devel] " Jonathan Woithe
2013-12-21 13:48 ` Clemens Ladisch
2014-01-05 11:18 ` Takashi Sakamoto
2014-01-12 13:22 ` Stefan Richter
2014-01-12 15:26 ` Takashi Sakamoto
2014-02-02 13:58 ` Echo Fireworks control protocol (was Re: Sample program for hwdep interface) Stefan Richter
2014-02-08 13:22 ` Takashi Sakamoto
2014-02-09 11:42 ` Jonathan Woithe
2014-02-09 14:51 ` Stefan Richter [this message]
2014-02-09 16:53 ` Takashi Sakamoto
2014-02-09 22:29 ` Jonathan Woithe
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=20140209155145.2175d147@stein \
--to=stefanr@s5r6.in-berlin.de \
--cc=alsa-devel@alsa-project.org \
--cc=ffado-devel@lists.sf.net \
--cc=jwoithe@just42.net \
--cc=linux1394-devel@lists.sourceforge.net \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.