SoundbankReader (Java Platform SE 8 )
Keywords: javax.sound.midi.spi.SoundbankReader class
Date: 2026-04-17

javax.sound.midi.spi

## Class SoundbankReader

- java.lang.Object
- - javax.sound.midi.spi.SoundbankReader

-     public abstract class SoundbankReader
      extends Object

  A `SoundbankReader` supplies soundbank file-reading services. Concrete subclasses of `SoundbankReader` parse a given soundbank file, producing a `Soundbank` object that can be loaded into a `Synthesizer`.
  Since:
    1.3

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SoundbankReader()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract Soundbank` | `getSoundbank(File file)` Obtains a soundbank object from the `File` provided.
    `abstract Soundbank` | `getSoundbank(InputStream stream)` Obtains a soundbank object from the `InputStream` provided.
    `abstract Soundbank` | `getSoundbank(URL url)` Obtains a soundbank object from the URL provided.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SoundbankReader

          public SoundbankReader()

  - ### Method Detail

    - #### getSoundbank

          public abstract Soundbank getSoundbank(URL url)
                                          throws InvalidMidiDataException,
                                                 IOException

      Obtains a soundbank object from the URL provided.
      Parameters:
        `url` - URL representing the soundbank.
      Returns:
        soundbank object
      Throws:
        `InvalidMidiDataException` - if the URL does not point to valid MIDI soundbank data recognized by this soundbank reader
        `IOException` - if an I/O error occurs

    - #### getSoundbank

          public abstract Soundbank getSoundbank(InputStream stream)
                                          throws InvalidMidiDataException,
                                                 IOException

      Obtains a soundbank object from the `InputStream` provided.
      Parameters:
        `stream` - `InputStream` representing the soundbank
      Returns:
        soundbank object
      Throws:
        `InvalidMidiDataException` - if the stream does not point to valid MIDI soundbank data recognized by this soundbank reader
        `IOException` - if an I/O error occurs

    - #### getSoundbank

          public abstract Soundbank getSoundbank(File file)
                                          throws InvalidMidiDataException,
                                                 IOException

      Obtains a soundbank object from the `File` provided.
      Parameters:
        `file` - the `File` representing the soundbank
      Returns:
        soundbank object
      Throws:
        `InvalidMidiDataException` - if the file does not point to valid MIDI soundbank data recognized by this soundbank reader
        `IOException` - if an I/O error occurs

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.