logo
Main

Forums

Downloads

Unreal-Netiquette

Donate for Oldunreal:
Donate

borderline

Links to our wiki:
Wiki

Walkthrough

Links

Tutorials

Unreal Reference

Usermaps

borderline

Contact us:
Submit News
Page Index Toggle Pages: [1] 2 3 ... 12 Send TopicPrint
Very Hot Topic (More than 25 Replies) ALAudio for UnrealTournament - development and links (Read 35534 times)
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
ALAudio for UnrealTournament - development and links
May 9th, 2014 at 5:51am
Print Post  
www.oldunreal.com/betatest/OpenAL_v2.4.7_UT.7z

Version 2.4.7 for UnrealTournament, Windows version.
Changes:
New distance model, based on AL_LINEAR_DISTANCE_CLAMPED, sanity check for number of sources (max EffectChannels) in case hardware based dll from Creative Labs is used, fix for possible compression effect if to many soundsources are playing at once with very high gain.
Added configuration parameters for:
  • ViewportVolumeIntensity, which affects all sound effects local to the player. Very useful for a finer setup if a 5.1 or more soundsystem is in use.
  • ReverbIntensity, many people still don't know the old reverb (echo) effects included in the original game, which have been bugged out of galaxy since Unreal the 226 days from galaxy sounddrv. ALAudio re-implements these, but since these sounds can be irritating they can be scaled here additionally.
due to the fact that these things may differ a lot depending on speaker setup (such as stereo and 5.1 for example)

