src/share/classes/com/sun/media/sound/DirectAudioDevice.java

Print this page

        

*** 92,102 **** } if (Printer.trace) Printer.trace("<< DirectAudioDevice: constructor completed"); } private DirectDLI createDataLineInfo(boolean isSource) { ! Vector formats = new Vector(); AudioFormat[] hardwareFormatArray = null; AudioFormat[] formatArray = null; synchronized(formats) { nGetFormats(getMixerIndex(), getDeviceID(), --- 92,102 ---- } if (Printer.trace) Printer.trace("<< DirectAudioDevice: constructor completed"); } private DirectDLI createDataLineInfo(boolean isSource) { ! Vector<AudioFormat> formats = new Vector<>(); AudioFormat[] hardwareFormatArray = null; AudioFormat[] formatArray = null; synchronized(formats) { nGetFormats(getMixerIndex(), getDeviceID(),
*** 105,115 **** if (formats.size() > 0) { int size = formats.size(); int formatArraySize = size; hardwareFormatArray = new AudioFormat[size]; for (int i = 0; i < size; i++) { ! AudioFormat format = (AudioFormat)formats.elementAt(i); hardwareFormatArray[i] = format; int bits = format.getSampleSizeInBits(); boolean isSigned = format.getEncoding().equals(AudioFormat.Encoding.PCM_SIGNED); boolean isUnsigned = format.getEncoding().equals(AudioFormat.Encoding.PCM_UNSIGNED); if ((isSigned || isUnsigned)) { --- 105,115 ---- if (formats.size() > 0) { int size = formats.size(); int formatArraySize = size; hardwareFormatArray = new AudioFormat[size]; for (int i = 0; i < size; i++) { ! AudioFormat format = formats.elementAt(i); hardwareFormatArray[i] = format; int bits = format.getSampleSizeInBits(); boolean isSigned = format.getEncoding().equals(AudioFormat.Encoding.PCM_SIGNED); boolean isUnsigned = format.getEncoding().equals(AudioFormat.Encoding.PCM_UNSIGNED); if ((isSigned || isUnsigned)) {
*** 263,273 **** int getMaxSimulLines() { return ((DirectAudioDeviceProvider.DirectAudioDeviceInfo) getMixerInfo()).getMaxSimulLines(); } ! private static void addFormat(Vector v, int bits, int frameSizeInBytes, int channels, float sampleRate, int encoding, boolean signed, boolean bigEndian) { AudioFormat.Encoding enc = null; switch (encoding) { case PCM: enc = signed?AudioFormat.Encoding.PCM_SIGNED:AudioFormat.Encoding.PCM_UNSIGNED; --- 263,273 ---- int getMaxSimulLines() { return ((DirectAudioDeviceProvider.DirectAudioDeviceInfo) getMixerInfo()).getMaxSimulLines(); } ! private static void addFormat(Vector<AudioFormat> v, int bits, int frameSizeInBytes, int channels, float sampleRate, int encoding, boolean signed, boolean bigEndian) { AudioFormat.Encoding enc = null; switch (encoding) { case PCM: enc = signed?AudioFormat.Encoding.PCM_SIGNED:AudioFormat.Encoding.PCM_UNSIGNED;
*** 336,346 **** * for formats with wrong endianness. */ private static final class DirectDLI extends DataLine.Info { final AudioFormat[] hardwareFormats; ! private DirectDLI(Class clazz, AudioFormat[] formatArray, AudioFormat[] hardwareFormatArray, int minBuffer, int maxBuffer) { super(clazz, formatArray, minBuffer, maxBuffer); this.hardwareFormats = hardwareFormatArray; } --- 336,346 ---- * for formats with wrong endianness. */ private static final class DirectDLI extends DataLine.Info { final AudioFormat[] hardwareFormats; ! private DirectDLI(Class<?> clazz, AudioFormat[] formatArray, AudioFormat[] hardwareFormatArray, int minBuffer, int maxBuffer) { super(clazz, formatArray, minBuffer, maxBuffer); this.hardwareFormats = hardwareFormatArray; }
*** 1455,1465 **** return buf; } } // class DirectBAOS ! private static native void nGetFormats(int mixerIndex, int deviceID, boolean isSource, Vector formats); private static native long nOpen(int mixerIndex, int deviceID, boolean isSource, int encoding, --- 1455,1465 ---- return buf; } } // class DirectBAOS ! @SuppressWarnings("rawtypes") private static native void nGetFormats(int mixerIndex, int deviceID, boolean isSource, Vector formats); private static native long nOpen(int mixerIndex, int deviceID, boolean isSource, int encoding,