On Sunday 16 November 2008 04:16:19 pm you wrote:
Programmers are not stupid. However the way how
typical sound
applications are implemented is wrong.
So this is a reason to cripple the API -- because 'typical' application
programmers don't know what they're doing? What about those who *do*?
Network or disk performance
analyzers/monitors/optimizers are good
tools. They are not "ordinary" applications but system tools.
Whatever the semantic difference between 'applications' and 'system tools'
might be, *both* end up having to interact with the hardware via some sort of
API, so I'm not sure that the distinction is particularly meaningful in this
context.
However
it's wrong if programs like Mozilla try to do this kind of functions.
All a web browser does is opening a TCP/IP socket to the
http/ftp/whatever server, sends the request and waits for the response.
Equally well an audio player application should just open a connection
to the audio device, set the rate/format and then just start to play.
They should not try to do things like automatic unmuting the sound card.
Right, but I think you're kind of missing the point. We're not talking about
garden variety 'audio player' applications here. The world of audio --
especially professional audio -- is a much larger place. This doesn't make
such applications 'system tools', merely applications that work outside of
the simple assumptions adequate when designing garden-variety 'audio
players'. To hardwire those simple assumptions into the driver system is IMO
a design error, one that imposes serious limits on the usefulness of the
overall system. Effectively, it's dictating policy in a layer that should be
primarily concerned with mechanism.
Cheers!
|-------------------------------------------------------------------------|
| Frederick F. Gleason, Jr. | Chief Developer |
| | Paravel Systems |
|-------------------------------------------------------------------------|
| The real problem with hunting elephants is carrying the decoys. |
| -- Anonymous |
|-------------------------------------------------------------------------|