diff options
| author | Ray <raysan5@gmail.com> | 2016-09-08 00:20:06 +0200 |
|---|---|---|
| committer | Ray <raysan5@gmail.com> | 2016-09-08 00:20:06 +0200 |
| commit | 8b35de3276d0fbf0487ed73fe2c2dfb2340e0431 (patch) | |
| tree | 8d1d696b87ee356f3c16fb0d59a1494ec66aac3f /src/raylib.h | |
| parent | 10280c4b91871065ea2fc15a3f3e939820f3e0a0 (diff) | |
| download | raylib-8b35de3276d0fbf0487ed73fe2c2dfb2340e0431.tar.gz raylib-8b35de3276d0fbf0487ed73fe2c2dfb2340e0431.zip | |
Added new audio functions -IN PROGRESS-
- LoadWave()
- LoadWaveEx()
- UnloadWave()
- WaveFormat()
- WaveCopy()
- WaveCrop()
- GetWaveData()
Diffstat (limited to 'src/raylib.h')
| -rw-r--r-- | src/raylib.h | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/src/raylib.h b/src/raylib.h index dff69705..ae3de038 100644 --- a/src/raylib.h +++ b/src/raylib.h @@ -484,13 +484,6 @@ typedef struct Ray { Vector3 direction; // Ray direction } Ray; -// Sound source type -typedef struct Sound { - unsigned int source; // OpenAL audio source id - unsigned int buffer; // OpenAL audio buffer id - int format; // OpenAL audio format specifier -} Sound; - // Wave type, defines audio wave data typedef struct Wave { unsigned int sampleCount; // Number of samples @@ -500,6 +493,13 @@ typedef struct Wave { void *data; // Buffer data pointer } Wave; +// Sound source type +typedef struct Sound { + unsigned int source; // OpenAL audio source id + unsigned int buffer; // OpenAL audio buffer id + int format; // OpenAL audio format specifier +} Sound; + // Music type (file streaming from memory) // NOTE: Anything longer than ~10 seconds should be streamed typedef struct MusicData *Music; @@ -909,10 +909,13 @@ RLAPI void InitAudioDevice(void); // Initial RLAPI void CloseAudioDevice(void); // Close the audio device and context (and music stream) RLAPI bool IsAudioDeviceReady(void); // Check if audio device has been initialized successfully -RLAPI Sound LoadSound(char *fileName); // Load sound to memory +RLAPI Wave LoadWave(const char *fileName); // Load wave data from file into RAM +RLAPI Wave LoadWaveEx(float *data, int sampleRate, int sampleSize, int channels); // Load wave data from float array data (32bit) +RLAPI Sound LoadSound(const char *fileName); // Load sound to memory RLAPI Sound LoadSoundFromWave(Wave wave); // Load sound to memory from wave data RLAPI Sound LoadSoundFromRES(const char *rresName, int resId); // Load sound to memory from rRES file (raylib Resource) RLAPI void UpdateSound(Sound sound, void *data, int numSamples); // Update sound buffer with new data +RLAPI void UnloadWave(Wave wave); RLAPI void UnloadSound(Sound sound); // Unload sound RLAPI void PlaySound(Sound sound); // Play a sound RLAPI void PauseSound(Sound sound); // Pause a sound @@ -921,8 +924,11 @@ RLAPI void StopSound(Sound sound); // Stop pl RLAPI bool IsSoundPlaying(Sound sound); // Check if a sound is currently playing RLAPI void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level) RLAPI void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level) - -RLAPI Music LoadMusicStream(char *fileName); // Load music stream from file +RLAPI void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format +RLAPI Wave WaveCopy(Wave wave); // Copy a wave to a new wave +RLAPI void WaveCrop(Wave *wave, int initSample, int finalSample); // Crop a wave to defined samples range +RLAPI float *GetWaveData(Wave wave); // Get samples data from wave as a floats array +RLAPI Music LoadMusicStream(const char *fileName); // Load music stream from file RLAPI void UnloadMusicStream(Music music); // Unload music stream RLAPI void PlayMusicStream(Music music); // Start music playing (open stream) RLAPI void UpdateMusicStream(Music music); // Updates buffers for music streaming |
