src/share/classes/javax/sound/sampled/AudioFormat.java

Print this page


   1 /*
   2  * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


  68  *
  69  * <p>An <code>AudioFormat</code> object can include a set of
  70  * properties. A property is a pair of key and value: the key
  71  * is of type <code>String</code>, the associated property
  72  * value is an arbitrary object. Properties specify
  73  * additional format specifications, like the bit rate for
  74  * compressed formats. Properties are mainly used as a means
  75  * to transport additional information of the audio format
  76  * to and from the service providers. Therefore, properties
  77  * are ignored in the {@link #matches(AudioFormat)} method.
  78  * However, methods which rely on the installed service
  79  * providers, like {@link AudioSystem#isConversionSupported
  80  * (AudioFormat, AudioFormat) isConversionSupported} may consider
  81  * properties, depending on the respective service provider
  82  * implementation.
  83  *
  84  * <p>The following table lists some common properties which
  85  * service providers should use, if applicable:
  86  *
  87  * <table border=0>

  88  *  <tr>
  89  *   <th>Property key</th>
  90  *   <th>Value type</th>
  91  *   <th>Description</th>
  92  *  </tr>
  93  *  <tr>
  94  *   <td>&quot;bitrate&quot;</td>
  95  *   <td>{@link java.lang.Integer Integer}</td>
  96  *   <td>average bit rate in bits per second</td>
  97  *  </tr>
  98  *  <tr>
  99  *   <td>&quot;vbr&quot;</td>
 100  *   <td>{@link java.lang.Boolean Boolean}</td>
 101  *   <td><code>true</code>, if the file is encoded in variable bit
 102  *       rate (VBR)</td>
 103  *  </tr>
 104  *  <tr>
 105  *   <td>&quot;quality&quot;</td>
 106  *   <td>{@link java.lang.Integer Integer}</td>
 107  *   <td>encoding/conversion quality, 1..100</td>


   1 /*
   2  * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


  68  *
  69  * <p>An <code>AudioFormat</code> object can include a set of
  70  * properties. A property is a pair of key and value: the key
  71  * is of type <code>String</code>, the associated property
  72  * value is an arbitrary object. Properties specify
  73  * additional format specifications, like the bit rate for
  74  * compressed formats. Properties are mainly used as a means
  75  * to transport additional information of the audio format
  76  * to and from the service providers. Therefore, properties
  77  * are ignored in the {@link #matches(AudioFormat)} method.
  78  * However, methods which rely on the installed service
  79  * providers, like {@link AudioSystem#isConversionSupported
  80  * (AudioFormat, AudioFormat) isConversionSupported} may consider
  81  * properties, depending on the respective service provider
  82  * implementation.
  83  *
  84  * <p>The following table lists some common properties which
  85  * service providers should use, if applicable:
  86  *
  87  * <table border=0>
  88  *  <caption>Audio Format Property Keys</caption>
  89  *  <tr>
  90  *   <th>Property key</th>
  91  *   <th>Value type</th>
  92  *   <th>Description</th>
  93  *  </tr>
  94  *  <tr>
  95  *   <td>&quot;bitrate&quot;</td>
  96  *   <td>{@link java.lang.Integer Integer}</td>
  97  *   <td>average bit rate in bits per second</td>
  98  *  </tr>
  99  *  <tr>
 100  *   <td>&quot;vbr&quot;</td>
 101  *   <td>{@link java.lang.Boolean Boolean}</td>
 102  *   <td><code>true</code>, if the file is encoded in variable bit
 103  *       rate (VBR)</td>
 104  *  </tr>
 105  *  <tr>
 106  *   <td>&quot;quality&quot;</td>
 107  *   <td>{@link java.lang.Integer Integer}</td>
 108  *   <td>encoding/conversion quality, 1..100</td>