##### [Define]

## FSOUND_MODES

Sample description bitfields, OR them together for loading and describing samples.
NOTE. If the file format being loaded already has a defined format, such as WAV or MP3, then
trying to override the pre-defined format with a new set of format flags will not work. For
example, an 8 bit WAV file will not load as 16bit if you specify FSOUND_16BITS. It will just
ignore the flag and go ahead loading it as 8bits. For these type of formats the only flags
you can specify that will really alter the behaviour of how it is loaded, are the following.
---------
Looping behaviour - FSOUND_LOOP_OFF, FSOUND_LOOP_NORMAL, FSOUND_LOOP_BIDI
Load destination - FSOUND_HW3D, FSOUND_HW2D, FSOUND_2D
Loading behaviour - FSOUND_NONBLOCKING, FSOUND_LOADMEMORY, FSOUND_LOADRAW, FSOUND_MPEGACCURATE, FSOUND_MPEGHALFRATE, FSOUND_FORCEMONO
Playback behaviour - FSOUND_STREAMABLE, FSOUND_ENABLEFX
PlayStation 2 only - FSOUND_USECORE0, FSOUND_USECORE1, FSOUND_LOADMEMORYIOP
---------
See flag descriptions for what these do.

FSOUND_LOOP_OFF | 0x00000001 /* For non looping samples. */
FSOUND_LOOP_NORMAL | 0x00000002 /* For forward looping samples. */
FSOUND_LOOP_BIDI | 0x00000004 /* For bidirectional looping samples. (no effect if in hardware). */
FSOUND_8BITS | 0x00000008 /* For 8 bit samples. */
FSOUND_16BITS | 0x00000010 /* For 16 bit samples. */
FSOUND_MONO | 0x00000020 /* For mono samples. */
FSOUND_STEREO | 0x00000040 /* For stereo samples. */
FSOUND_UNSIGNED | 0x00000080 /* For user created source data containing unsigned samples. */
FSOUND_SIGNED | 0x00000100 /* For user created source data containing signed data. */
FSOUND_DELTA | 0x00000200 /* For user created source data stored as delta values. */
FSOUND_IT214 | 0x00000400 /* For user created source data stored using IT214 compression. */
FSOUND_IT215 | 0x00000800 /* For user created source data stored using IT215 compression. */
FSOUND_HW3D | 0x00001000 /* Attempts to make samples use 3d hardware acceleration. (if the card supports it) */
FSOUND_2D | 0x00002000 /* Tells software (not hardware) based sample not to be included in 3d processing. */
FSOUND_STREAMABLE | 0x00004000 /* For a streamimg sound where you feed the data to it. */
FSOUND_LOADMEMORY | 0x00008000 /* "name" will be interpreted as a pointer to data for streaming and samples. */
FSOUND_LOADRAW | 0x00010000 /* Will ignore file format and treat as raw pcm. */
FSOUND_MPEGACCURATE | 0x00020000 /* For FSOUND_Stream_Open - for accurate FSOUND_Stream_GetLengthMs/FSOUND_Stream_SetTime. WARNING, see FSOUND_Stream_Open for inital opening time performance issues. */
FSOUND_FORCEMONO | 0x00040000 /* For forcing stereo streams and samples to be mono - needed if using FSOUND_HW3D and stereo data - incurs a small speed hit for streams */
FSOUND_HW2D | 0x00080000 /* 2D hardware sounds. allows hardware specific effects */
FSOUND_ENABLEFX | 0x00100000 /* Allows DX8 FX to be played back on a sound. Requires DirectX 8 - Note these sounds cannot be played more than once, be 8 bit, be less than a certain size, or have a changing frequency */
FSOUND_MPEGHALFRATE | 0x00200000 /* For FMODCE only - decodes mpeg streams using a lower quality decode, but faster execution */
FSOUND_IMAADPCM | 0x00400000 /* Contents are stored compressed as IMA ADPCM */
FSOUND_VAG | 0x00800000 /* For PS2 only - Contents are compressed as Sony VAG format */
FSOUND_NONBLOCKING | 0x01000000 /* For FSOUND_Stream_Open/FMUSIC_LoadSong - Causes stream or music to open in the background and not block the foreground app. See FSOUND_Stream_GetOpenState or FMUSIC_GetOpenState to determine when it IS ready. */
FSOUND_GCADPCM | 0x02000000 /* For Gamecube only - Contents are compressed as Gamecube DSP-ADPCM format */
FSOUND_MULTICHANNEL | 0x04000000 /* For PS2 and Gamecube only - Contents are interleaved into a multi-channel (more than stereo) format */
FSOUND_USECORE0 | 0x08000000 /* For PS2 only - Sample/Stream is forced to use hardware voices 00-23 */
FSOUND_USECORE1 | 0x10000000 /* For PS2 only - Sample/Stream is forced to use hardware voices 24-47 */
FSOUND_LOADMEMORYIOP | 0x20000000 /* For PS2 only - "name" will be interpreted as a pointer to data for streaming and samples. The address provided will be an IOP address */
FSOUND_IGNORETAGS | 0x40000000 /* Skips id3v2 etc tag checks when opening a stream, to reduce seek/read overhead when opening files (helps with CD performance) */
FSOUND_STREAM_NET | 0x80000000 /* Specifies an internet stream */
FSOUND_NORMAL | (FSOUND_16BITS | FSOUND_SIGNED | FSOUND_MONO)

### See Also

FMUSIC_GetOpenState , FMUSIC_LoadSong , FSOUND_Stream_GetLength , FSOUND_Stream_GetLengthMs , FSOUND_Stream_GetOpenState , FSOUND_Stream_Open , FSOUND_Stream_SetTime

This document copyright ©Firelight Technologies, Pty, Ltd, 1999-2002. All rights reserved.
Generated Thu Dec 15 17:31:37 2005 by SourceDoc v0.10, the automated source code documenter.