United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
JDK-4776511 : RFE: Setting the default MixerProvider

Details
Type:
Enhancement
Submit Date:
2002-11-09
Status:
Resolved
Updated Date:
2003-09-27
Project Name:
JDK
Resolved Date:
2003-09-27
Component:
client-libs
OS:
generic
Sub-Component:
javax.sound
CPU:
generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
1.4.1
Fixed Versions:
5.0 (tiger)

Related Reports
Duplicate:
Relates:
Relates:

Sub Tasks

Description

Name: fb126949			Date: 11/08/2002


Currently, Java Sound uses a default mixer provider when you do not specify a specific Mixer. The spec does not define how this default mixer provider is chosen. 3rd party plugins can provide custom MixerProvider implementations, which will be taken as default in 1.4.2 (the last found provider will be used as default). However, it is impossible to use one of the provided MixerProviders that ship with Java Sound, e.g. to allow binary Java programs benefit of new functionality of secondary MixerProviders (e.g. ALSA on Linux).

The solution is to use a system property, similar as explained in the documentation of the method provider()in class java.nio.channels.spi.SelectorProvider. The system property would be named "javax.sound.sampled.spi.MixerProvider" and its content would be the fully qualified classpath of the class to be used as default mixer provider. If the specified default mixer provider class is not accessible, or does not exist, the system property will be ignored.

Such a mechanism allows portable code to use special features. It is also fully backwards and forward compatible: it integrates easily with the planned extension to Java Sound's service provider mechanism in 1.5.0 (see 4666881: RFE: Add methods to load and unload service providers at runtime).

This RFE applies equally to MidiDeviceProvider.


======================================================================

                                    

Comments
EVALUATION


###@###.### 2002-11-08
	Would be nice to have in Mantis.
                                     
2002-11-08
PUBLIC COMMENTS

RFE: Setting the default MixerProvider
                                     
2004-06-10
SUGGESTED FIX

see http://bome/Webrevs/Mantis/4776511-DefaultMixer/
                                     
2004-06-11
WORK AROUND


###@###.### 2002-11-08
	Currently, the only way of setting the default service provider is by putting a jar containing it and its service provider configuration file into the bootclasspath with the non-portable -X parameter to the java executable. This workaround is unusable for deployment of actual products like FreeTTS.
                                     
2004-06-11
CONVERTED DATA

BugTraq+ Release Management Values

COMMIT TO FIX:
tiger

FIXED IN:
tiger

INTEGRATED IN:
tiger
tiger-b22


                                     
2004-06-14



Hardware and Software, Engineered to Work Together