Subject: PCM8 vs. PCM16/LINEAR?
To: None <mike.long@analog.com>
From: Ignatios Souvatzis <ignatios@theory.cs.uni-bonn.de>
List: tech-kern
Date: 08/03/1995 16:42:36
   Date: Wed, 2 Aug 95 11:44:56 EDT
   From: Mike Long <mike.long@analog.com>
   Organization: Analog Devices CPD
   Reply-To: Mike Long <mike.long@analog.com>
   Sender: owner-tech-kern@NetBSD.ORG
   Precedence: list
   X-Loop: tech-kern@NetBSD.ORG

   I'd like to propose this solution to the whole LINEAR
   vs. PCM{8,16} problem:

   1) AUDIO_ENCODING_PCM16 and AUDIO_ENCODING_PCM8 go away.  Use
      AUDIO_ENCODING_LINEAR instead.
   2) the format_id member of struct audio_encoding is replaced by two
      new members: encoding and precision.  Valid combinations are:

	   encoding	precision	sample rate
	   --------	---------	-----------
	   ULAW		8
	   ALAW		8
	   LINEAR	8, 16, 24, ...
	   ADPCM	?
AFAIK, there are at least:
	ADPCM_ROCKWELL	2,3,4		7200
	ADPCM_ZYXEL	3,4(?)		9600
	ADPCM_INTEL	4		?	(I have sample code at home)
	ADPCM_CCITT	?		?	(I have most of the docs home)

all with different adaptation coefficients, the CCITT version (I think
new Sparcstations can do it at devicedriver or hardware level) even
has 2 different sets of coefficients, which decay with different time
constants. 

Regards,
	Ignatios Souvatzis