예제 #1
0
파일: alut.go 프로젝트: nzlov/goal
func LoadMemoryWaveform(waveshape al.ALenum, frequency float32, phase float32, duration float32) (
	format al.ALenum, size int32, freq float32, data unsafe.Pointer) {
	data = C.alutLoadMemoryWaveform(
		C.ALenum(waveshape), C.ALfloat(frequency), C.ALfloat(phase), C.ALfloat(duration),
		(*C.ALenum)(&format),
		(*C.ALsizei)(&size),
		(*C.ALfloat)(&frequency),
	)
	return
}
예제 #2
0
파일: alut.go 프로젝트: nzlov/goal
func CreateBufferWavefrom(
	waveshape al.ALenum,
	frequency float32,
	phase float32,
	duration float32,
) al.Buffer {
	return al.Buffer(C.alutCreateBufferWaveform(
		C.ALenum(waveshape),
		C.ALfloat(frequency),
		C.ALfloat(phase),
		C.ALfloat(duration),
	))
}
예제 #3
0
파일: audio.go 프로젝트: anthonyrego/gosmf
// Play will play the sound at a given position, the falloff distance in which the sound's volume is cut in half,
// and the volume ( 1.0 is normal volume, 0 is silence )
// It will return the PlayInstance that can be used to stop the source while playing
// Remember that in order for the 3D audio to work properly that the audio needs to be all in one channel, not stereo!
func (s *Sound) Play3D(x, y, z, falloff, volume float32) (request PlayInstance) {
	source, err := requestSource()
	if err != nil {
		return request
	}
	C.alSourcef(source.id, C.AL_GAIN, C.ALfloat(volume))
	C.alSourcei(source.id, C.AL_SOURCE_RELATIVE, C.AL_FALSE)
	C.alSourcef(source.id, C.AL_REFERENCE_DISTANCE, C.ALfloat(falloff))
	C.alSource3f(source.id, C.AL_POSITION, C.ALfloat(x), C.ALfloat(y), C.ALfloat(z))
	C.alSourcei(source.id, C.AL_BUFFER, C.ALint(s.buffer))

	source.setToPlay()
	request.id = source.requestId
	request.src = source
	return request
}
예제 #4
0
파일: audio.go 프로젝트: anthonyrego/gosmf
// Play will play the sound. Volume ( 1.0 is normal volume, 0 is silence )
// Returns the PlayInstance that can be used to stop the source while playing
func (s *Sound) Play(volume float32) (request PlayInstance) {
	source, err := requestSource()
	if err != nil {
		return request
	}
	C.alSourcef(source.id, C.AL_GAIN, C.ALfloat(volume))
	C.alSourcei(source.id, C.AL_SOURCE_RELATIVE, C.AL_TRUE)
	C.alSource3f(source.id, C.AL_POSITION, 0, 0, 0)
	C.alSourcei(source.id, C.AL_BUFFER, C.ALint(s.buffer))

	source.setToPlay()
	request.id = source.requestId
	request.src = source
	return request
}
예제 #5
0
파일: buffer.go 프로젝트: 9uuso/go-openal
// Renamed, was Buffer3f.
func (self Buffer) set3f(param int32, value1, value2, value3 float32) {
	C.alBuffer3f(C.ALuint(self), C.ALenum(param), C.ALfloat(value1), C.ALfloat(value2), C.ALfloat(value3))
}
예제 #6
0
파일: buffer.go 프로젝트: 9uuso/go-openal
// Renamed, was Bufferf.
func (self Buffer) setf(param int32, value float32) {
	C.alBufferf(C.ALuint(self), C.ALenum(param), C.ALfloat(value))
}
예제 #7
0
파일: source.go 프로젝트: nzlov/goal
func (source Source) Source3f(
	param ALenum, value1, value2, value3 float32) {
	C.alSource3f(
		C.ALuint(source), C.ALenum(param),
		C.ALfloat(value1), C.ALfloat(value2), C.ALfloat(value3))
}
예제 #8
0
파일: listener.go 프로젝트: nzlov/goal
func Listener3f(param ALenum, value1, value2, value3 float32) {
	C.alListener3f(C.ALenum(param), C.ALfloat(value1), C.ALfloat(value2), C.ALfloat(value3))
}
예제 #9
0
// Renamed, was Listener3f.
func (self Listener) Set3f(param int32, value1, value2, value3 float32) {
	C.alListener3f(C.ALenum(param), C.ALfloat(value1), C.ALfloat(value2), C.ALfloat(value3))
}
예제 #10
0
파일: al.go 프로젝트: nzlov/goal
func SpeedOfSound(value float32) {
	C.alSpeedOfSound(C.ALfloat(value))
}
예제 #11
0
파일: al.go 프로젝트: nzlov/goal
/*
 * Global Parameters
 */
