[Bf-blender-cvs] [8528d76] master: Audaspace: external audaspace library update.
Jörg Müller
noreply at git.blender.org
Tue Jul 28 14:10:20 CEST 2015
Commit: 8528d76dadd03680ba4a7b24ed8516bad4501b5f
Author: Jörg Müller
Date: Thu Nov 13 00:33:28 2014 +1300
Branches: master
https://developer.blender.org/rB8528d76dadd03680ba4a7b24ed8516bad4501b5f
Audaspace: external audaspace library update.
===================================================================
M intern/audaspace/intern/AUD_PyInit.cpp
M source/blender/blenkernel/BKE_sound.h
M source/blender/blenkernel/intern/sound.c
M source/blender/blenkernel/intern/writeffmpeg.c
M source/blender/makesrna/intern/CMakeLists.txt
M source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
M source/gameengine/Converter/KX_ConvertActuators.cpp
M source/gameengine/Ketsji/KX_SoundActuator.cpp
===================================================================
diff --git a/intern/audaspace/intern/AUD_PyInit.cpp b/intern/audaspace/intern/AUD_PyInit.cpp
index 8802f39..2575ec7 100644
--- a/intern/audaspace/intern/AUD_PyInit.cpp
+++ b/intern/audaspace/intern/AUD_PyInit.cpp
@@ -47,7 +47,7 @@ static PyObject *AUD_getSoundFromPointer(PyObject *self, PyObject *args)
if (sound) {
Sound *obj = (Sound *)Sound_empty();
if (obj) {
- obj->sound = AUD_copy(sound);
+ obj->sound = AUD_Sound_copy(sound);
return (PyObject *) obj;
}
}
diff --git a/source/blender/blenkernel/BKE_sound.h b/source/blender/blenkernel/BKE_sound.h
index 7d2d23e..cb71b93 100644
--- a/source/blender/blenkernel/BKE_sound.h
+++ b/source/blender/blenkernel/BKE_sound.h
@@ -53,6 +53,8 @@ typedef struct SoundWaveform {
void BKE_sound_init_once(void);
void BKE_sound_exit_once(void);
+void* BKE_sound_get_device(void);
+
void BKE_sound_init(struct Main *main);
void BKE_sound_init_main(struct Main *bmain);
diff --git a/source/blender/blenkernel/intern/sound.c b/source/blender/blenkernel/intern/sound.c
index 0eaae45..a7346c8 100644
--- a/source/blender/blenkernel/intern/sound.c
+++ b/source/blender/blenkernel/intern/sound.c
@@ -109,13 +109,13 @@ void BKE_sound_free(bSound *sound)
#ifdef WITH_AUDASPACE
if (sound->handle) {
- AUD_unload(sound->handle);
+ AUD_Sound_free(sound->handle);
sound->handle = NULL;
sound->playback_handle = NULL;
}
if (sound->cache) {
- AUD_unload(sound->cache);
+ AUD_Sound_free(sound->cache);
sound->cache = NULL;
}
@@ -148,7 +148,7 @@ static void sound_sync_callback(void *data, int mode, float time)
else
BKE_sound_stop_scene(scene);
if (scene->playback_handle)
- AUD_seek(scene->playback_handle, time);
+ AUD_Handle_setPosition(scene->playback_handle, time);
}
scene = scene->id.next;
}
@@ -180,6 +180,13 @@ void BKE_sound_init_once(void)
atexit(BKE_sound_exit_once);
}
+static AUD_Device* sound_device;
+
+void* sound_get_device(void)
+{
+ return sound_device;
+}
+
void BKE_sound_init(struct Main *bmain)
{
AUD_DeviceSpecs specs;
@@ -223,8 +230,8 @@ void BKE_sound_init(struct Main *bmain)
if (specs.channels <= AUD_CHANNELS_INVALID)
specs.channels = AUD_CHANNELS_STEREO;
- if (!AUD_init(device_name, "Blender", specs, buffersize))
- AUD_init("Null", "Blender", specs, buffersize);
+ if (!(sound_device = AUD_init(device_name, specs, buffersize, "Blender")))
+ sound_device = AUD_init("Null", specs, buffersize, "Blender");
BKE_sound_init_main(bmain);
}
@@ -240,12 +247,14 @@ void BKE_sound_init_main(struct Main *bmain)
void BKE_sound_exit(void)
{
- AUD_exit();
+ AUD_exit(sound_device);
+ sound_device = NULL;
}
void BKE_sound_exit_once(void)
{
- AUD_exit();
+ AUD_exit(sound_device);
+ sound_device = NULL;
AUD_exitOnce();
}
@@ -303,9 +312,9 @@ void BKE_sound_cache(bSound *sound)
{
sound->flags |= SOUND_FLAGS_CACHING;
if (sound->cache)
- AUD_unload(sound->cache);
+ AUD_Sound_free(sound->cache);
- sound->cache = AUD_bufferSound(sound->handle);
+ sound->cache = AUD_Sound_cache(sound->handle);
if (sound->cache)
sound->playback_handle = sound->cache;
else
@@ -316,7 +325,7 @@ void BKE_sound_delete_cache(bSound *sound)
{
sound->flags &= ~SOUND_FLAGS_CACHING;
if (sound->cache) {
- AUD_unload(sound->cache);
+ AUD_Sound_free(sound->cache);
sound->cache = NULL;
sound->playback_handle = sound->handle;
}
@@ -326,12 +335,12 @@ void BKE_sound_load(struct Main *bmain, bSound *sound)
{
if (sound) {
if (sound->cache) {
- AUD_unload(sound->cache);
+ AUD_Sound_free(sound->cache);
sound->cache = NULL;
}
if (sound->handle) {
- AUD_unload(sound->handle);
+ AUD_Sound_free(sound->handle);
sound->handle = NULL;
sound->playback_handle = NULL;
}
@@ -356,10 +365,10 @@ void BKE_sound_load(struct Main *bmain, bSound *sound)
/* but we need a packed file then */
if (pf)
- sound->handle = AUD_loadBuffer((unsigned char *) pf->data, pf->size);
+ sound->handle = AUD_Sound_bufferFile((unsigned char *) pf->data, pf->size);
/* or else load it from disk */
else
- sound->handle = AUD_load(fullpath);
+ sound->handle = AUD_Sound_file(fullpath);
}
/* XXX unused currently */
#if 0
@@ -376,13 +385,13 @@ void BKE_sound_load(struct Main *bmain, bSound *sound)
}
#endif
if (sound->flags & SOUND_FLAGS_MONO) {
- void *handle = AUD_monoSound(sound->handle);
- AUD_unload(sound->handle);
+ void *handle = AUD_Sound_rechannel(sound->handle, AUD_CHANNELS_MONO);
+ AUD_Sound_free(sound->handle);
sound->handle = handle;
}
if (sound->flags & SOUND_FLAGS_CACHING) {
- sound->cache = AUD_bufferSound(sound->handle);
+ sound->cache = AUD_Sound_cache(sound->handle);
}
if (sound->cache)
@@ -405,9 +414,10 @@ void BKE_sound_create_scene(struct Scene *scene)
if (scene->r.frs_sec_base == 0)
scene->r.frs_sec_base = 1;
- scene->sound_scene = AUD_createSequencer(FPS, scene->audio.flag & AUDIO_MUTE);
- AUD_updateSequencerData(scene->sound_scene, scene->audio.speed_of_sound,
- scene->audio.doppler_factor, scene->audio.distance_model);
+ scene->sound_scene = AUD_Sequence_create(FPS, scene->audio.flag & AUDIO_MUTE);
+ AUD_Sequence_setSpeedOfSound(scene->sound_scene, scene->audio.speed_of_sound);
+ AUD_Sequence_setDopplerFactor(scene->sound_scene, scene->audio.doppler_factor);
+ AUD_Sequence_setDistanceModel(scene->sound_scene, scene->audio.distance_model);
scene->playback_handle = NULL;
scene->sound_scrub_handle = NULL;
scene->speaker_handles = NULL;
@@ -416,11 +426,11 @@ void BKE_sound_create_scene(struct Scene *scene)
void BKE_sound_destroy_scene(struct Scene *scene)
{
if (scene->playback_handle)
- AUD_stop(scene->playback_handle);
+ AUD_Handle_stop(scene->playback_handle);
if (scene->sound_scrub_handle)
- AUD_stop(scene->sound_scrub_handle);
+ AUD_Handle_stop(scene->sound_scrub_handle);
if (scene->sound_scene)
- AUD_destroySequencer(scene->sound_scene);
+ AUD_Sequence_free(scene->sound_scene);
if (scene->speaker_handles)
AUD_destroySet(scene->speaker_handles);
}
@@ -428,21 +438,22 @@ void BKE_sound_destroy_scene(struct Scene *scene)
void BKE_sound_mute_scene(struct Scene *scene, int muted)
{
if (scene->sound_scene)
- AUD_setSequencerMuted(scene->sound_scene, muted);
+ AUD_Sequence_setMuted(scene->sound_scene, muted);
}
void BKE_sound_update_fps(struct Scene *scene)
{
if (scene->sound_scene)
- AUD_setSequencerFPS(scene->sound_scene, FPS);
+ AUD_Sequence_setFPS(scene->sound_scene, FPS);
BKE_sequencer_refresh_sound_length(scene);
}
void BKE_sound_update_scene_listener(struct Scene *scene)
{
- AUD_updateSequencerData(scene->sound_scene, scene->audio.speed_of_sound,
- scene->audio.doppler_factor, scene->audio.distance_model);
+ AUD_Sequence_setSpeedOfSound(scene->sound_scene, scene->audio.speed_of_sound);
+ AUD_Sequence_setDopplerFactor(scene->sound_scene, scene->audio.doppler_factor);
+ AUD_Sequence_setDistanceModel(scene->sound_scene, scene->audio.distance_model);
}
void *BKE_sound_scene_add_scene_sound(struct Scene *scene, struct Sequence *sequence,
@@ -450,7 +461,7 @@ void *BKE_sound_scene_add_scene_sound(struct Scene *scene, struct Sequence *sequ
{
if (scene != sequence->scene) {
const double fps = FPS;
- return AUD_addSequence(scene->sound_scene, sequence->scene->sound_scene,
+ return AUD_Sequence_add(scene->sound_scene, sequence->scene->sound_scene,
startframe / fps, endframe / fps, frameskip / fps);
}
return NULL;
@@ -466,12 +477,12 @@ void *BKE_sound_scene_add_scene_sound_defaults(struct Scene *scene, struct Seque
void *BKE_sound_add_scene_sound(struct Scene *scene, struct Sequence *sequence, int startframe, int endframe, int frameskip)
{
const double fps = FPS;
- void *handle = AUD_addSequence(scene->sound_scene, sequence->sound->playback_handle,
+ void *handle = AUD_Sequence_add(scene->sound_scene, sequence->sound->playback_handle,
startframe / fps, endframe / fps, frameskip / fps);
- AUD_muteSequence(handle, (sequence->flag & SEQ_MUTE) != 0);
- AUD_setSequenceAnimData(handle, AUD_AP_VOLUME, CFRA, &sequence->volume, 0);
- AUD_setSequenceAnimData(handle, AUD_AP_PITCH, CFRA, &sequence->pitch, 0);
- AUD_setSequenceAnimData(handle, AUD_AP_PANNING, CFRA, &sequence->pan, 0);
+ AUD_SequenceEntry_setMuted(handle, (sequence->flag & SEQ_MUTE) != 0);
+ AUD_SequenceEntry_setAnimationData(handle, AUD_AP_VOLUME, CFRA, &sequence->volume, 0);
+ AUD_SequenceEntry_setAnimationData(handle, AUD_AP_PITCH, CFRA, &sequence->pitch, 0);
+ AUD_SequenceEntry_setAnimationData(handle, AUD_AP_PANNING, CFRA, &sequence->pan, 0);
return handle;
}
@@ -484,18 +495,18 @@ void *BKE_sound_add_scene_sound_defaults(struct Scene *scene, struct Sequence *s
void BKE_sound_remove_scene_sound(struct Scene *scene, void *handle)
{
- AUD_removeSequence(scene->sound_scene, handle);
+ AUD_Sequence_remove(scene->sound_scene, handle);
}
void BKE_sound_mute_scene_sound(void *handle, char mute)
{
- AUD_muteSequence(handle, mute);
+ AUD_SequenceEntry_setMuted(handle, mute);
}
void BKE_sound_move_scene_sound(struct Scene *scene, void *handle, int startframe, int endframe, int frameskip)
{
const double fps = FPS;
- AUD_moveSequence(handle, startframe / fps, endframe / fps, frameskip / fps);
+ AUD_SequenceEntry_move(handle, startframe / fps, endframe / fps, frameskip / fps);
}
void BKE_sound_move_scene_sound_defaults(struct Scene *scene, struct Sequence *sequence)
@@ -509,7 +520,7 @@ void BKE_sound_move_scene_sound_defaults(struct Scene *scene, struct Sequence *s
void BKE_sound_update_scene_sound(void *handle, bSound *sound)
{
- AUD_updateSequenceSound(handle, sound->playback_handle);
+ AUD_SequenceEntry_setSound(handle, sound->playback_handle);
}
void BKE_sound_set_cfra(int cfra)
@@ -519,23 +530,23 @@ void BKE_sound_set_cfra(int cfra)
void BKE_sound_set_scene_volume(struct Scene *scene, float volume)
{
- AUD_setSequencerAnimData(scene->sound_scene, AUD_AP_VOLUME, CFRA, &volume,
+ AUD_Sequence_setAnimationData(scene->sound_scene, AUD_AP_VOLUME, CFRA, &volume,
(
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list