sgdk
|
Z80_DRIVER_PCM sound driver API. More...
Go to the source code of this file.
Defines | |
#define | SOUND_RATE_32000 _Pragma("GCC error \"This method is deprecated, use SOUND_PCM_RATE_32000 instead.\"") |
#define | SOUND_RATE_22050 _Pragma("GCC error \"This method is deprecated, use SOUND_PCM_RATE_22050 instead.\"") |
#define | SOUND_RATE_16000 _Pragma("GCC error \"This method is deprecated, use SOUND_PCM_RATE_16000 instead.\"") |
#define | SOUND_RATE_13400 _Pragma("GCC error \"This method is deprecated, use SOUND_PCM_RATE_13400 instead.\"") |
#define | SOUND_RATE_11025 _Pragma("GCC error \"This method is deprecated, use SOUND_PCM_RATE_11025 instead.\"") |
#define | SOUND_RATE_8000 _Pragma("GCC error \"This method is deprecated, use SOUND_PCM_RATE_8000 instead.\"") |
#define | SND_isPlaying_PCM _Pragma("GCC error \"This method is deprecated, use SND_PCM_isPlaying instead.\"") |
#define | SND_startPlay_PCM _Pragma("GCC error \"This method is deprecated, use SND_PCM_startPlay instead.\"") |
#define | SND_stopPlay_PCM _Pragma("GCC error \"This method is deprecated, use SND_PCM_stopPlay instead.\"") |
Enumerations | |
enum | SoundPcmSampleRate { SOUND_PCM_RATE_32000, SOUND_PCM_RATE_22050, SOUND_PCM_RATE_16000, SOUND_PCM_RATE_13400, SOUND_PCM_RATE_11025, SOUND_PCM_RATE_8000 } |
PCM sample rate values. More... | |
Functions | |
void | SND_PCM_loadDriver (const bool waitReady) |
Load the Z80_DRIVER_PCM sound driver. | |
void | SND_PCM_unloadDriver (void) |
Unload the Z80_DRIVER_PCM sound driver. | |
bool | SND_PCM_isPlaying (void) |
Return play status (Single channel PCM player driver). | |
void | SND_PCM_startPlay (const u8 *sample, const u32 len, const SoundPcmSampleRate rate, const SoundPanning pan, const bool loop) |
Start playing a sample (Single channel PCM player driver). If a sample was currently playing then it's stopped and the new sample is played instead. | |
void | SND_PCM_stopPlay (void) |
Stop playing (Single channel PCM player driver). No effect if no sample was currently playing. |
Z80_DRIVER_PCM sound driver API.
This unit provides playback method for the Z80_DRIVER_PCM sound driver.
Sound driver description:
This sound driver allow Single PCM channel 8 bits signed sample driver.
It can play a sample (8 bit signed) from 8 Khz up to 32 Khz rate.
Note that SGDK sound drivers may not fit your needs so it's important to know
that some alternatives sound drivers exist (see SGDK readme.md for more info)
enum SoundPcmSampleRate |
bool SND_PCM_isPlaying | ( | void | ) |
Return play status (Single channel PCM player driver).
void SND_PCM_loadDriver | ( | const bool | waitReady | ) |
Load the Z80_DRIVER_PCM sound driver.
Don't use this method directly, use Z80_loadDriver(..) instead.
void SND_PCM_startPlay | ( | const u8 * | sample, |
const u32 | len, | ||
const SoundPcmSampleRate | rate, | ||
const SoundPanning | pan, | ||
const bool | loop | ||
) |
Start playing a sample (Single channel PCM player driver).
If a sample was currently playing then it's stopped and the new sample is played instead.
sample | Sample address, should be 256 bytes boundary aligned SGDK automatically align resource as needed |
len | Size of sample in bytes, should be a multiple of 256 SGDK automatically adjust resource size as needed |
rate | Playback rate : SOUND_PCM_RATE_32000 = 32 Khz (best quality but take lot of rom space) SOUND_PCM_RATE_22050 = 22 Khz SOUND_PCM_RATE_16000 = 16 Khz SOUND_PCM_RATE_13400 = 13.4 Khz SOUND_PCM_RATE_11025 = 11 Khz SOUND_PCM_RATE_8000 = 8 Khz (worst quality but take less rom place) |
pan | Panning : SOUND_PAN_NONE = mute SOUND_PAN_LEFT = play on left speaker SOUND_PAN_RIGHT = play on right speaker SOUND_PAN_CENTER = play on both speaker |
loop | Loop flag. If TRUE then the sample will be played in loop (else sample is played only once). |
void SND_PCM_unloadDriver | ( | void | ) |
Unload the Z80_DRIVER_PCM sound driver.
Don't use this method directly, use Z80_unloadDriver(..) instead.