New libxmp.dll (4.3.13 with yet again many fixes for IT, see more at http://xmp.sourceforge.net )  and OpenAL32.dll (1.17.2 http://kcat.strangesoft.net/openal.html )
Occluded sources are now not only quiet, but also filtered for a more realistic, "muffled" effect.
Astat audio and astat detail also includes now information about the music being played.

Version 2.2 for UnrealTournament, Windows version.
Auto matching of libxmp samplerate, updated some check in libxmp 4.3.9 to re-enable support for some obscure tracker file, updated to OpenALSoft 1.17 with HRTF (new ini settings Autodetect/Enable/Disable). Autodetection may only work with USB headsets.

Version 2.1 for UnrealTournament, Windows version.
Added some new check for thread safety

Version 2.0 for UnrealTournament, Windows version.
Changes:
Fix for savegames may be crippled and crash the game on load (not originated in ALAudio, but needed a workaround).

Version 1.9 for UnrealTournament, Windows version.
Changes:
Fix for bSoundAttenuate false not working.

Version 1.8 for UnrealTournament, Windows version. (now built with VC2013).
Changes:
Crashfix for 1 CPU affinity (forced by GOG version or manually).

Version 1.7 for UnrealTournament, Windows version.
Changes:
Fix to reduce CPU load to increase stability especially when running on one CPU core only. Crashfix for a "never should happen" situation.
This version also contains a new option "UseSpeechVolume" which defaults to false for UT at the moment. With this option set to true SpeechVolume affects all "SLOT_Talk" sounds, but UT doesn't have an UMenu option for that.
Update of libxmp to 4.3.9

Version 1.6 for UnrealTournament, Windows version.
Changes:
Switched in OpenAL from FMod Music output to libxmp.
This player is not only free and open source (GNU LESSER GENERAL PUBLIC LICENSE), but better portable and is yet actively maintained unlike most other players. It also plays some tracker files "more correctly" than old FMod3. OGG playing is now done directly via ogg vorbis (BSD-License).

Added CrossFading ability in OpenAL when using MTRAN_Segue
Added ability to play sounds in OGG format (you need to rename the .ogg files to .wav to allow the import)

Changed from Creative Labs OpenAL to OpenALSoft (LGPL-licensed) to eliminate problems with non Creative cards in Windows 7 and Windows8

new in 1.6:
Yet another couple of minor fixes, improvements, code cleanups.

Added usage of AL_METERS_PER_UNIT function to make effect calculations more fitting to "real world" environments (based on UU/Meter).

Updated libxmp to 4.3.8

Added support for FLAC (BSD-License) and mpg123 (LGPL 2.1) for sounds.

Removed ALAudio.u and replaced it with EFX.u
EFX.u is a pure UnrealScript package which does not depend on ALAudio, nor is ALAudio required for it to use. As EFX.u has the download flag set, a client can just download it for network play like any other package and if ALAudio is not used the ZoneInfo's sounds settings just simply have no effect. This change allows the mappers to make use of a huge number of environment presets (114) without taking the risk that people not using ALAudio can't play a map.

Notes for mappers:
* EFX.u packages offers a set of ready to use ZoneInfos to customize ZoneAudio settings.
* If you just custom defined ZoneAudio settings instead of using ReverbPresets consider
   consulting OpenALs EffectsExtensionGuide.pdf especially in respect to default values and clamping.

Notes for mod developers:
* See EFXZoneInfo UnrealScript code for further explainations.

Don't forget to update your ini (although will now set up defaults if not existing):
[ALAudio.ALAudioSubsystem]
ALDevice=DefaultDevice
OutputRate=44100Hz
SampleRate=44100Hz
SoundVolume=192
;general sound volume
SpeechVolume=192
;creatures often use speech slot for the noises they make. Not really in use for UT
MusicVolume=200
;general music volume
EffectsChannels=64
;number of max effects channels. 64 should be sufficient. "stat audio" command may show how many channels are really in use.
AmbientFactor=0.700000
;for ambient sounds
DopplerFactor=0.010000
;the higher the more doppler effect.
bSoundAttenuate=True
;sounds being attenuated when behind objects/structure
UseDigitalMusic=True
;enable disable music.
MusicInterpolation=SPLINE
;Interpolation type: can be one of the following values: XMP_INTERP_NEAREST  /* Nearest neighbor */, XMP_INTERP_LINEAR   /* Linear (default) */,
XMP_INTERP_SPLINE   /* Cubic spline */
MusicDsp=DSP_ALL
; DSP effects flags: enable or disable DSP effects. Valid effects are: XMP_DSP_LOWPASS     /* Lowpass filter effect */, XMP_DSP_ALL         /* All effects */
MusicPanSeparation=50
;percentual left/right pan separation in formats with only left and right channels
MusicStereoMix=100
;Stereo mixing
MusicAmplify=1
;Sound effects are often way louder than music. Music can be adjusted here. Ranges from 0 to 3.
EmulateOldReverb=True
;emulate old reverb effects.
OldReverbIntensity=1.0
;intensity for old effects.
UseReverb=True
;enable new EFX based effects.
ReverbIntensity=1.000000
;intensity for EFX based effects.
ProbeDevicesOnly=False
;only use if you are in trouble finding a valid output device. This will only probe so that more information can be read in the log. All output is disabled.
UseHRTF=Autodetect
;HRTF use. Autodetection may only work with USB headsets.
UseSpeechVolume=False
;since not all UE1 games/mods may have a useful purpose for this (yet), leave disabled by default.
ViewportVolumeIntensity=1.000000
;Affects all sound effects local to the player. Very useful for a finer setup if a 5.1 or more soundsystem is in use.

Report bugs or possible issues here.

Note that the usage of this version online can cause anticheat protected servers to kick you.
« Last Edit: Aug 8th, 2017 at 8:50am by Smirftsch »  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
Dr.Flay™
Senior Member
****
Offline


ChaosUT-333networks

Posts: 325
Location: Kernow, UK
Joined: Dec 9th, 2012
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #1 - May 10th, 2014 at 6:55pm
Print Post  
Err, yes that last line is a pain.
Unfortunately as the main cheat distros do not get updated regularly, you must sent a link to this. to the admin of servers you wish to use.
They can then white-list it.

Well my results so far. Not much to see.
Working well os software mode but no HW. The Realtek tool does not work with this, but I'm going to scrub the system installed driver and test again.

Set to software
Code
Select All
Log: Bound to ALAudio.dll
Log: OpenAL: ALDEVICES found 1:OpenALSoft
Log: OpenAL: ALDevice 1, OutputRate Enum 6
DevAudio: OpenAL: rate 48000
Init: OpenAL: Selected ALDevice is: 1
DevAudio: OpenAL: Trying to use ALDevice: OpenAL Soft
Log: OpenAL: We are using OpenAL device: OpenAL Soft
Log: OpenAL: EFX Extensions found
Log: OpenAL: Check for EFX Version - OK
Init: OpenAL: EFX initialized.
Init: OpenAL: Audio subsystem initialized.
Init: Game engine initialized
Log: Startup time: 2.249680 seconds
DevMusic: OpenAL: Transiting to Suprfist with MTRAN 3
DevMusic: RegisterMusic Suprfist
Log: OpenAL: playing Suprfist SuperFist (Impulse Tracker 2.14v5 IT 1.00)
 


Set to default
Code
Select All
Log: Bound to ALAudio.dll
Log: OpenAL: ALDEVICES found 1:OpenALSoft
Log: OpenAL: ALDevice 0, OutputRate Enum 6
DevAudio: OpenAL: rate 48000
Init: OpenAL: Selected ALDevice is: 0
Warning: OpenAL: Failed, trying (again) default device
Log: OpenAL: We are using OpenAL device: OpenAL Soft
Log: OpenAL: EFX Extensions found
Log: OpenAL: Check for EFX Version - OK
Init: OpenAL: EFX initialized.
Init: OpenAL: Audio subsystem initialized.
Init: Game engine initialized
Log: Startup time: 1.179339 seconds
DevMusic: OpenAL: Transiting to Suprfist with MTRAN 3
DevMusic: RegisterMusic Suprfist
Log: OpenAL: playing Suprfist SuperFist (Impulse Tracker 2.14v5 IT 1.00)
 




Must say. I really love the extra info this renderer logs, although it does not report it's own version, which I think should be clearly visible.
  
Back to top
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #2 - May 11th, 2014 at 6:07am
Print Post  
OpenALSoft behaves that way, that's normal. But don't be afraid of using it, it doesn't seem to be any slower, at least I couldn't find a difference when benchmarking.
I have admit that I have no idea about how the internals in OpenAL and how "hardware acceleration" on soundcards really works there, or in other words how much influence the old original OpenAL dll is having, especially on non creative cards, but what I can say is that I made some tests and new ALAudio performs faster than old ALaudio, FMod and Galaxy already due to having the ability to use another core for buffering (indeed it showed 1FPS gain in my testmap, which is overal ~2.5% more compared to the usual result).
Other advantages of OpenALSoft are that it is still actively maintained unlike the opensourced version by creative and that it usually doesn't cause any problems with non creative cards and newer OS like Win7 and Win8.

Thanks for the idea with the version info, I will have a look what the api provides to determine the version.

(PS in case you feel "Logspammed" add Suppress=DevMusic into the ini, section [Core.System], then all DevMusic commented logs are removed.)


About OpenALSoft:
Quote:
This library is a compatible update/replacement to the deprecated OpenAL Sample Implementation (the SI). The original idea was to fork the old Windows version to attempt an accelerated ALSA version. The accelerated ALSA idea quickly fell through, but the software mixing code ended up being modified to be cross-platform, with multiple output backends: ALSA, OSS, DirectSound, PulseAudio, MMDevAPI, CoreAudio, Solaris, SoundIO, WinMM, PortAudio, "Null" Output, and a .wav writer are currently implemented.

OpenAL Soft's code has been improved to support mono, stereo, 4-channel, 5.1, 6.1, and 7.1 output. OpenAL Soft does not support the Vorbis and MP3 extensions, however these are considered deprecated. It does, though, support some of the newer extensions like AL_EXT_FLOAT32 and AL_EXT_MCFORMATS for multi-channel and floating-point formats, as well as ALC_EXT_EFX for environmental audio effects, and others.
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
Dr.Flay™
Senior Member
****
Offline


ChaosUT-333networks

Posts: 325
Location: Kernow, UK
Joined: Dec 9th, 2012
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #3 - May 11th, 2014 at 6:36am
Print Post  
To be honest even on my nForce chipset and XP, I used the SW mode anyway even though it happily ran in HW mode.

There was no noticeable impact on performance during play, and with 256 SW channels using 64 and still using Winamp is no problem.


Anyway, I now have to test a map I have both with and without an EFX zoneinfo, and make sure it all does what it is supposed to.
So far so good.
  
Back to top
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #4 - May 11th, 2014 at 6:54am
Print Post  
Added version info for next update.
...
Init: OpenAL: EFX initialized.
Init: OpenAL: Version 1.1 ALSOFT 1.15.1 found
Init: OpenAL: Audio subsystem initialized
...
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
speewave
New Member
*
Offline


Oldunreal member

Posts: 1
Joined: May 11th, 2014
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #5 - May 11th, 2014 at 1:52pm
Print Post  
I'm curious, will this version work with the Hardware OpenAL drivers from creative?

And if so how do i use the hardware driver, will it work out of the box or do i need to use ALChemy
  
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #6 - May 11th, 2014 at 3:34pm
Print Post  
ironically, this is now the first (Windows) version using OpenALSoft instead of "native" Creative Labs Smiley.

As pointed out above already, it's really not sure if there are any (performance) advantages by using Creatives version, so far it seems that there are indeed only more problems, especially when it comes to non Creative cards and Creatives version hasn't been updated for years also. Further features which could be offered by their version are not free and we can't benefit from these here.

That being said, you can try using it your version of OpenAL32.dll which should be shipped with the driver of your creative card, by simply deleting OpenAL32.dll from this version (and inside UnrealTournament/System folder if existing), or if this is not working by replacing it inside the System folder with the OpenAL32.dll which can be found in your Windows folder.
If working the hardware accelerated devices should show up in advanced option an can be selected.

Feedback on eventual performance and quality experiences with these versions is very welcome Wink
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
Dr.Flay™
Senior Member
****
Offline


ChaosUT-333networks

Posts: 325
Location: Kernow, UK
Joined: Dec 9th, 2012
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #7 - May 12th, 2014 at 4:40pm
Print Post  
Thanks very much for joining speewave.

If you have already been needing to use the Alchemy tool to fix old games, then your input will be very handy.

Theoretically and so far this version should remove the need to use a tool.
I have the same issue on my new 64bit Win7 box and Realtek sound.

The ALCaps tool will help show the EAX abilities. You can get it from the arched site.
http://wayback.archive.org/web/20130726192938/http://connect.creativelabs.com/op...

Run it from inside the game system folder, and it will show you the capabilities the game can also see, as it should use the driver in the folder.
Run it from somewhere else and it will show you what is installed in Windows.

On a 64bit windows you should see that OpenAL is installed in 2 places inside Windows
System32 and SysWOW64
The 2 ALCaps tools will show different versions.
  
Back to top
IP Logged
 
Marek
New Member
*
Offline


Oldunreal member

Posts: 1
Joined: Jul 10th, 2014
Re: OpenAL for UnrealTournament - development and links
Reply #8 - Jul 10th, 2014 at 9:42pm
Print Post  
Great job with new sound engine! HRTF is incredible - It's the best sound in UT since Aureal A3D times. I have some questions tough. Is there version of libraries you posted for Linux? If not - are you planning to release them in some near future? Second question - is there possibility to enable EFX effects? UT seemed to have some EAX support but as far as I know EAX!=EFX, older EAX games won't work with OpenAL lib...
  
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #9 - Jul 11th, 2014 at 6:14am
Print Post  
Happy to hear Smiley

Well, thing with EFX simply is, that the information is not in the maps. I added a translation for the old reverb effects which works out better than expected, but if you want to use specifically EFX effects you need to add EFXZoneInfo into the maps.

As for Linux, problem is again that the UT Linux build is not old its ANCIENT. No idea how much effort it would be to set up an environment to make these libs work with it. In theory the sources can be compiled for it though, since I use it for 227's Linux build as well (and in my OSX build, but I am not allowed to release it anyway).
« Last Edit: Jul 11th, 2014 at 7:24am by Smirftsch »  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 108
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #10 - Dec 19th, 2014 at 1:58pm
Print Post  
I noticed that to ALAudio sometimes there are clicks (in sounds or music). However, they are absent with Galaxy, FMOD and SwFMOD.
Here two records for comparison http://www.mediafire.com/download/a69knc2l0idcg2e/s_test, this track plays on CTF-November.
  

Sorry for my bad English
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #11 - Dec 19th, 2014 at 2:08pm
Print Post  
which version did you try with?
need to update it again yet, but here is the 227i version of the new OpenAL:
http://www.oldunreal.com/cgi-bin/yabb2/YaBB.pl?num=1399614673
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 108
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #12 - Dec 19th, 2014 at 2:41pm
Print Post  
I tested OpenAL_v1.1_UT and OpenAL_v1.1_227i, a problem in both cases. Try to listen Seeker.umx in the game or the editor.
  

Sorry for my bad English
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7552
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #13 - Dec 19th, 2014 at 2:57pm
Print Post  
ah, ok, that's what I wanted to know. Going to test it with this file here again.

Edit: can confirm it here, thanks for report, will try to find out whats this caused by Smiley
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
sn260591
Full Member
***
Offline



Posts: 108
Location: Russia
Joined: Aug 17th, 2011
Gender: Male
Re: OpenAL for UnrealTournament - development and links
Reply #14 - Dec 19th, 2014 at 3:22pm
Print Post  
Thank you.
Here's another example, when I shoot from the nuclear launcher #2 (nali weapons 3 mod) http://www.mediafire.com/download/ws3m2p87q8203sp/nw3_nuke2_test
  

Sorry for my bad English
Back to top
 
IP Logged
 
Page Index Toggle Pages: [1] 2 3 ... 12
Send TopicPrint
Bookmarks: del.icio.us Digg Facebook Google Google+ Linked in reddit StumbleUpon Twitter Yahoo