BannerLeftBannerRightToymaker

 

XACT

XACT is the Microsoft cross-platform audio creation tool (Xbox and PC). It allows the creation of wave and sound banks via the XACT Authoring Tool and includes a set of API functions to integrate the audio into the game.

XACT Pages

The XACT area of this site is split into the following pages

XACT Introduction

XACT Features

  • Support for the following formats: WAV, AIFF, XMA (Xbox 360 only), ADCPM
    • Note: also supports embedded loop points in WAV and AIFF formats
    • 16 and 8 bit PCM data
  • Supports Stereo and 5.1 speaker arrangements
  • Organisation of sounds
    • Multiple audio files can be grouped together into Wave Banks (XWB extension)
    • Cues and settings can be bundled with the Waves in Sound Banks (XSB extension)
  • Auditioning
    • Audio console window can be used to preview audio
    • Audio settings can be adjusted in-game (with debug mode libraries)

XACT API Programming Features

  • The API allows the integration of the wave, sound and cue information from the creation phase
  • In memory and streaming support
  • Audio event notification

From the December update of DirectX XACT now includes a code-driven API allowing lower level loading and playback of sounds without having to use all the XACT sound organisation features.

XACT Terminology and File Types

  • Content Creation Tool Projects (.xap)
  • Sound Banks (.xsb) - a collection of sounds and cues.
    • Sounds - a sound has one or more waves together with properties like volume and pitch. Sounds are made up of tracks.
      • Tracks - tracks are made up events E.g. the simplest track has a Play Wave event
      • Events - various actions that take place within a track. Actions include: Play, Stop, Set Volume, Set Pitch etc.
    • Cues - a cue is used in code to trigger sounds. Each cue is made up of one or more sounds
  • Wave Banks (.xwb ) - a file format containing a collection of waves
    • Waves - the raw wave data in wav, aiff or xma format
  • Global Settings (.xgs) - defines rules and settings for sounds.
    • Categories - sounds can be assigned to a category (only one each) that specifies certain rules like number of instances along with settings like volume. You could create a category for the sounds of one character in your game so they all have the same volume. There are three predefined categories: global, default and Music.
    • Variables - these can be defined in the design stage and then referenced by the programmer in code to control Run-Time Parameter Controls
      • Run-Time Parameter Controls - also known as 'sliders'. These allow the control of sound parameters as the sound plays. For example they could be used to control the pitch of a car engine sound so as the accelerator is pressed the pitch is changed
    • DSP Effect Path Presets (DSPs) - allow effects like reverb to be applied to sounds
    • Compression Presets - compression can be applied to waves or wave banks



© 2004-2010 Keith Ditchburn  (A lecturer on the Games Programming Course at Teesside University)