[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