Re: Lightweight OpenAL Python Wrapper
Bleh, response time not withstanding, just finished adding in a bunch of extra handler functions. Streaming and queuing sources still isn't handled, also need to work at implementing those environmental reverb presets and vorbis bitrate formats, among a few other doppler-y things...
You can grab the latest version here: [OpenAL PyLite v1.1]
New additions include:
-Listener Gain function for controlling master volume level
-Listener Orientation function for orienting the listener in specific directions
-Listener Velocity function
-Listener Distance Model function which includes 7 different model settings.
-Player direction function
-Player Velocity function
-Player Cone Outer Angle function
-Player Cone Inner Angle function
-Player Source Relative function
-Player Max Distance function
-Player Reference Distance function
-Player Min Gain function
-Player Max Gain function
Here's some examples of how the new functions are used:
from openal import *
self.listener = Listener()
#must be higher than zero print(self.listener.gain) self.listener.gain = 0.7 #for "at" and "up" vectors print(self.listener.orientation) self.listener.orientation = [160.0, 0.0, 0.0] #velocity vectors print(self.listener.velocity) self.listener.velocity = [160.0, 0.0, 0.0] #distance model between 0 to 6 print(self.listener.distance_model) self.listener.distance_model = 4 self.player = Player() #direction vector print(self.player.direction) self.player.direction = [160.0, 0.0, 0.0] #velocity vector print(self.player.velocity) self.player.velocity = [160.0, 0.0, 0.0] #cone outer angle in 360.0 degrees print(self.player.cone_outer_angle) self.player.cone_outer_angle = 160.0 #cone inner angle in 360.0 degrees print(self.player.cone_inner_angle) self.player.cone_inner_angle = 160.0 #source relative setting, disabled by default print(self.player.source_relative) self.player.source_relative = True #max attenuation distance print(self.player.max_distance) self.player.max_distance = 1.0 #relative distance attenuation print(self.player.relative_distance) self.player.relative_distance = 0.0 #minimum gain print(self.player.min_gain) self.player.min_gain = 0.5 #maximum gain print(self.player.max_gain) self.player.max_gain = 0.5
-- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector