- From: Paul Adenot <paul@paul.cx>
- Date: Mon, 27 May 2013 18:30:09 +0200
- To: public-audio@w3.org
Hi, Currently implementing |AudioContext.maxChannelsCount| in Gecko, I wonder why conforming implementations should return 0 if the channel count cannot be changed by the author. For a regular |AudioContext.destination|, it seems to me that any implementation that supports the default, i.e. stereo, could trivially support mono-output (simply by adding a final down-mixing step before writing the data to the audio sink). Support for multichannel output is easily tested for using |AudioDestinationNode.maxChannelsCount| (which would be > 2 if the hardware supports more than two channels). For an |OfflineAudioContext.destination|, it makes sense that the number of channels becomes non-mutable after the start of the rendering, but returning zero seems inconsistent. Since we are not limited by hardware capabilities, it would make more sense to return the number of channels the implementation accepts without throwing when setting the channel property before starting the rendering, that is somewhat arbitrary but should exist. Forcing the authors to determine the upper limit of |OfflineAudioContext.destination.channels| for a given implementation by using a try/catch and a loop seems bad. On a related note, maybe |MediaStreamAudioDestinationNode| could have a |maxChannelsCount| attribute as well. Thanks, Paul.
Received on Monday, 27 May 2013 21:39:23 UTC