Gluon/Audio

From KDE Community Wiki

Low Level Integration

  • Sound - Wraps OpenAL Source
  • Listener - Wraps OpenAL Listener
  • Buffer(?) - Wraps OpenAL Buffer, global, needs to be managed properly since this is data, load data using QtMultimedia (Qt5)

Channels

  • Channels - Volume etc. controller for a set of sources, global, needs to be managed properly
  • ChannelGroup - Volume etc. controller for a set of channels, global, needs to be managed properly

Music Playback

  • Playlist - List of buffers to play with progression rules integrated, global, data
  • PlaylistPlayer - Sound + Channel mapping for playing a playlist

Effects

  • Effect - Audio effect that can be applied to a Sound or a Channel (e.g. reverb)

Engine Integration

  • Assets:
    • SoundAsset - Makes a buffer available through the asset system.
    • PlaylistAsset - Makes a playlist available through the asset system.
    • ChannelAsset - Makes a channel available through the asset system.
  • Components:
    • SoundEmitter - Plays a sound at a location < If bound to Scene, play without positioning?
    • Listener - Control the Listener
    • PlaylistPlayer - Plays a playlist at a location < If bound to Scene, play without positioning?

QML Integration

  • ChannelModel - A tree of all channels with associated volume
  • PlaylistModel - A list of the contents of a playlist