From owner-freebsd-multimedia@FreeBSD.ORG Wed Feb 15 08:30:40 2006 Return-Path: X-Original-To: freebsd-multimedia@FreeBSD.org Delivered-To: freebsd-multimedia@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5549316A422 for ; Wed, 15 Feb 2006 08:30:40 +0000 (GMT) (envelope-from ariff@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE25B43D45; Wed, 15 Feb 2006 08:30:39 +0000 (GMT) (envelope-from ariff@FreeBSD.org) Received: from misaki (root@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with SMTP id k1F8Ubtj007214; Wed, 15 Feb 2006 08:30:38 GMT (envelope-from ariff@FreeBSD.org) Date: Wed, 15 Feb 2006 16:30:02 +0800 From: Ariff Abdullah To: kazuhito@ph.noda.tus.ac.jp Message-Id: <20060215163002.71c997ef.ariff@FreeBSD.org> In-Reply-To: <20051217194604.7e6c08dd.skywizard@MyBSD.org.my> References: <20051217.033715.343188712.kazuhito@ph.noda.tus.ac.jp> <20051217194604.7e6c08dd.skywizard@MyBSD.org.my> Organization: FreeBSD X-Mailer: /usr/local/lib/ruby/1.8/net/smtp.rb Mime-Version: 1.0 Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg="PGP-SHA1"; boundary="Signature=_Wed__15_Feb_2006_16_30_02_+0800_WXCzvgMaZveSV+7y" Cc: freebsd-multimedia@FreeBSD.org Subject: Re: patch for 24-bit soft volume and uaudio's tiny fix X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Feb 2006 08:30:40 -0000 --Signature=_Wed__15_Feb_2006_16_30_02_+0800_WXCzvgMaZveSV+7y Content-Type: text/plain; charset=US-ASCII Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, 17 Dec 2005 19:46:04 +0800 Ariff Abdullah wrote: > On Sat, 17 Dec 2005 03:37:15 +0900 (JST) > Kazuhito HONDA wrote: > > Hello, > >=20 > > We have already had a soft volume, feeder_volume_s16(). > > But it is of 16 bit. So 24-bit sound streams are > > always downgraded to 16-bit before soft volume=20 > > even though a sound device has a 24-bit port. =20 > > Thus 24-bit soft volume is necessary. > >=20 > > This mail has a patch for 24-bit soft volume. > > I tried to use it with `SB Live! 24-bit external' > > and it worked. > >=20 > > And the patch includes a fix of tiny mistakes in uaudio.c, too. > >=20 >=20 > uaudio.c: Obvious mistake that need to be fixed. >=20 > feeder_volume.c: Ok, looks good. My concern is endianess issue, but > this can be ignored for now. I need to examine it > first. >=20 > channel.c: Changes against feeder building process is a bit > sensitive, > some brute testing need to be done here. >=20 (Especially to Kazuhito-san), Latest patchsets (rev. 091) contain: 1) 16/24/32bit feeder_volume 2) 16/24/32bit vchan mixing (default to 16, use sysctl or vchanformat kernel hint to toggle it). 3) Smarter (I would say *perfect*) format scoring during format chaining. 4) Endian/sign-free format conversion 5) Various fixups, especially on hardware, DMA buffer alignment 6) Samples processing are moving towards endian-safe, we just need to enclose varios PCM_READ/WRITE/CLAMP (sound.h) within BYTE_ORDER ifdefs. My concern is 24bit alignment. This patchset enforce strict alignment based on bytes-per-sample, so if the so called "24bit" hardware can really do 24bit alignment, it is pretty much OK. Otherwise, we probably need to swap AFMT_S24_XX -> AFMT_S32_XX within specific driver implementation. -- Ariff Abdullah FreeBSD --Signature=_Wed__15_Feb_2006_16_30_02_+0800_WXCzvgMaZveSV+7y Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (FreeBSD) iD8DBQFD8uaOlr+deMUwTNoRAnm3AJ9MayVDw4bRGkUmYnAM/773bKa8BQCgggad b95V3p67vzvucswCq7RR/Yc= =3fGD -----END PGP SIGNATURE----- --Signature=_Wed__15_Feb_2006_16_30_02_+0800_WXCzvgMaZveSV+7y--