Jump to content
The Dark Mod Forums


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by Hiradur

  1. There are no dumb questions, especially for game audio. There is a lot of wrong information on the internet (e.g. people claiming that EAX equals 5.1 surround sound) so just ask if something is unclear.
  2. In this case the default HRTF dataset is probably not matching your head shape well. With luck you will find one which suits your head shape better if you follow this guide: https://www.reddit.com/r/oculus/comments/1fzonq/psa_for_games_using_openal_including_minecraft/cagd3lb It comes down to for which sample rate you have HRTF datasets available. The problem with the Thief games is that they run at 22,050 Hz and the smallest sample rate you can generate HRTF datasets for is 32,000 Hz with makehrtf.exe. So you have to enforce a higher frequency in the OpenAL Soft config. The sample rate set in Windows doesn't have an effect because the chain goes like this: game sample rate -> OpenAL Soft sample rate (resample if necessary) -> Windows sample rate (resample if necessary). The default HRTF datasets coming with OpenAL Soft are for 44,100Hz and 48,000Hz but you could generate some for 96,000Hz with makehrtf.exe if you desire. For Thief games I recommend to enforce a multiple of 22,050Hz (44.1kHz, 88.2kHz etc.) to reduce resampling artifacts. For modern games I suggest to enforce nothing or enforce a multiple of 48kHz because that's what most modern games run at.
  3. If you want HRTF in multiplayer you could try it with Thievery instead, it works when you install the OMP patch from Oldunreal.
  4. I took a quick look at the long loading times in TDM with Valgrind and it looks like the inflate_fast function (for unzipping) takes up a large portion of the loading time according to Valgrind: I had a quick glimpse at the function here: https://github.com/revelator/The-Darkmod-Experimental/blob/7d86b82fce9eb587952c4963b928fd7974ecfa78/src/framework/Unzip.cpp#L3475 and it looks like it's very old and optimized for old hardware. I've never looked at the deflate/inflate algorithm before but maybe there are faster ways to do this on modern hardware.
  5. If no openallog.txt is created then OpenAL Soft isn't being used. You need New Dark for OpenAL Soft because the original Thief engine doesn't use OpenAL at all. With OpenAL Soft EAX should be available on all sound cards for the Thief games.
  6. Don't be misguided: The default HRTF set is the MIT KEMAR set (as stated here: https://github.com/kcat/openal-soft/blob/master/hrtf.txt#L15).The MIT KEMAR set is not in the IRCAM offering at all. Only the config file for the processing of IRCAM datasets defaults to IRC_1005. About frequency: The IRCAM HRTF datasets were recorded at 44.1kHz but they can be resampled to any other frequency for processing if you desire. makehrtf offers an option for that, I believe it's makehrtf.exe -r=48000 for 48kHz. You should see all options when running makehrtf.exe -h.
  7. I'm happy you guys enjoy playing with HRTF. I'd love to get my hands on a VR device but so far I couldn't decide which one I should take and if it's not a bit too early to jump on the train, in particular since I'm more of a Linux guy. I made some experiments with Trinus Gyre (now called Trinus VR) and Google Cardboard a year ago but it was a hassle to setup, and the quality of Google Cardboard is too low to give any kind of enjoyable experience.
  8. To increase immersion you should definitely play with HRTF audio, thread with explanation here: http://forums.thedarkmod.com/topic/17689-improve-your-tdm-experience-by-playing-with-openal-soft-hrtf-better-3d-audio/
  9. I don't really understand what you are saying but I got no 5.1 system so I'm probably lacking the background here. Please note that HRTF over speakers will not sound right because HRTF datasets have to be individually recorded for a specific setup. This is why there are many datasets for headphones. With headphones the setup is basically the same for everyone: Speakers aim at the listener from -90° and +90° relative to front and are very close to your ears. For speaker setups however neither the distance nor the angles at which they aim at the listener are standardized which is probably why nobody bothered to record HRTF for speakers (with the exception of Aureal, I got a HRTF over speakers demo here: https://www.youtube.com/watch?v=cevtidU3Ko4 ) Off topic: Skyrim doesn't support OpenAL Soft. However, there exists a hook which brings HRTF to some games using x3daudio such as Skyrim. It's called X3dAudio-HRTF.
  10. Interesting, but %appdata%\alsoft.ini definitely works (I can tell from the log file). alsoftrc.sample also says to put it there: https://github.com/kcat/openal-soft/blob/455d5f48c0e99f6e3d7c237ee5f1570c37ec49be/alsoftrc.sample#L19
  11. Now I'm not sure which step exactly you are lost on but the HRTF datasets are in the hrtf directory in openal-soft-1.17.1-bin.zip For alsoftrc.sample you have to create an alsoft.ini file in %appdata% and then copy the text from https://raw.githubusercontent.com/kcat/openal-soft/master/alsoftrc.sample to this ini file. Inside the ini file you change "#hrtf = false" to "hrtf=true" (remove "#"!). I guess the easiest way to achieve that would be to bundle soft_oal.dll with TDM and add an option to the settings menu for HRTF. I'm taking this opportunity to propose to make OpenAL Soft the default for audio because there is really no reason not to. DirectSound3D, which is used by TDM by default, only offers good positional audio on Windows XP and older as I said above. Nobody should be using these old Windows versions anymore and even if they do they can just disable OpenAL (OAL Soft ist better than DS3D in every aspect though). I want to make clear that OpenAL Soft offers great positional audio not only for headphone users but also for speakers, including surround sound systems. I'm one of the Rigs of Rods developers and we've been using OpenAL Soft for years and the audio experience is just great. btw: The alsoft.ini file offers some more options other than HRTF. You can set the angles in which speakers point to you for better positioning and you can enforce using a 5.1 setup for example which I would do if you are using one because with Windows you can never be totally sure if it's detecting it correctly. You can also set a resampling algorithm. Sinc4/8 e.g. works wonders for old games using 22,050 sample rate for sounds, such as Thief 1&2 and is basically essential for Quake 2 so that the earthquake sound doesn't get distorted. The .ini file is well documented and it's worth to look at IMO.
  12. Please note that EAX and 5.1 surround sound (positional audio in general) are two different things as I mentioned in a post above. I think this video demonstrates what EAX and its successor EFX do quite well: It's adding reverb to his voice depending on the environment he is in. You can clearly tell it has nothing to do with surround sound.
  13. Yes, this should work. Unless you are using a Creative card though OpenAL Soft may be superior to Creative's OpenAL implementation.
  14. Give it a try with OpenAL Soft (you can set 5.1 in its config), surround sound with the DS3D software implementation in Vista and above is very bad. EDIT: Demo video now up
  15. Well, OpenAL Soft has great positional audio even without HRTF on speakers (definitely better than TDM's default). There is also another way to improve positional audio for speakers. Doom 3/TDM uses DirectSound3D by default which was replaced by very poor software audio in Windows Vista. Creative wrote the Alchemy wrapper to bring DirectSound 3D back. It only works with Creative sound cards though. It improves positional audio for older games by a large margin for any Windows newer than XP. However, OpenAL Soft is better than DS3D in every way and should be preferred since it's natively supported by TDM. @New Horizon: I recorded a video. Uploading now. Should take an hour though. Will be here: https://youtu.be/MVqFbu4gsqs
  16. Not yet, I'll see if I can make one but I can't promise it will make it in time. EFX and HRTF are two different things though. EFX (or its predecessor EAX) processes sounds with reverb presets to make them reflect the environment they are in (e.g. sounds in a huge hall have long echo). This doesn't improve positional audio (probably makes it worse due to the reverb but that's realistic at least). HRTF only improves positional audio. Both in combination make for a very realistic experience.
  17. @The developers: With recent versions of OpenAL Soft software can now request HRTF processing itself. Before it could only be enforced in the OpenAL Soft config file. Any chance this could make it to TDM? Since OpenAL Soft is LGPLv2 licensed you could bundle it with TDM.
  18. I was surprised to find nothing about HRTF on this site so I decided to make a thread about what it is, how it improves your TDM experience and how you can get it. For Germans: Quasi den gleichen Thread gibt es auf Deutsch hier: http://www.hardwareluxx.de/community/f267/guide-openal-soft-mit-hrtf-als-ersatz-fuer-openal-vorteil-3d-sound-fuer-headphones-1013497.html What is HRTF? To put it simply: Our brain can determine the position of sounds so accurately because depending on where the sound comes from it goes through different zones of our head where the sound is unnoticeably changed but it's enough for the brain to put it into 3d space. HRTF is a technique to improve positional audio in games by filtering the audio signal the same way it would be changed when passing through our heads. This way the positioning is spot-on and feels very real. I have some demo videos on Youtube if you are in doubt it works: https://www.youtube.com/watch?v=MVqFbu4gsqs&index=8&list=PL_0EBFw_May-IAaplRFVS5n2-9p3pPR_4 Please note that HRTF suffers greatly under audio compression and is much better in real life! What do I need for HRTF? In this topic I will only talk about OpenAL Soft HRTF because this is the only way at the moment to get HRTF from TDM. You need: - Headphones! (in theory HRTF would work with speakers as well but there are no datasets for speakers) - OpenAL Soft version >= 1.14 (the way how HRTF can be used changed between versions, I will only talk about the latest version, 1.17.1 here) That's it! No specific sound card required or anything. It is however very easy to mess up the setup so that HRTF doesn't work. Follow the guide closely to make sure it works. How do I set it up? Windows 32 Bit: - Download current build of OpenAL Soft - move soft_oal.dll from bin\Win32 as "OpenAL32.dll" to C:\Windows\system32 Windows 64 Bit: - warning: Due to the architecture of Windows the 32/64 bit numbers are confusing. My tutorial is correct, don't be confused! - Download current build of OpenAL Soft - move soft_oal.dll from bin\Win32 as "OpenAL32.dll" to C:\Windows\SysWOW64 (for 32 bit games) - move soft_oal.dll from bin\Win64 as "OpenAL32.dll" to C:\Windows\system32 (for 64 bit games) Final steps for both Windows versions: - move standard HRTF datasets (default*.mhr) from hrtf to %appdata%\openal\hrtf - remove OpenAL32.dll/wrap_oal.dll from the game folder if existing - Copy all text from alsoftrc.sample, create alsoft.ini in %appdata%, paste the text from alsoftrc.sample into alsoft.ini and change "#hrtf = auto" to "hrtf = true" (remove "#"!) - make sure your audio sample rate is 44,1kHz or 48kHz - turn on OpenAL in Darkmod.cfg (seta s_useOpenAL "1") - set TDM to stereo sound - To make sure it works run put this in a .bat file and run it from the TDM folder: Check openallog.txt if HRTF is enabled. Linux: - Make sure your OpenAL Soft version is >= 1.14 - Depending on the distribution and OpenAL Soft install you may need to install the HRTF datasets manually: - Download current build of OpenAL Soft and move default*.mhr from hrtf to ~/.local/share/openal/hrtf - Download alsoftrc.sample and save to ~/.alsoftrc - In ~/.alsoftrc change "#hrtf = auto" to "hrtf = true" (remove "#"!) - set TDM to stereo sound Advanced users: There is a way to improve the positioning even more: Because the default HRTF datasets are made for an "average" head they may not be optimal for you. You can create your own by following this guide: https://www.reddit.com/r/oculus/comments/1fzonq/psa_for_games_using_openal_including_minecraft/cagd3lb PS: This also works with Thief 1&2 running on NewDark but you have to enforce a frequency of 44,100 kHz in alsoft.ini for it to work because Thief's sounds are in 22,050 khz. PPS: In order to spread the awareness of HRTF I license this forum post under CC-BY so you can repost it anywhere when giving credit to me.
  19. Extracting the .zip was fine for me but I think it would be best if TDM was installable from the official software repositories of major distributions. Linux newbies (should) know how to handle these and would not have the psychological hurdle to run an external installer which may not work well or require extra effort from their side.
  20. I live in a crowded area as well, my fritzbox shows at least 10 wifi networks per channel for channels 1,6 and 11. I measured my throughput a few years ago and using one of the overlapping channels heavily decreased it. I've since switched to a non-overlapping channel and never had a reason to complain.
  21. Rule #1 of 2.4Ghz Wifi: Never choose a channel other than 1, 6 or 11 since these are the only non-overlapping channels. If you choose channel 3 for example you will share channels 1,2,3,4,5 and 6 with other Wifi users. If you choose channel 1 you will only share 1, 2 and 3 with other users. http://superuser.com/questions/443178/is-it-better-to-use-a-crowded-2-4ghz-wi-fi-channel-1-6-11-or-unused-3-4-8 I recommend to use channel 1 or 6 since microwaves operate between channels 9 and 10 which are also used by channel 11. I'd check the stability of your Wifi with a non-overlapping channel first before buying a new router.
  22. I usually search for reviews of my monitor which show the OSD settings after the calibration with a professional device (example: http://www.tftcentral.co.uk/reviews/dell_u2415.htm section 'Calibration') and download the provided ICC profile to tune the graphics card as well. It may not be perfect due to spread for standard factory models but it's been good enough for me.
  • Create New...