func DopplerFactor(value float32) {
	C.alDopplerFactor(C.ALfloat(value))
}
예제 #12
0
파일: al_pc.go 프로젝트: tanema/amore
func alSpeedOfSound(v float32) {
	C.alSpeedOfSound(C.ALfloat(v))
}
예제 #13
0
파일: al_pc.go 프로젝트: tanema/amore
func alDopplerVelocity(v float32) {
	C.alDopplerVelocity(C.ALfloat(v))
}
예제 #14
0
파일: al_pc.go 프로젝트: tanema/amore
func alDopplerFactor(v float32) {
	C.alDopplerFactor(C.ALfloat(v))
}
예제 #15
0
파일: al_pc.go 프로젝트: tanema/amore
func alListenerf(k int, v float32) {
	C.alListenerf(C.ALenum(k), C.ALfloat(v))
}
예제 #16
0
파일: al_pc.go 프로젝트: tanema/amore
func alSourcef(s Source, k int, v float32) {
	C.alSourcef(C.ALuint(s), C.ALenum(k), C.ALfloat(v))
}
예제 #17
0
func SetListenerGain(val float32) error {
	C.alListenerf(C.AL_GAIN, C.ALfloat(C.float(val)))
	return GetError()
}
예제 #18
0
파일: source.go 프로젝트: jaekwon/go-openal
// Renamed, was Sourcef.
func (self Source) Setf(param int32, value float32) {
	C.alSourcef(C.ALuint(self), C.ALenum(param), C.ALfloat(value))
}
예제 #19
0
파일: source.go 프로젝트: jaekwon/go-openal
// Renamed, was Source3f.
func (self Source) Set3f(param int32, value1, value2, value3 float32) {
	C.alSource3f(C.ALuint(self), C.ALenum(param), C.ALfloat(value1), C.ALfloat(value2), C.ALfloat(value3))
}
예제 #20
0
파일: audio.go 프로젝트: anthonyrego/gosmf
func SetListenPosition(x, y, z float32) {
	C.alListener3f(C.AL_POSITION, C.ALfloat(x), C.ALfloat(y), C.ALfloat(z))
}
예제 #21
0
파일: al.go 프로젝트: nzlov/goal
func DopplerVelocity(value float32) {
	C.alDopplerVelocity(C.ALfloat(value))
}
예제 #22
0
func alDopplerVelocity(v float32) {
	C.call_alDopplerVelocity(alDopplerVelocityFunc, C.ALfloat(v))
}
예제 #23
0
// Renamed, was Listenerf.
func (self Listener) Setf(param int32, value float32) {
	C.alListenerf(C.ALenum(param), C.ALfloat(value))
}
예제 #24
0
func alSourcef(s Source, k int, v float32) {
	C.call_alSourcef(alSourcefFunc, C.ALuint(s), C.ALenum(k), C.ALfloat(v))
}
예제 #25
0
func alDopplerFactor(v float32) {
	C.call_alDopplerFactor(alDopplerFactorFunc, C.ALfloat(v))
}
예제 #26
0
파일: listener.go 프로젝트: nzlov/goal
/*
 * Set Listener parameters
 */
func Listenerf(param ALenum, value float32) {
	C.alListenerf(C.ALenum(param), C.ALfloat(value))
}
예제 #27
0
func alSpeedOfSound(v float32) {
	C.call_alSpeedOfSound(alSpeedOfSoundFunc, C.ALfloat(v))
}
예제 #28
0
파일: alut.go 프로젝트: nzlov/goal
func Sleep(duration float32) {
	C.alutSleep(C.ALfloat(duration))
}
예제 #29
0
func alListenerf(k int, v float32) {
	C.call_alListenerf(alListenerfFunc, C.ALenum(k), C.ALfloat(v))
}
예제 #30
0
파일: source.go 프로젝트: nzlov/goal
/*
 * Set Source parameters
 */
func (source Source) Sourcef(param ALenum, value float32) {
	C.alSourcef(C.ALuint(source), C.ALenum(param), C.ALfloat(value))
}