Interface Audio


  • public interface Audio
    This interface encapsulates the creation and management of audio resources. It allows you to get direct access to the audio hardware via the AudioDevice and AudioRecorder interfaces, create sound effects via the Sound interface and play music streams via the Music interface.

    All resources created via this interface have to be disposed as soon as they are no longer used.

    Note that all Music instances will be automatically paused when the ApplicationListener.pause() method is called, and automatically resumed when the ApplicationListener.resume() method is called.

    • Method Detail

      • newAudioDevice

        AudioDevice newAudioDevice​(int samplingRate,
                                   boolean isMono)
        Creates a new AudioDevice either in mono or stereo mode. The AudioDevice has to be disposed via its AudioDevice.dispose() method when it is no longer used.
        Parameters:
        samplingRate - the sampling rate.
        isMono - whether the AudioDevice should be in mono or stereo mode
        Returns:
        the AudioDevice
        Throws:
        GdxRuntimeException - in case the device could not be created
      • newAudioRecorder

        AudioRecorder newAudioRecorder​(int samplingRate,
                                       boolean isMono)
        Creates a new AudioRecorder. The AudioRecorder has to be disposed after it is no longer used.
        Parameters:
        samplingRate - the sampling rate in Hertz
        isMono - whether the recorder records in mono or stereo
        Returns:
        the AudioRecorder
        Throws:
        GdxRuntimeException - in case the recorder could not be created
      • newSound

        Sound newSound​(FileHandle fileHandle)

        Creates a new Sound which is used to play back audio effects such as gun shots or explosions. The Sound's audio data is retrieved from the file specified via the FileHandle. Note that the complete audio data is loaded into RAM. You should therefore not load big audio files with this methods. The current upper limit for decoded audio is 1 MB.

        Currently supported formats are WAV, MP3 and OGG.

        The Sound has to be disposed if it is no longer used via the Sound.dispose() method.

        Returns:
        the new Sound
        Throws:
        GdxRuntimeException - in case the sound could not be loaded
      • newMusic

        Music newMusic​(FileHandle file)
        Creates a new Music instance which is used to play back a music stream from a file. Currently supported formats are WAV, MP3 and OGG. The Music instance has to be disposed if it is no longer used via the Music.dispose() method. Music instances are automatically paused when ApplicationListener.pause() is called and resumed when ApplicationListener.resume() is called.
        Parameters:
        file - the FileHandle
        Returns:
        the new Music or null if the Music could not be loaded
        Throws:
        GdxRuntimeException - in case the music could not be loaded
      • switchOutputDevice

        boolean switchOutputDevice​(@Null
                                   java.lang.String deviceIdentifier)
        Sets a new OutputDevice. The identifier can be retrieved from getAvailableOutputDevices(). If null is passed, it will switch to auto.
        Parameters:
        deviceIdentifier - device identifier to switch to, or null for auto
      • getAvailableOutputDevices

        java.lang.String[] getAvailableOutputDevices()
        This function returns a list of fully qualified Output device names. This function is only implemented on desktop. On all other platforms it will return a empty array. It will also return a empty array on error. The names returned need os dependent preprocessing before exposing to a user.
        Returns:
        A array of available output devices