9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: James Tomaschke <james@orcasystems.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] audio standards -- too many to choose from
Date: Thu, 13 Aug 2009 16:47:24 -0700	[thread overview]
Message-ID: <4A84A60C.9050201@orcasystems.com> (raw)
In-Reply-To: <3d3385604e20801b070c4d136bb01577@quanstro.net>

erik quanstrom wrote:
>>> My list was only there to try and prove the point that Russ has
>>> made -- pick a most common format and stick with it. Convert
>>> everything else into it.
>> By this logic, I need to have my application to convert CDROM-XA ADPCM
>> audio from a device into PCM just to talk to an interface, which in turn
>> must convert it back into ADPCM to play it back because the DMA
>> transfers to the audio hardware buffer require ADPCM.
>
> the problem with supporting everything the hardware will
> do is that it's quite expensive in terms of development time.
> and that is the scarce resource that needs to be optimized.
Creative Labs made an EMU10K1x chipset, the "x" means that it came with
no hardware mixer.  The software driver had to perform the mixing before
sending it to the hardware.  A device driver that only exposes what the
hardware has is much more simple than one that patches missing
functionality in the software driver.

However if you are instead suggesting that it will take time to support
other formats other than signed 16-bit little-endian samples.  I have no
problem with a driver developer initially starting there leaving it
incomplete.  At least someone has the potential to add such support.

> it also will make the interfaces much bulkier because you have
> to make accomidations for the quirks of n formats.
>
> you're right, there is a cost.  simple is expensive.
>
> - erik
I don't see the complexity, the interface merely needs to allow device
drivers to provide the information such as "I support x y z", the
application can query a "features" file, select a format and write back
through the interface configuring the hardware.  The interface need not
have any predetermined knowledge of available formats.  The only issue
would be for each device driver to agree to call the same format by the
same name, "s8 s16le s24be".

To support multiple mix buffers or audio channels, the interface only
needs to iterate information provided by the driver.  Again, there is no
requirement that initial device driver development need support all
possible features.



  parent reply	other threads:[~2009-08-13 23:47 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-12  1:08 Tim Newsham
2009-08-12  1:14 ` erik quanstrom
2009-08-12  1:31   ` Tim Newsham
2009-08-12  1:45     ` erik quanstrom
2009-08-12  2:07       ` Tim Newsham
2009-08-12  3:14         ` ron minnich
2009-08-12  3:24           ` erik quanstrom
2009-08-12  4:49             ` Charles Forsyth
2009-08-12  4:24           ` Russ Cox
2009-08-12  4:35             ` Charles Forsyth
2009-08-12 15:12               ` Russ Cox
2009-08-12  4:36             ` Roman Shaposhnik
2009-08-12 15:36               ` hiro
2009-08-14  2:45                 ` Roman V. Shaposhnik
2009-08-14 13:56                   ` hiro
2009-08-12  5:15             ` Tim Newsham
2009-08-12  5:39               ` Roman Shaposhnik
2009-08-12  8:28                 ` Tim Newsham
2009-08-12  9:30                   ` Steve Simon
2009-08-13  2:16                   ` Roman Shaposhnik
2009-08-13  3:17                     ` erik quanstrom
2009-08-13 22:48                     ` James Tomaschke
2009-08-13 22:52                       ` erik quanstrom
2009-08-13 23:19                         ` Christopher Nielsen
2009-08-13 23:47                         ` James Tomaschke [this message]
2009-08-14  0:00                           ` erik quanstrom
2009-08-14  1:13                             ` James Tomaschke
2009-08-14  1:41                               ` Anthony Sorace
2009-08-14  2:30                                 ` James Tomaschke
2009-08-14  1:42                               ` Devon H. O'Dell
2009-08-14  1:51                                 ` Devon H. O'Dell
2009-08-14  2:22                                 ` James Tomaschke
2009-08-14  3:16                                   ` Charles Forsyth
2009-08-14  3:42                                     ` James Tomaschke
2009-08-14  7:04                                       ` Charles Forsyth
2009-08-14 20:43                                         ` James Tomaschke
2009-08-15  9:26                                           ` Steve Simon
2009-08-14 13:16                                     ` matt
2009-08-14  4:51                                   ` Devon H. O'Dell
2009-08-14  5:01                                     ` Devon H. O'Dell
2009-08-14  5:56                                       ` James Tomaschke
2009-08-19  9:58                                         ` matt
2009-08-14  5:18                                     ` James Tomaschke
2009-08-14 14:39                                       ` Devon H. O'Dell
2009-08-14  9:16                                   ` Paul Donnelly
2009-08-14 13:47                                     ` hiro
2009-08-14 20:03                         ` Tim Newsham
2009-08-14 21:24                   ` sqweek
2009-08-14 21:54                     ` Skip Tavakkolian
2009-08-15 12:23                       ` hiro
2009-08-14 22:05                     ` Bakul Shah
2009-08-12  5:43               ` Anthony Sorace
2009-08-12  5:59                 ` Roman Shaposhnik
2009-08-12  6:11                   ` Roman Shaposhnik
2009-08-12 11:18                   ` erik quanstrom
2009-08-13  2:06                     ` Roman Shaposhnik
2009-08-12 22:11             ` James Tomaschke
2009-08-13  7:45             ` Skip Tavakkolian
2009-08-12  4:20         ` Roman Shaposhnik
2009-08-12  4:25           ` erik quanstrom
2009-08-12  4:50             ` Roman Shaposhnik
2009-08-12  5:10               ` Tim Newsham
2009-08-12  5:25                 ` Roman Shaposhnik
2009-08-12 15:42                 ` David Leimbach
2009-08-12  5:15               ` Anthony Sorace
2009-08-13  6:42               ` Skip Tavakkolian
2009-08-13 13:07                 ` erik quanstrom
2009-08-13 13:30                   ` Skip Tavakkolian
2009-08-13 13:31                   ` Devon H. O'Dell
2009-08-13 14:31                     ` Anthony Sorace
2009-08-13 14:41                       ` Devon H. O'Dell
2009-08-13 17:20                       ` hiro
2009-08-12 15:30             ` hiro
2009-08-12  5:54 ` Lawrence E. Bakst
2009-08-12  6:13   ` Roman Shaposhnik
2009-08-12 19:50 ` Tim Newsham
2009-08-12 20:57   ` Bakul Shah
2009-08-13  2:18   ` Roman Shaposhnik
2009-08-13  3:46     ` Tim Newsham
2009-08-13 17:00       ` Devon H. O'Dell
2009-08-13 19:13         ` Christopher Nielsen
2009-08-15  0:44 erik quanstrom

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=4A84A60C.9050201@orcasystems.com \
    --to=james@orcasystems.com \
    --cc=9fans@9fans.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 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).