From sac-owner Fri Feb  1 10:46:01 2008
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id m11Ik0FO009732
	for <one-pager@sac.eng.sun.com>; Fri, 1 Feb 2008 10:46:01 -0800 (PST)
Received: from sunmail5.uk.sun.com (localhost [127.0.0.1])
	by sunmail5.uk.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.2) with ESMTP id m11Ijx98002812
	for <one-pager-not-2b-used-directly@sunmail5.uk.sun.com>; Fri, 1 Feb 2008 18:45:59 GMT
Received: (from noaccess@localhost)
	by sunmail5.uk.sun.com (8.13.8+Sun/8.13.8/Submit) id m11IjxIq002811
	for one-pager-not-2b-used-directly; Fri, 1 Feb 2008 18:45:59 GMT
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail5.uk.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.2) with ESMTP id m11IjwdC002797
	for <@sunmail2sca.sfbay.sun.com:one-pager@sun.com>; Fri, 1 Feb 2008 18:45:59 GMT
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JVK00A07PGLVJ00@nwk-avmta-2.sfbay.sun.com> for one-pager@sun.com
 (ORCPT one-pager@sun.com); Fri, 01 Feb 2008 10:45:58 -0800 (PST)
Received: from sca-es-mail-1.sun.com ([192.18.43.132])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JVK00AKWPGLAM50@nwk-avmta-2.sfbay.sun.com> for
 one-pager@sun.com (ORCPT one-pager@sun.com); Fri,
 01 Feb 2008 10:45:57 -0800 (PST)
Received: from fe-sfbay-09.sun.com ([192.18.43.129])
	by sca-es-mail-1.sun.com (8.13.7+Sun/8.12.9) with ESMTP id m11IjvUP010274	for
 <one-pager@sun.com>; Fri, 01 Feb 2008 10:45:57 -0800 (PST)
Received: from conversion-daemon.fe-sfbay-09.sun.com by fe-sfbay-09.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JVK00001OYLCH00@fe-sfbay-09.sun.com>
 (original mail from John.Downing@Sun.COM)
 for one-pager@sun.com (ORCPT one-pager@sun.com); Fri,
 01 Feb 2008 10:45:57 -0800 (PST)
Received: from [129.146.116.110] by fe-sfbay-09.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0JVK002J6PG98XD0@fe-sfbay-09.sun.com> for one-pager@sun.com
 (ORCPT one-pager@sun.com); Fri, 01 Feb 2008 10:45:54 -0800 (PST)
Date: Fri, 01 Feb 2008 10:41:36 -0800
From: John R Downing - Sun Microsystems Inc <John.Downing@sun.com>
Subject: [2008/076]libao: a cross platform audio library
Sender: John.Downing@sun.com
To: one-pager@sun.com
Message-id: <47A367E0.8020705@sun.com>
MIME-version: 1.0
Content-type: multipart/mixed; boundary="Boundary_(ID_6HKpaXdEIKpz/oNWxOYy/g)"
X-PMX-Version: 5.2.0.264296
User-Agent: Thunderbird 2.0.0.4 (X11/20070724)
Status: RO
Content-Length: 4599

This is a multi-part message in MIME format.

--Boundary_(ID_6HKpaXdEIKpz/oNWxOYy/g)
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT



--Boundary_(ID_6HKpaXdEIKpz/oNWxOYy/g)
Content-type: text/plain; name=onepager.libao
Content-transfer-encoding: 7BIT
Content-disposition: inline; filename=onepager.libao

1. Introduction
   1.1. Project/Component Working Name:

        libao: a cross platform audio library

   1.2. Name of Document Author/Supplier:

		John Downing

   1.3. Date of This Document:

                1/22/2008

   1.4. Name of Major Document Customer(s)/Consumer(s):
        1.4.1. The PAC or CPT you expect to review your project:


        1.4.2. The ARC(s) you expect to review your project:

                LSARC

        1.4.3. The Director/VP who is "Sponsoring" this project:

                Jeff Jackson

        1.4.4. The name of your business unit:

                Solaris Hardware Partners


   1.5. Email Aliases:
        1.5.1. Responsible Manager: Sussanne Chang
        1.5.2. Responsible Engineer: John Downing
        1.5.3. Marketing Manager: Chris Baker
        1.5.4. Interest List:

2. Project Summary
   2.1. Project Description:

	Libao is a cross-platform audio library that allows programs to
	output audio using a simple API on a wide variety of platforms. It
	currently supports these file types:

	* WAV files
	* AU files
	* raw files

	And it supports these native audio devices:

	* OSS (Open Sound System, used on Linux and FreeBSD)
	* ALSA (Advanced Linux Sound Architecture)
	* PulseAudio (next generation GNOME sound server)
	* esd (EsounD or Enlightened Sound Daemon)
	* Null output (handy for testing without a sound device)
	* AIX
	* Sun audio system (used in Solaris, OpenBSD, and NetBSD)
	* aRts (Analog Realtime Synthesizer)
	* IRIX
	* NAS (Network Audio Server)

   2.2. Risks and Assumptions:

	Open source APIs can change.  However libao has been stable for the
	last four years.

3. Business Summary
   3.1. Problem Area:

	There are a fair number of both audio file formats and audio devices
	which can be difficult to program.  Libao allows the developer to
	write a single program and compile it on a variety of platforms and
	have the program work which whatever native hardware is on the
	platform.

   3.2. Market/Requester:

   3.3. Business Justification:

	Required as part of Project Indiana.

   3.4. Competitive Analysis:

   3.5. Opportunity Window/Exposure:


   3.6. How will you know when you are done?:


4. Technical Description:

	Libao's API allows programs to output PCM audio data to a variety of
	both native audio devices file formats.  It provides a way to easily
	add cross-platform audio output to your program. Output devices are
	implemented as dynamic plugins, and support for OSS, ESD, ALSA, aRTs,
	NAS, Solaris, AIX, and Irix outputs.  File formats support are WAV, AU
	and raw.

	The libao API makes a distinction between drivers and devices. A driver
	is a set of functions that allow audio to be played on a particular
	platform (i.e. Solaris, ESD, etc.). A device is a particular output
	target that uses a driver. In addition, libao distinguishes between
	live output drivers, which write audio to playback devices (sound
	cards, etc.), and file output drivers, which write audio to disk in
	a particular format. 

	PCM stands for pulse code modulation. In the context of audio coding
	PCM encodes an audio waveform in the time domain as a series of
	amplitudes.

5. Reference Documents:

	Libao web site:

	http://www.xiph.org/ao/

6. Resources and Schedule:
   6.1. Projected Availability:

	March, 2008

   6.2. Cost of Effort:

	One man month for Engineering.  Documentation is already provided.

   6.3. Cost of Capital Resources:

	None.

   6.4. Product Approval Committee requested information:
        6.4.1. Consolidation Name: ON
        6.4.2. Contributing OpCo/BU/Division Name: Sun Hardware Partners
        6.4.3. Type of PAC Review and Approval expected:

                Standard

        6.4.4. Project Boundary Conditions:

        6.4.5. Is this a necessary project for OEM agreements:

		No

        6.4.6. Notes/Dependencies:

        6.4.7. Target RTI Date/Release:

		Sun Freeware - Nevada/March, 2008

        6.4.8. Target Code Design Review Date:

		February, 2008

        6.4.9. Update approval addition:

   6.5. ARC review type:

                Standard

7. Prototype Availability:
   7.1. Prototype Availability:

        Prototype available Solaris

   7.2. Prototype Cost:



--Boundary_(ID_6HKpaXdEIKpz/oNWxOYy/g)--

